前言

前段时间模仿csroad师傅思路写了一个webhsell免杀生成工具但在某云 webshell检测平台败北,无意间在先知社区文章评论下发现一个哥斯拉的免杀思路,虽然当时给出的哥斯拉webshell已被记录查杀,但借助此思路稍微修改仍然可行。

实现

某云webshell检测平台是基于静态特征检测的如自定义类加载器、base64解码、AES解密等特征。

常规的免杀手段如下:

进行如上修改的webshell依然没有逃过查杀。

先知社区师傅的思路,将class文件落地至WEB-INF/classes目录下,反射实例化该恶意类,在该恶意类内实现常规webshell所需的编解码、加解密、恶意类加载等操作绕过污点特征检查。

原封不动的webshell已被查杀,最后的pageContext也已被加入特征。

根据前面的冰蝎客户端解析pageContext对象用于request、response、seesion对象的获取。

那么略过pageContext对象直接传入所需对象数组即可绕过此特征,只需修改冰蝎源码中fillContext方法(所有payload/java下的java文件)在其中添加一个if判断并使用对象数组将pageContext替换即可。