XSS

XSS(Cross Site Scripting)是一种常见的网络攻击方式,通过注入恶意代码来实现攻击者的目的,包括cookie劫持、构造请求等。分为反射型、存储型和DOM型XSS。攻击者可以利用XSS进行钓鱼、识别用户信息、获取用户IP等。防御措施包括HttpOnly、输入和输出检测以及HTML实体化编码。此外,了解各种XSS工具和框架如beef、XSS Proxy,以及如何构造有效payload和绕过机制也至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章目录

概论

简介:英文全称Cross site Script,为了与层叠样式表css区分,所以叫xss。xss攻击通常是攻击者通过“HTml注入”插入恶意代码,实现攻击者目的。

分类:反射型XSS,存储性XSS,DOM型XSS
反射型XSS:攻击者输入恶意代码,反射到浏览器执行,一般是攻击者构造恶意链接,诱导用户进行点击。
存储型XSS:攻击者把恶意代码存储到服务器端。
DOM型XSS:反射型XSS的一种,攻击者通过修改DOM节点而形成的XSS。

作用

  • cookie劫持;构造GET、POST请求;
  • XSS钓鱼;识别用户浏览器(读取UA;分辨浏览器差异,判断浏览器版本);
  • getshell
  • 识别用户安装的软件(判断ActiveX空间的classid来判断软件是否存在);
  • CSS History Hack(通过判断链接的不同颜色来判断用户是否访问过改网站);
  • 获取用户真实ip(调用Java Applet接口来获取客户端ip地址,通过其他ActiveX控件查询ip)

应用

XSS攻击平台:xss在线平台;Attrack API;beef;XSS-Proxy

poc:
<script>alert(/xss/)</script>
<script>confirm(‘xss’)</script>
<script>prompt(‘xss’)</script>

构造方法:

  • <>构造html标签
  • 伪协议:javascript:
  • 事件:onclick、onmouseover、onerror、onkeydown、onkeyup

bypass:

  • 大小写转换
  • 双写绕过
  • <svg>
  • html对引号要求不严格,有时可以省略引号
  • /代替空格
  • tab或者回车来绕过关键字检测
  • 利用字符串编码:
    • 宽字节吃掉转义字符’\(%5c)’
    • a(&#97;&#x61;);
    • 把tab(&#9;),换行(&#10;),回车(&#13)插入到任意位置
    • 把SOH(&#01;),STX(&#02;)插入到头部位置
  • 拆分跨站
    <script>z=‘alert’</script>
    <script>z=z+’(/xss/)’</script>
    <script>eval(z)</script>
  • 使用base标签,可以使<base>标签下面的目录地址以base标签内的地址为根目录。
  • Mission Impossible:
    1. Apache Expect Header XSS
    2. Anehta的回旋镖
  • Flash XSS
  • JavaScript框架XSS:
    1. Dojo
    2. YUI
    3. JQuery
  • 待补充

getshell
msf10002   xp
ms12063   win7

XSS蠕虫

XSS的防御

  • HttpOnly:浏览器页面禁止JavaScript访问带有HttpOnly的cookie。绕过方法
  • 输入检测:规范输入字符。XSS Filter,缺点:容易误查,导致用户体验差。
  • 输出检测:对输出的字符转义。
  • 编码函数:html实体化编码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值