又来跟师傅们分享小技巧了,这次简单介绍一下三种常见的webshell流量分析,希望能对参加HW蓝队的师傅们有所帮助。
什么是webshell
webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种代码执行环境,主要用于网站管理、服务器管理、权限管理等操作。使用方法简单,只需上传一个代码文件,通过网址访问,便可进行很多日常操作,极大地方便了使用者对网站和服务器的管理。正因如此,也有小部分人将代码修改后当作后门程序使用,以达到控制网站服务器的目的,也可以将其称做为一种网页后门
哥斯拉
流量包特征
JAVA_AES_BASE64特征
1.host头问题
2.密码和base64字符串是密码=base64字符串的形式
3.发送包是密码=base64字符串的形式,返回包是类base64字符串的格式
JAVA_AES_RAW特征
1.host问题及Content-Type: application/octet-stream
2.发送的数据包为没有被base64编码后的AES加密后的字节数据
蚁剑
流量包特征
默认编码器,解码器除base64之外的特征,测试连接、正常的webshell操作时,发送包特征为密码
=base64字符串&随机字符串=类似于base64字符串,且返回包为明⽂
默认编码器,解码器base64的特征,返回包中是base64编码后的字符串
⽂件上传包格式的webshell连接,密码写在了上传包参数中,返回包base64编码后的字符串
冰蝎
流量包特征
正常的冰蝎连接成功之后,它的流量具有以下特征
1.header头的顺序是颠倒的,可以和正常的请求做对⽐,正常的请求host头⼀般是header头的第⼀位
发送包是正常的base64字符串,返回包是字节数组,所以返回包会乱码
如果冰蝎的密码不对,那么会出现两个连接,第⼀个是post连接,第⼆个是get连接
如果第⼀次post请求没有返回正常的字节码,那么冰蝎会发起⼀次get请求附带webshell密码
同⼀个攻击IP,连接的User-Agent会不断的变化
postheader头Content-Type为application/octet-stream
失败时header头Referer的shell⽂件名是随机的
下载⽂件时,如果是⽂本⽂件,为明⽂传输
微信公众号
扫一扫关注CatalyzeSec公众号
加入我们的星球
我们能提供:
1对1就业指导、面试模拟、Golang工具开发学习、Fofo高级会员、各公众号历史文章合集、各种网络安全电子书、面试题合集、最新poc、exp、最常用工具推荐、开放交流环境,解决成员问题。