针对 XSS 攻击的学习与笔记。推荐一个免费的练习靶场:谜团
0x00 XSS 的相关概念
跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。
恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
- XSS 的危害
- 流量劫持;
- 获取用户cookie信息,盗取账号;
- 篡改、删除页面信息(钓鱼);
- 配合CSRF攻击,实施进一步的攻击 ;
- XSS 攻击的基本思路:
- 判断位置;
- 闭合符号或标签;
- 放入基本 payload;
0x00.1 XSS 的分类
- 通常将跨站脚本攻击分为三种类型:反射性XSS,存储型XSS,DOM型XSS。
反射型 XSS:
- 被称为非持久性XSS,当用户访问一个带有XSS代码的HTML请求时,服务器端接收数据后处理,然后把带有XSS的数据发送到浏览器,浏览器解析这段带有XSS代码的数据后,就造成XSS漏洞,这个过程就像一次反射,所以叫反射型XSS。
- 例如:一个靶场的反射型 XSS 页面,要求只要触发 alert() 函数就能够获得 flag,我们构造语句:
<script>alert("xss test!")</script>
- 直接通过浏览器对页面的代码进行修改,触发反射型 XSS。
- 在例如:通过文本输入框,实现对网页代码的修改,从而达到触发弹窗的效果