文章作者 :xiaochen
原文链接 :
https://www.t00ls.cc/articles-64875.html
现在的shellcode分离免杀,远程内存加载已经很流行也比较实用了,基本被杀了改改又可以过,本篇分享下最近的一次免杀的思路,主要是思路,遇到一个点如何去对下一步进行处理。
用到的工具:
1. VC6.0++2. 一款源码控
3. 辅助工具包
正文:
一个老款的控,先看下界面和简单的目录结构
update目录下文件
主要对dat和dll文件进行处理,载入Resource看了下资源信息,又看了看dat主程序代码,不是资源释放的dll,而是通过dll加载到dat完成的生成小马流程。
不用分开单独做,一个一个杀软去做就行了
火绒
server.dat:
爆后门病毒,myccl特征码定位
[特征] 0002E070_00000002
载入C32发现定位到没用的日志处
对源码进行区段合并预处理,vc编译模式简单设置一下并取消产生日志编译模式
#pragma comment(linker, "/defaultlib:msvcrt.lib /opt:nowin98 /IGNORE:4078 /MERGE:.rdata=.text /MERGE:.data=.text /section:.text,ERW")
组建编译,检测还是爆后门病毒,觉得不应该,重新myccl定位了一遍,这才定位到点上了
[特征] 00020D6E_00000002 GetModuleHandleA wsprintfA[特征] 00020DC4_00000004 无法确认定位的内容
函数在vc6中搜索挨个动态调用
00020DC4此处无法修改,通过对第一处定位的函数动态调用 组建后重新载入C32中,得到真正的特征函数VirtualAlloc、VirtualProtect
动态调用即可过掉火绒。
server.dll:
隐藏字符串就过了
[特征] 0001B0BB_00000002 HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0[特征] 0001B355_00000002 %s%s*.*
-------------------------------------------------------------
360 QVM + 鲲鹏
server.dat:
鲲鹏不杀,QVM报07
经测试PETools填空.rsrc资源段免杀
将资源信息删几个,对主程序文件MainFunc主函数代码块加入异常处理语句
try{
if(1+1==2)throw 19;
}
catch (...)
{
代码块
}
组建 还是爆QVM07,Petools再次填充.rsrc区段,免杀,直接给资源文件Loader.rc删了
有些远控这么大动作会上不了线,注意测试上线
过掉本地QVM
server.dll:
鲲鹏先暴了恶意软件病毒
[特征] 0001C60F_00000002
C32跟进,定位在最下方空白处,填充空白可以免杀但有时也不行,怀疑是资源信息干扰了特征码的判断
删掉资源文件Script1.rc,组建出错了不能删,还原了下代码
对主程序文件预编译合并区段,不杀了,但是程序报错无法正常上线,鼓捣了一会编译模式再次定位,还是在空白处。
对dll文件主函数DllMain内所有函数进行动态调用,被杀—定位—还在空白处,尝试添加资源,加了一堆 程序直接无法生成
删掉一些资源只留了icon和versions,组建,报QVM27,什么羁绊,全给资源信息删掉,免杀了
值得一提的是,测免杀不要一直在一个目录测,名称也不要一直是一样的。
生成小马测试上线,被杀了
鲲鹏不杀后QVM也没动静了
对小马定位
[特征] 0002141D_00000024 kernel32.dll dll主程序开头延时加载
生成小马还是被杀,Petools填充小马的.rsrc区段免杀了,上线也没问题。。
但是在源码里将DLL工程中的Script1.rc文件删掉就出错了,很头大,重新载入myccl定位,进入死循环,鼓捣了一小会,最后换了个版本定位,使用d3填充,可以正常定位了
[特征] 000215E4_00000002 strcmp[特征] 000215EA_00000004 strcmp
[特征] 000215F6_00000005 MSVCRT.dll
延时加载MSVCRT.dll ,对strcmp动态调用,小马还是被杀 云引擎
(后面才知道杀软查杀了数据流,也就是上线配置的信息,需要对dll进行加密加载到dat中解密)
------------------------------------------------------------------
server.dat:
定位出的内存地址:00421B09
载入OD,上下移位没发现什么可以利用的字符,省事了直接做脚本免杀
00421B0E |. 895D FC mov [local.1],ebx00421B11 |. 6A 02 push 0x2
对当前位置代码前两行上下位置互换,复制到可执行文件测试,云引擎暴QVM19,07处理完成,测试正常上线
虚拟机被感染的感觉不继续弄了,QVM19剩下的可以加壳改个壳,pe头处理,加减资源改md5等等很好弄了。
声明:本公众号所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本公众号及原作者不承担相应的后果
侵权请私聊公众号删文