浏览器基础原理-安全: 跨站脚本攻击(XSS)

简介: 浏览器基础原理-安全: 跨站脚本攻击(XSS)

XSS 跨站脚本 (Cross Site Scripting):


概念:


XSS 攻击是指黑客往 HTML 文件中或者 DOM 中注入恶意脚本,从而在用户浏览页面时利用注入的恶意脚本对用户实施攻击的一种手段。


实现方式:


起初,这种攻击通过跨域来实现的,所以叫“跨域脚本”。但是发展到现在,往 HTML 文件中注入恶意代码的方式越来越多了.


作用:


1.窃取Cookie信息

2.监听用户行为

3.修改DOM来伪造页面, 比如登陆窗口

4.页面内生成悬浮广告


恶意脚本的注入方式:


1.存储型XSS攻击


攻击流程:


▪首先黑客利用站点漏洞将一段恶意 JavaScript 代码提交到网站的数据库中;

▪然后用户向网站请求包含了恶意 JavaScript 脚本的页面;

▪当用户浏览该页面的时候,恶意脚本就会将用户的 Cookie 信息等数据上传到服务器。


举例: 比如2015年的喜马拉雅爆出的存储型XSS攻击, 黑客通过设置用户专辑名称的方式导入恶意程序, 从而当其他用户打开专辑时, 就可以获取用户的Cookie等数据


2.反射型XSS攻击


攻击流程:


用户将一段含有恶意代码的请求提交给 Web 服务器,Web 服务器接收到请求时,又将恶意代码反射给了浏览器端


举例: 黑客通过 QQ 群或者邮件等渠道诱导用户去点击这些恶意链接


注意: 服务器不会存储反射型XSS攻击的恶意脚本


3.基于DOM的XSS攻击


攻击流程:


基于 DOM 的 XSS 攻击是不牵涉到页面 Web 服务器的. 在 Web 资源传输过程或者在用户使用页面的过程中修改 Web 页面的数据。


举例: 比如通过网络劫持在页面传输过程中修改 HTML 页面的内容. 通过WiFi路由器劫持, 通过本地恶意软件劫持.


阻止XSS攻击:


1.服务器对输入脚本进行过滤或者转码


比如把传输过来的含有


参考: 极客时间-浏览器工作原理与实践


相关文章
|
前端开发
WebView2 控件(基于 Microsoft Edge (Chromium) 的嵌入式浏览器控件),保存资源(图片、脚本、CSS)
WebView2 控件(基于 Microsoft Edge (Chromium) 的嵌入式浏览器控件),保存资源(图片、脚本、CSS)
709 88
|
安全 JavaScript 前端开发
阿里云先知安全沙龙(西安站) ——浅谈XSS漏洞挖掘与构造思路
本文介绍了DOM-XSS构造、运算符的威力和模板字符串妙用三个主题。通过多个实例图解,详细展示了如何利用DOM特性构造XSS攻击、JavaScript运算符在代码中的巧妙应用,以及模板字符串在开发中的灵活运用。这些内容对提升Web安全意识和编程技巧具有重要参考价值。
|
Web App开发 人工智能 JSON
AutoMouser:AI Chrome扩展程序,实时跟踪用户的浏览器操作,自动生成自动化操作脚本
AutoMouser是一款Chrome扩展程序,能够实时跟踪用户交互行为,并基于OpenAI的GPT模型自动生成Selenium测试代码,简化自动化测试流程。
1583 17
AutoMouser:AI Chrome扩展程序,实时跟踪用户的浏览器操作,自动生成自动化操作脚本
|
JavaScript 安全 前端开发
同源策略如何防止 XSS 攻击?
【10月更文挑战第31天】同源策略通过对 DOM 访问、Cookie 访问、脚本执行环境和跨源网络请求等多方面的严格限制,构建了一道坚实的安全防线,有效地防止了 XSS 攻击,保护了用户在网络浏览过程中的数据安全和隐私。
733 49
|
JSON 移动开发 JavaScript
在浏览器执行js脚本的两种方式
【10月更文挑战第20天】本文介绍了在浏览器中执行HTTP请求的两种方式:`fetch`和`XMLHttpRequest`。`fetch`支持GET和POST请求,返回Promise对象,可以方便地处理异步操作。`XMLHttpRequest`则通过回调函数处理请求结果,适用于需要兼容旧浏览器的场景。文中还提供了具体的代码示例。
491 5
在浏览器执行js脚本的两种方式
|
Web App开发 数据采集 JavaScript
Chrome浏览器实例的TypeScript自动化脚本
Chrome浏览器实例的TypeScript自动化脚本
浏览器安全
采用匿名方式浏览,你在登录网站时会产生一种叫cookie(即临时文件,可以保存你浏览网页的痕迹)的信息存储器,许多网站会利用cookie跟踪你在互联网上的活动。 你可以在使用浏览器的时候在参数选项中选择关闭计算机接收cookie的选项。(打开E浏览器,点击“工具”—“Internet选项”,在打开的选项中,选择“隐私”,保持“Cookies”该复选框为未选中状态,点击按钮"确定")
|
安全 前端开发 Java
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第26天】Web安全是现代软件开发的重要领域,本文深入探讨了XSS和CSRF两种常见攻击的原理及防御策略。针对XSS,介绍了输入验证与转义、使用CSP、WAF、HTTP-only Cookie和代码审查等方法。对于CSRF,提出了启用CSRF保护、设置CSRF Token、使用HTTPS、二次验证和用户教育等措施。通过这些策略,开发者可以构建更安全的Web应用。
1250 4
|
存储 安全 Go
Web安全基础:防范XSS与CSRF攻击的方法
【10月更文挑战第25天】Web安全是互联网应用开发中的重要环节。本文通过具体案例分析了跨站脚本攻击(XSS)和跨站请求伪造(CSRF)的原理及防范方法,包括服务器端数据过滤、使用Content Security Policy (CSP)、添加CSRF令牌等措施,帮助开发者构建更安全的Web应用。
865 3
|
安全 Go PHP
Web安全进阶:XSS与CSRF攻击防御策略深度解析
【10月更文挑战第27天】本文深入解析了Web安全中的XSS和CSRF攻击防御策略。针对XSS,介绍了输入验证与净化、内容安全策略(CSP)和HTTP头部安全配置;针对CSRF,提出了使用CSRF令牌、验证HTTP请求头、限制同源策略和双重提交Cookie等方法,帮助开发者有效保护网站和用户数据安全。
1120 2