蚁剑流量分析及改造

访客3年前关于黑客接单571

蚁剑流量分析

环境搭建

  • 搭建php环境使用经典的一句话作为web端的shell文件。

  • 设置蚁剑 *** ,使用burp抓包分析流量。

图片.png
图片.png

流量分析

default测试流量分析

分析测试连接数据包
图片.png
因为这里使用的一句话是,所以这里post数据中有一个x参数,后面跟上了命令。从数据包中还可以看到蚁剑的UA头是antSword/v2.1,这是一个很明显的特征更改方式会在下文中提出,现在先分析测试连接数据包中的内容,将数据包进行url编码并格式化后得到如下代码:

通过输出测试连接数据包中携带的代码可以看出测试连接数据包主要获取了服务端当前目录、根目录、系统和当前用户名等信息,输入到缓冲区再由$output变量接收,通过随机字符作为开始结束符定位变量输出位置。
蚁剑中也支持自定义的数据分割符:

图片.png

base64测试流量分析

下面设置蚁剑的编码器为base64,解码器是default
图片.png
通过burp抓取测试连接的数据包,可以发现蚁剑会随机生成一个参数传入base64编码后的代码,密码参数的值是通过POST获取随机参数的值然后进行base64解码后使用eval执行
图片.png
将代码base64解码后还原发现代码与default代码相同,只是在传参的时候将要执行的代码进行了base64编码
图片.png
如果将解码器设置为base64,可以看到响应包内容会进行base64编码返回:
图片.png
首先将数据包进行url解码再进行base64解码格式化得到执行代码,通过与default代码对比分析发现只有如下不同:
图片.png
也就是说选择的解码器会在asenc函数中将输出的内容进行编码后由蚁剑进行解密。

chr测试流量分析

如下图所示,chr编码模式下的数据包:
图片.png
通过数据包可发现,chr编码下的数据会先将代码的每一个字符进行Ascii的编码通过chr函数返回字符然后eval执行

rot13测试流量分析

通过数据包可发现,蚁剑会随机生成一个参数传入rot13编码后的代码,密码参数的值是通过POST获取随机参数的值然后进行rot13解码后使用eval执行,可以发现rot13和base64编码方式都是获取随机参数的值解码后eval执行。此次解码器设置的是rot13,可以发现响应包的数据进行了rot13编码。
图片.png
通过上面描述的base64解码器代码中的内容可推测设置解码器为rot13,那么就会在asenc函数中将返回值进行rot13编码后由蚁剑解码。
图片.png

编码流量分析总结

通过以上不同编码方式产生的数据可以看到虽然代码进行了编码操作,但是数据包中仍有明显的特征,测试流量中的数据包都是采用@ini_set函数开头,在base64数据包中它是QGluaV9zZXQ,在chr编码数据包中是cHr(64).ChR(105).ChR(110).ChR(105).ChR(95).ChR(115).ChR(101).ChR(116),在rot13编码数据包中是@vav_frg并且编码后的数据包中都存在eval这个敏感函数。其实只要原始数据不变无论执行怎样的编码操作发送的请求都是相同的,那么就可以找寻编码后的特征进行流量检测。

流量改造

更改UA头

将antSword/modules/request.js文件中的常量USER_AGENT的值更改为自定义ua头。
图片.png
重启蚁剑后成功更改UA头。
图片.png

自带RSA编码器

从AntSword v2.1.0版本开始,新增了PHP RSA编码器,AntSword下拉菜单中找到编码设置,点击RSA配置输入公钥和私钥后点击生成会生成一段PHP shell代码。
图片.png
复制代码并上传到服务器,然后点击新建编码器创建一个PHP RSA编码器,之后连接生成shell文件,选择编码器为刚刚创建的PHP RSA编码器测试连接。需要注意的是蚁剑自动生成的shell代码需要进行免杀操作。
图片.png
再来看看流量已经完全加密,如下
图片.png

*** 中转加密

