哥斯拉流量分析

哥斯拉的流量特征有哪些?

1.User-Agent (弱特征)

哥斯拉客户端使用JAVA语言编写,在默认的情况下,如果不修改User-Agent,User-Agent会类似于Java/1.8.0_121(具体什么版本取决于JDK环境版本)。但是哥斯拉支持自定义HTTP头部,这个默认特征是可以很容易去除的。

这个特征可以在我们连接界面的时候,可以自己自定义修改:

2.Cookie (强特征)

哥斯拉的作者应该还没有意识到,在请求包的Cookie中有一个非常致命的特征,最后的分号。

3.请求体特征 (较强特征)

支持对加密的数据进行base64编码以及原始的加密raw两种形式的通讯数据,对于请求体的检测也要考虑两种情况。

哥斯拉在进行初始化时会产生一个比较大的数据包,后面进行命令执行等操作时产生的base64数据包会比较比较小。在长度上做一个匹配条件在一定程度上也可以降低误报率。

对于原始加密raw请求体,没想到比较好的方法,目前只想到到了匹配较多的不可见字符的思路。

和请求体一样,请求响应体也分两个格式,base64编码的和原始加密raw数据。如果请求体采用base64编码,响应体返回的也是base64编码的数据。在使用base64编码时,响应体会出现一个很明显的固定特征。这个特征是客户端和服务端编写的时候引入的。

从代码可以看到会把一个32位的md5字符串按照一半拆分,分别放在base64编码的数据的前后两部分。整个响应包的结构体征为:md5前十六位+base64+md5后十六位。

哥斯拉的数据包应该如何处理?

要对响应包进行处理的话,首先去掉响应包的前 16 位以及后 16 位,然后对剩下的数据进行 base64 解码+aes 解密,之后再 gzip 解压缩即可.

 

实验环境:

自己在本地开启小皮面板,上传一句话木马,上传的马是什么类型,在用哥斯拉连接的时候就选对应的类型,本实验用得是 php 的马.

哥斯拉在连接 webshell 时,把代理设置成自己 burp 的监听端口.

进去以后,在命令执行模块执行一条任意命令:

burp 抓包如下:

我们只看前三个包,应为在哥斯拉里,三个包是"一套的",很明显看出,这里第四个包又和第一个包重复了,也就是我们通过哥斯拉对目标主机执行一条命令,会发出三个包.

通过 burp 抓包可知,第1个请求会发送大量数据,该请求不含有任何Cookie信息,服务器响应报文不含任何数据,但是会设置PHPSESSID,后续请求都会自动带上该Cookie。

第一个请求包的内容:

第一个请求包的响应包的内容:

它会设置 SESSID,并且,cookie 是用分号结尾的.

第二个请求包的内容:

从内容,我们不难发现,这次的请求内容已经把第一次设置好的 SESSID 带上了

第2个请求中已经自动带上了第1个请求中服务器响应返回的Cookie值,并且第2个请求中只有少量的数据.

第三个请求包的内容 :

可以对比看出,第三个请求包的请求与第二个请求包的内容完全一致

 总结:

在遇到哥斯拉的流量中,我们可以看数据包的cookie是不是以分号结尾的,这是哥斯拉流量最最明显的一个特征,其次我们也可以看数据包的内容,会有如上图所示___=后面一长串,___就代表攻击者上传木马的密码,例如,我这里的密码是huale,所以上面抓到的post数据包的内容就是huale=后面一长串,其本质是个参数,webshell工具在工作的时候,要给这个参数传数据,所以在分析数据包的内容时,看看有没有如下的这种格式.

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值