- 内存马如何进行研判?
内存马本身无文件、在内存中运行,无文件的web后门,成功标志是攻击者能够通过特制的HTTP请求与它进行交互,并成功执行命令,获取回显或建立更高级的C2信道。
内存马大致分为:明文/弱加密内存马和强加密内存(如冰蝎、哥斯拉)
A、明文/弱加密内存马请求特征:
1、异常参数与密码:在GET/POST参数、cookie或header中存在固定的“密码”或“指令”字段。

2、动态路径:内存马可以绑定在任何现有路径,访问静态资源或正常功能的路径,却触发了命令执行逻辑。
B、加加密内存马(冰蝎/哥斯拉)请求特征

2、攻击载荷特征:
长度固定/规整:请求体长度通常是16的倍数(AES加密块大小),且每次请求长度可能相近
高熵值:载荷内容在流量中显示为强随机的二进制数据,没有可读字符串

分析内存马回显响应(成功执行证据)
A、1、正常页面夹带恶意回显
2、命令执行的结果被放在请求头中。
3、content-type与内容不匹配。
B、强加密内存马(冰蝎/哥斯拉)的成功响应特征
1、加密响应体:响应包的content-type同样为applictain/octet-stream。长度固定、高熵值的二进制数据。存在双向加密流:请求是加密的二进制,响应也是加密的二进制流。
2、固定长度响应。

3、反弹shell、进程链异常、建立C2通信、内网横向移动。

- 应急响应
1、立即隔离主机,把网线或禁用网络端口,在防火墙或交换机上设置严格访问控制策略,只允许特定管理IP访问该主机,并拒绝该主机的所有出站连接,切断攻击者C2通道。
2、封堵IP
3、内存转储与分析:使用MAT加载堆转储文件、查找可疑的Filter、Servlet、Controller或Listener实例。查找类名随机、没有对应的class文件、或被注入到已知组件中恶意对象。
4、进程分析(ps | aux grep java、lsof -p )、网络连接分析(netstat -antp | grep ESAT)
5、日志分析:web应用日志(异常的URL、参数、User-Agent)、系统日志查看是否有异常进程创建记录。
6、修复漏洞、升级主键、清除内存马、重启JAVA应用服务或重启服务器,释放内存。重新上线服务器。