webshell免杀技术强特征+加密

免杀问题基础知识

知识点:
环境准备---单机系统&杀毒产品&流量差评
Webshell-----静态对抗i&动态对抗&工具对抗
Webshell-----代码混淆&流量绕过&源码魔改
章节点:
1.免杀对象----火绒/X60全家桶/DF/卡巴/Nod32/EDR产品等

2.源码魔改----CS/MSF/Minikatx/冰蝎/哥斯拉/Fscan/Frp

3.静态手法----特征码/抗沙箱/抗调试/加密混淆&隐写分离&内存封装&黑白等。

4.动态手法-----API操作/注入劫持/HOOK回调/DEP/APC/ASMI/ETW/Syscall等

5.保护手法-----待补充

杀毒产品:文件本身有问题检测到了
检测产品:检测谁在攻击,流量产品
简要点:
1.认知需要免杀的对象有哪些
各类杀毒产品,EDR,流量产品
2.认知需要免杀的目标有哪些
webshell/内存马

C2/C2类远程后门
渗透测试安全工具类
红队APT钓鱼文档类
表面操作,行为操作,工具操作
3.认知需要免杀的技术有哪些
静态手法,动态手法,保护手法,源码魔改
图片

实验操作

#表面性操作
1哥斯拉普通脚本,cs普通脚文件,冰蝎
火绒 kill
360全 kill
default kill

#操作行为
2弱鸡免杀工具免杀
火绒    可以放进去 哥斯拉执行命令无提示,哥斯拉敏感命令可以执行
360全   可以放进去,哥斯拉蚁剑执行命令无提示,哥斯拉,蚁剑敏感命令被拦截(行为性操作)
default 可以放进去,哥斯拉执行命令无提示,哥斯拉敏感命令可以执行

3.XG免杀工具免杀
火绒  可以放进去,哥斯拉,蚁剑,冰蝎执行命令无提示,哥斯拉,蚁剑敏感命令可以执行,冰蝎的敏感命令被拦截
360全 可以放进去 哥斯拉,蚁剑,冰蝎执行命令无提示,哥斯拉,蚁剑,冰蝎子敏感命令可以执行,哥斯拉冰蝎的敏感命令被拦截
default 可以放进去,哥斯拉,蚁剑执行命令无提示,哥斯拉,蚁剑敏感命令可以执行

#工具指纹
源码魔改(指纹打乱,打乱逻辑绕过)
对抗:流量产品,杀毒软件
换冷门工具(自己写的工具)让产品没来的及集成这工具的检测导致绕过(特征库)

引出问题:
webshell工具里面的后门代码不被杀毒检测到---混淆
webshell工具里面的功能操作不被杀毒拦截到---魔改
websehll工具里面的操作连接不被平台捕获到---魔改

suricata -c /etc/suricata/suricata.yaml -i ens37 -s /home/xuan/tools/suricata-rules-master/Behinder/Behinder3.rules

cd /var/log/suricata/
cat fast.log

图片

冰蝎子反编译

通过对冰蝎子的数据包分析
1.请求数据包头的两个强特征
2.已知数据的提交内容加密算法
流量平台设备可以分析数据包的强特征+对提交数据进行默认的算法去解密去分析是否冰蝎子工具攻击连接
冰蝎子强特征

