
Web攻击分类
简单的HTTP协议本身并不存在安全性问题,因此协议本身几乎不会成为攻击的对象。应用HTTP协议的服务器和客户端,以及运行在服务器上的Web应用等资源才是攻击目标。
web应用的攻击模式有以下两种
- 主动攻击(主要攻击服务器上的资源)
- SQL注入攻击
- OS命令注入攻击
- 其他
- 被动攻击(主要攻击用户的资源和权限)
- 跨站脚本攻击
- 跨站点请求伪造
- 点击劫持(与跨站请求伪造手法相似)
- HTTP首部注入攻击
- 其他
跨站脚本攻击(XSS)
跨站脚本攻击(XSS)是指通过存在安全漏洞的Web网站注册用户的浏览器内运行非法的HTML标签或JavaScript进行的一种攻击。动态创建的HTML部分有可能隐藏着安全漏洞。就这样,攻击者编写脚本设下陷阱,用户在自己的浏览器上运行时,一不小心就会受到被动攻击。目的:利用网站漏洞从用户那里恶意盗取信息。
XSS攻击,通常指黑客通过“HTML注入”篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击。在一开始,这种攻击的演示案例是跨域的,所以叫做“跨站脚本”。但是发展到今天,由于JavaScript的强大功能以及网站前端应用的复杂化,是否跨域已经不再重要。但是由于历史原因,XSS这个名字却一直保留下来。
XSS分类
- 反射型XSS(非持久型XSS)
- DOM型XSS(非持久性XSS)
- 存储型XSS(持久性XSS攻击)
反射型XSS
- 攻击构造出特殊的 URL ,其中包含恶意代码。(这个恶意代码诸如第三方的JS或document.cookie等)
- 用户被诱导打开带有恶意代码的 URL,服务器端将恶意代码从 URL 中取出当做参数处理,然后返回给用户带有恶意代码的数据。
- 用户浏览器接收到响应解析执行,混在其中的恶意代码也被执行。
- 恶意代码窃取用户敏感数据发送给攻击者,或者冒充用户的行为,调用目标网站接口执行攻击者指定的操作。
DOM型XSS
从效果上来说也是反射型XSS,单独划分出来,是因为DOM Based XSS的形成原因比较特别,发现它的安全专家专门提出了这种类型的XSS。出于历史原因,也就把它单独作为一个分类了。
- 攻击者构造出特殊的 URL,其中包含恶意代码。
- 用户被诱导打开带有恶意代码的 URL。
- 用户浏览器接收到响应后解析执行,前端 JavaScript 取出 URL 中的恶意代码并执行。
- 恶意代码窃取用户数据并发送到攻击者的网站,或者冒充用户的行为,调用目标网站接口执行攻击者指定的操作。
存储型XSS
存储型 XSS 跟 反射型 XSS 的区别是:存储型 XSS 的恶意代码存在服务器上,反射型 XSS 的恶意代码存在 URL 里。它是最危险的一种跨站脚本。比反射性 XSS 和 DOM 型 XSS 都更有隐蔽性,因为它不需要用户手动触发。任何允许用户存储数据的 Web 程序都可能存在存储型 XSS 漏洞。若某个页面遭受存储型 XSS 攻击,所有访问该页面的用户都会被 XSS 攻击。
- 攻击者把恶意代码提交到目标网站的服务器中。
- 用户打开目标网站,网站服务器端把带有恶意代码的数据取出,当做正常数据返回给用户。
- 用户浏览器接收到响应解析执行,混在其中的恶意代码也被执行。
- 恶意代码窃取用户敏感数据发送给攻击者,或者冒充用户的行为,调用目标网站接口执行攻击者指定的操作。
防御方法
- 浏览器自带防御(X-XSS-Protection)
HTTP X-XSS-Protection 响应头是 Internet Explorer,Ch


1万+

被折叠的 条评论
为什么被折叠?



