点击蓝字 关注我们
免责声明
由于传播、利用本公众号"隼目安全"所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号"隼目安全"及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉谢谢!
免杀这个东西,往深了做,可以做的很难,但是如果只是保持能过国内基本的,所谓360,Defender,火绒这三个经常在项目中遇到的杀软,还是相对简单的。要想简单,核心思路就是白加黑形式的分离免杀。白的东西,就是加载器,因为加载器本身就不会有病毒,它只是一个单纯把shellcode放到内存中加载的工具而已,除了用多了,杀软用特征匹配来查杀,其他的东西,是基本没有逻辑来杀的,因为它本身不含毒,而且也可以天然过沙箱,因为沙箱放进去没有shellcode加载,那啥也没有。例如我这里网上找了一段shellcode加载器load
这段代码本身是不含shellcode的,只是一个单纯的加载器shellcode被我使用文件读取的方式来进行调用,先读取,然后再放进来加载。这里首先找到锚点,然后把shellcode文件命名为1
然后再找一个文件读取的function
然后再调用刚刚的shellcode注入
最后go build直接编译一次(不要加任何隐藏后台进程的参数,会很容易被杀,后台运行进程在代码层面处理即可)
得到对应的main.exe
第一次没做修改的代码编译完,直接就被扫出来了
解决的方法也很简单
1、换变量名,然后颠倒代码位置,或者颠倒代码结构
比如这里我就随便换了几个变量名
2、直接加一些莫名其妙的代码进去填充这里随便从网上找一些golang游戏代码,golang爬虫代码塞
golang的一个好处就是,这些函数和变量塞进去之后,就算不调用也没事,编译也不会报错做完以上两步之后,再次编译一下,然后去360那里
这里把马和shellcode放到一个文件夹下面,然后直接双击drama.exe
猜你喜欢
▼
原文始发于微信公众号(隼目安全):【相关分享】用简单的方式做好免杀