1 Accept: application/json. text/javascript, */*;q=0.01
2 Accept-Language:zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7
#后面操作获得的绝对路径
C:\Users\31062\Desktop\behinder\Behinder.jar_Decompiler.com\net\rebeyond\behinder\core\Constants.java
C:\Users\31062\Desktop\behinder\Behinder.jar_Decompiler.com\net\rebeyond\behinder\core\ShellService.java
以及下面的加密部分
C:\Users\31062\Desktop\behinder\Behinder.jar_Decompiler.com\net\rebeyond\behinder\resource\transprotocol\default_xor.config
C:\Users\31062\Desktop\behinder\Behinder.jar_Decompiler.com\net\rebeyond\behinder\resource\transprotocol\aes_with_magic.config

解决1:绕过识别(魔改打乱特征,新增加密算法)
解决2:绕过查杀(魔改打乱特征,新增加密算法)

Jar反编译打包构建

反编译jar
图片

环境配置

新建项目 运行版本 JDK1.8
lib配置:项目结构--->模块--->依赖。Behinder.jar包(behinderv4.0解压后的里面jar文件)
反编译后的解压文件跟我们新创建的项目文件放同一个目录
main配置:项目结构--->工件----从模块中创建jar---选择主类main(behinder)
后续会用到数据库文件,data.sql(behinderv4.0解压后的lib里面的lib里面sql文件),导入同一个文件下
图片
主类
图片
修改强特征
搜索强特征的文件位置,复制过去src中,用到哪一个修改哪一个
图片
找到相应文件,修改里面的强特征
修改位:

Accept:aaatext/html,image/webp,image/apng,/q;=0.8
Accept-Language:qazwsxen;q=0.7
"User-Agent","qqqwwweeeerutooioooooo"

打包:构建项目--->构建工件在out中打包成jar,运行jar包查看效果
图片
强特征修改成功,下面是解密操作
图片

传输协议配置

加密数据调整
搜索这算法的关键字在哪一个位置
复制路径的路径,验证
新增加密协议
1.找到了存放配置地方
怎么写好后如何集成进去
存放配置地方,我们可以看源文件中是写入的数据是那种json格式。在冰蝎子里面有换行的
先查看冰蝎子的自身功能,【新建协议功能】我们新建一个加密算法,内容复制上面的加密解密算法,两个写的对应可以保存成功。然后点击分享,就生成了我们需要的【源代码中的json格式】
[{"encode":"private byte[] Encrypt(byte[] data) throws Exception\n{\n ......
图片
图片

算法协议

ai去写deepseek,按照之前的加密算法+rot13生成新的加密算法,解密算法
打包之后再【冰蝎子的传输协议】上生成服务端,会出现shell的新文件
然后我们放入win10全360服务器中,没有kill,删除了shell的新文件
关于传输协议只显示4个的问题
跟我们上传的后缀名有关,如果是php脚本文件,传输协议显示跟php有关传输协议
图片
出现问题:只有jsp脚本,其他语言脚本如何解决
【冰蝎子的传输协议】上点击远程
deepseek问在上面的代码基础上改用php代码写
直接生成服务器 ,生成的shell.php代码,360没杀毒
连接自定义的php代码,文件可以连接上,数据包发生更改,强特征被更改
下面的加密数据被修改
例子:冰蝎4.0流量分析及魔改--先知社区
360可以正常连接
图片

打包合成

文件集合
之前文件里面的其他文件,自己的behinder.jar包,自己编译出来的out里面的server里面的文件执行自己的包,连接360。查看命令执行方面
net user源码再怎么修改仍然无法执行,权限太低了
图片
图片

哥斯拉反编译

环境测试

准备工作java decompiler online /APK decompiler-Decompiler.com进行反编译下载
使用IDEA,在lib里面放入哥斯拉文件里面的除了jar外的其他文件
main配置:项目结果---工件---从模块中创建jar---选择主类main(ui)
图片
哥斯拉上点击关于,出现版本作者信息,我们先从这里修改,查看是否能修改成功
先进行copy,去src里面修改,删掉可以解决编译速度问题,解决错误问题修改的文件可能也引用了其他的类,改相关问题, 其他有报错问题删除,保证自己修改的不报错即可
它会校验是否是官方版本,我们需要把它关闭掉【关键字查找/报错信息】没查到关键字,4.01找版本校验失败直接退出,一直修改校验逻辑(if里面注释),一种去掉exit

#版本信息路径
C:\Users\31062\Desktop\gesila\godzilla\core\ui\MainActivity.java
#校验文件
if(hashString!=null)
{
  if(jarFile != null)
  {
    if(!jarHashString.equals(hashString))

  }

}

图片
环境配置成功,环境正常
图片

流量特征修改

1.流量分析特征代码
2.特征对应代码端
3.修改代码端打扰魔改
关闭360服务器里面的软件,我们上传2个shell查看强特征

#强特征
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:84.0) Gecko/20100101 Firefox/84.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2

加密数据

#header路径
C:\Users\31062\Desktop\gesila\godzilla\core\ui\component\frame\ShellSetting.java

#加密数据
C:\Users\31062\Desktop\gesila\godzilla\shells\cryptions\phpXor\PhpXorRaw.java
C:\Users\31062\Desktop\gesila\godzilla\shells\cryptions\phpXor\PhpXor.java
User-Agent: User-AgentMyTestAgent
Accept: Acceptappl1QAAXXWn/xml;q=0.9,image/webp
Accept-Language: Accept-LEDCagezen-US,en;q=0.9

数据修改成功
图片

Webshell生成

使用工具集集成免杀webshell
生成php3个模式的后门,分别保存为1.php 2.php 3.php
放到360【360软件关闭】,状态:哥斯拉连接成功
查看源代码,后门代码是有专门生成shell的模板文件,里面也包含pass和key是其他文件传递过来我们直接修改模板文件,直接修改为免杀的shell,参考XG状态webshell免杀工具
注意:工具生成的免杀有一个问题,里面的一个变量echo base64_decode/**/($G1WNEr),变量不能以数字开头,否则连接不上
图片

posted @ 2025-11-03 08:51  不会笑的孩子  阅读(11)  评论(0)    收藏  举报