【xss-labs-master】靶场通关详解!-----持续更新

XSS基础概念:

               跨站脚本攻击XSS(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。XSS攻击针对的是用户层面的攻击!

        XSS主要分为DOM型、反射性、存储型其中存储型漏洞为还是最致命的。

------------------------------------

less1 :

         xss漏洞执行是通过向web页面插入JavaScript恶意代码,待用户浏览该页面时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。

         xss漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数。

        我们将name作为参数,通过修改它看看页面是否变化----------->>>可以看到从test变成了MU

在name参数上尝试用简单的JS代码进行XSS攻击,看到下面代码执行成功  

?name=<script>alert(1)</script>

 

----------------------------------------------

less2:

我们还是执行简单JS代码试试看,发现没有相关提示 

查看网页源代码,看看有什么提示,可以看到我们执行的语句<>被过滤 

 尝试从标签中的属性进行突破,将属性中的><进行闭合可以用">闭合之后再使用<script>标签,话可以直接使用onclick来解决。

"><script>alert(1)</script>
"onclick="alert(1)

-----------------------------------

less3:

 我们还是执行简单JS代码试试看,发现没有相关提示 

查看源代码 这里看到><被注释掉了
尝试用没有<>的事件试试onclick(onfocus)

'onclick='alert(1)

------------------------------------

less4:

正常还是没有反应

查看源代码发下还是闭合问题 换个闭合

"onclick="alert(1)

 

-----------------------------------

less5:

直接查看源代码

发现语句被破坏,尝试 "οnclick=alert(1)也被破坏了

可以用a标签的href 属性来构造,注意闭合

"><a href=javascript:alert(1)>test</a> 

-----------------------------

less6:

查看源代码

 

这感觉很悬,不知道过滤了啥,输入关键字测试看看 

onfocus <script> <a href=javascript:alert()>

 

过滤了好多,看看大小写能不能绕过 

OnFocus <sCriPt> <a hReF=javascript:alert()>

 

发现大小写没有被过滤掉,这题能利用大小写进行绕过,所以我们可以用下面的方法,构造payload

"> <a hRef=javascript:alert()>x</a> <"

 

 ------------------------------------

less7:

老规矩了,查看源代码

传进去的值,经过转化后变成了" focus <> <a =java:alert()> 

不难发现,这里面进行了小写转化,将检测出来的on,script,href给删掉了,但是没有关系,我们可以利用双拼写来绕过,

"> <a hrehreff=javasscriptcript:alert()>x</a> <"

 

------------------------------------

less8:

 老规矩查看源码

输入的值插入了两个地方,第一个是input标签,第二个是href属性,老方法,先看看过滤了啥关键字 

可以发现,input标签添加了html实体转化函数还把双引号也给实体化了, 添加了小写转化函数,还有过滤掉了src、data、onfocus、href、script、"(双引号) 

利用href的隐藏属性自动Unicode解码,我们可以插入一段js伪协议

javascript:alert()

进行Unicode编码

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#41;

 

 -------------------------------------

less9:

老规矩查看源码

第9关和第8关类似,提示链接不合法

加入**http://**试试

&#106;&#97;&#118;&#97;&#115;&#99;&#114;&#105;&#112;&#116;&#58;&#97;&#108;&#101;&#114;&#116;&#40;&#41;/* http:// */

 

-----------------------------------

less10:

查看源码

这里可以看到,Get传参的值,只插入了h2标签里头,下面的input标签还隐藏掉了

这里是get传参t_sort,并过滤掉了<>号,不能闭合插入标签,但是我们还能用onfocus事件,因为这里输入框被隐藏了,需要添加type="text",构造payload

----------------------------------

less11:

 

 

  • 18
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值