利用 *** 工具将蚁剑传输的数据进行自定义加密后发送给webshell,由webshell解密数据进行执行。原理类似下图:
图片.png
在这里使用MitmProxy作为 *** ,编写MitmProxy插件对数据进行加解密,直接pip安装MitmProxy即可(windows用户务必通过PIP安装mitmproxy,不然插件会出现找不到模块的错误)

mitmproxy插件

PHP webshell

使用

  • 将支持 DES 加密的 Webshell 上传到服务器

  • 运行下列代码开启 *** 中转(使用 -p 可以自定以端口

Windows:mitmdump -k -s 插件路径 Linux:mitmproxy -k -s 插件路径

  • 蚁剑添加mitmproxy *** ,默认端口8080


完成上面步骤首先测试测试连接流量数据,数据如下所示已经完全加密并且正常获取到响应(在星号之间的数据是发送的数据,在等号之间的是获取的响应)

图片.png
然后接下来测试文件相关操作,可以正常获取数据,经过测试文件上传下载均正常使用。
图片.png
接下来是命令执行相关的数据包加密情况:
图片.png
可以看到命令执行相关的代码也进行了加密并且响应包正常返回。

总结

蚁剑作为一款开源工具,自带的编码器和解码器的特征是很明显的,由于蚁剑的开源所以可以通过更改配置文件来达到流量加密,也可以使用一些其他方式如 *** 中转方式进行流量加密,同样也可以编写蚁剑插件进行编码解码,流量加密的方式不止一种,选择自己擅长的就行。

参考资料

https://blog.csdn.net/qq_43622442/article/details/105596701
https://www.freebuf.com/articles/network/229193.html
https://www.anquanke.com/post/id/223085
https://cloud.tencent.com/developer/article/1578215

相关文章

怎样能监控到老婆每天和别人的微信聊天内容

. 今日“江山娇与红旗漫”这俩个词登上了微博热搜,很多小伙办都不知道是什么意思吧,听着像是俩个人名,没错这是共青团的俩位虚拟偶像哦,一起来了解一下吧。下面友谊长存小编带来:江山娇与红旗漫是什么意思...

现在养殖业什么最好养(农村养殖业致富项目推

现在养殖业什么最好养(农村养殖业致富项目推

养殖户张亮(化名)卖掉了所有的生猪。其实,从去年8月份以来,清空猪圈的想法就在张亮头脑里有了,家人并不知晓,直到今年3月份才告诉了老婆。听到消息后,老婆气的三天不理他,一心认为是老公是自甘堕落,有了别...

手机短信内容查询清单(短信消息记录如何调查出

相信现在有很多的朋友们对于商品房办房产证需要什么材料流程是怎么样的呢都想要了解吧,那么今天小编就来给大家针对商品房办房产证需要什么材料流程是怎么样的呢进行一个介绍吧,希望小编介绍的内容能够为大...

教你两部手机同步一个微信,两台手机微信信息

2020年11月23日,由《中国经营报》和中经未来主办的2020中国企业竞争力年会周盛大开幕。作为财经界具有权威性和前瞻性的盛会,本届年会周汇聚中国商界智库及顶级企业家思想,探寻中国经济与企业的共同发...

如何查亲戚陌陌聊天记录

孩子特别容易出汗是生病了吗,孩子汗多是不是缺乏某种元素呢,孩子汗多怎么办呢,孩子汗多怎么护理好呢,友谊长存小编就来说说吧。 >>>宝宝本性易出汗 宝宝本来皮肤含水量就大,皮肤表层...

黑客盗刷银行钱(网上银行盗刷)

黑客盗刷银行钱(网上银行盗刷)

本文导读目录: 1、存在银行卡里的钱能不能被黑客盗走 2、银行卡被人盗刷了怎么办? 3、我把钱存银行,被黑客把卡盗刷了,这个是不是银行的责任? 4、假如黑客知道了我银行卡账号和姓名,他能把...