首页 实用工具 正文
  • 本文约667字,阅读需3分钟
  • 82
  • 0

这是一个能绕过绝大部分杀软、沙箱的木马样本

摘要

下面我会对木马所涉及的技术进行阐述我会针对shellcode和加载器两方面解释 加载器部分 1.反沙箱 众说周知反沙箱的检测常规就是针对主机的cpu、内存、硬盘等操作,但是我个人认为这样不妥因为一些杀软或云沙箱会检测反沙箱功能,会对一些敏感api进行监控从而被抓包,所以我的思路是对桌面的快捷方式检测比如qq、微信、钉钉这些常规使用的软件进行检测逃避云沙箱。 ...

下面我会对木马所涉及的技术进行阐述我会针对shellcode和加载器两方面解释

加载器部分

1.反沙箱

众说周知反沙箱的检测常规就是针对主机的cpu、内存、硬盘等操作,但是我个人认为这样不妥因为一些杀软或云沙箱会检测反沙箱功能,会对一些敏感api进行监控从而被抓包,所以我的思路是对桌面的快捷方式检测比如qq、微信、钉钉这些常规使用的软件进行检测逃避云沙箱。

vt### 2.ntdll的重载和api的动态调用

一般杀软的检测机制就是会对一些敏感的api上钩子那么我们通过ntdll的重载和api的动态调用技术就可以绕过钩子实现功能,ntdll重载这一块是从系统目录加载原始 ntdll.dll,将当前进程中被挂钩的 ntdll 代码段(.text 段)替换为原始代码,api动态调用是遍历目标dll的导出表使用hash匹配函数名获取目标函数的地址使用指针执行。

3.shellcode和加载器分离

shellcode除了编码绕过杀软还可以和加载器分离,就是shellcode都不在exe里杀软就挺难检测出问题。

shellcode部分

shellcode部分主要多层混淆处理 使用的是XOR+RC4+base64+mac多层处理,最后是mac地址格式存在是windows对mac格式字符串有一定的宽容性。

使用方法

先使用encode.cpp对shellcode进行加密,如果把shellcode写道exe里请在Unseparation_shellcode.cpp的mac_shellcode数组里。如果想实现参数分离可以使用我编译好的exe+shellcode运行即可

评论
博主关闭了评论
友情链接