美文网首页百人计划
安全测试④(XSS:简介 & XSS攻击part1)

安全测试④(XSS:简介 & XSS攻击part1)

作者: 洛姆 | 来源:发表于2018-07-10 20:18 被阅读1次

1. XSS(跨站脚本攻击) 简介

XSS(Cross Site Script):为了与CSS(Cascading Style Sheet, 层叠样式表)区别,所以在安全领域叫XSS。

XSS攻击不一定是真的跨域,而是因为一开始其示例是跨域的。XSS破坏力大,产生场景复杂难以一次性解决,所以针对不同场景产生的XSS需要区分场景对待。

根据XSS效果可以将其分为以下几类:

①反射型(也叫非持久型,Non-persistent XSS):这种攻击是一次性的,仅对当次的页面访问产生影响,用户输入的数据不会被存储。非持久型xss攻击要求用户访问一个被攻击者篡改后的链接,用户访问该链接时,被植入的攻击脚本被用户游览器执行。

②存储型(也叫持久型,Persistent XSS):用户输入的数据被存储到服务器的数据库中,当以后调用该数据并没有有效的数据检查时就会造成XSS。

③DOM Based XSS(Document Object Model基于文档对象类型):按数据是否保存到服务器划分,DOM XSS应该属于反射型。但是由于其完全在前端浏览器进行,所以将其作为一个单独分类说明。

扩展阅读:

XSS跨站脚本攻击(一)----XSS攻击的三种类型及原理及利用

XSS分析及预防


2. XSS 攻击

①XSS Payload:

攻击者对用户当前浏览的页面植入恶意脚本(比如JavaScript、flash脚本或其余的富客户端脚本),通过恶意脚本,控制用户的浏览器。

示例:(以下示例仅供理解思路,均不展示代码示例。若有需要请查看《白帽子讲web安全》原书或扩展阅读)

i) Cookie劫持:窃取用户的cookie信息,使攻击者可以在没有密码的情况下登入用户账户。

ii) 构建GET & POST请求:可以直接操作用户的浏览器,在某些隔离环境里非常有效,如cookie劫持失效或用户不能正常访问互联网时。

iii) XSS钓鱼:利用JavaScript脚本伪装网站内容(如登录框)诱导用户输入关键信息(如用户名、密码等等)。

iv) 收集用户个人信息(识别用户浏览器、操作系统、安装的软件):通过获取用户详细信息可以针对用户进行精确的攻击(如选择浏览器相对应的漏洞)最终达到植入木马的目的。

v) CSS History Hack:通过CSS来发现用户曾经访问过的网站,利用了style的visited属性(用户访问过的链接颜色会不同)。

vi) 获取用户真实IP:一般是利用第三方软件或XSS的attack API来获取用户真实IP,比如XSS通过调用JRE的一些特殊API来获取用户本地IP。

扩展阅读:

WEB漏洞测试payload整理

工具集-XSS Payload

XSS payload 大全

相关文章

网友评论

    本文标题:安全测试④(XSS:简介 & XSS攻击part1)

    本文链接:https://www.haomeiwen.com/subject/kdwbuftx.html