关于免杀的.
- 提问者网友:溺爱和你
- 2021-08-23 07:39
- 五星知识达人网友:封刀令
- 2021-08-23 07:53
高强度花指令—SHE
来源:骨灰IT QQ:3898191
SEH是WINDOWS系统中处理计算机异常行为的一种方式,这种方式的特点就是用入栈的方式把断点保存起来,所以他的效率很高,往往能够处理很多的异常状态。在免杀中我们可以通过它给木马加花,让他“错误”地跳到入口点。
奉上汇编代码如下:
push 原入口点 -OEP
mov eax,dword ptr fs:[0]
push eax
mov dword ptr fs:[0],esp
mov ebx,0
div ebx
复制代码
这样混淆的强度就很大了,其实还有很多这样的方法,自己漫漫研究把。。
1. 遇到特征码定位在jmp指令上面的 构造替换 push xxxxx ret。
举例: jmp xxxxx
构造替换 push xxxxx
ret
2. 遇到特征码定位在call指令上的。
举例:
call xxxxx
构造替换: push @f
jmp xxxxx
@@:
;@@的标号表示的是你jmp xxxx指令后面的内存地址。 @f也就是引用@@ 的标号,所以此时@f这里填写的就是jmp xxxxx指令后面的内存地址。。
3. 遇到特征码定位在ret上
举例: ret
构造替换:
jmp dword ptr [esp]
4. 遇到特征码定位在test eax, eax je xxxx or eax, eax, je xxxxx cmp eax, 0 jexxxxxx
举例: test eax, eax
je xxxxxx
构造替换: xchg eax, ecx
jecxz xxxxx
5. 遇到特征码定位在 push [xxxxxx]上的。
举例:push [xxxxx]
构造:
在其之前通过 xchg [xxxxxx], ebx
然后用寄存器传参: push ebx
最后在下面在通过xchg [xxxxxx], ebx 交换回来。
6. 数据段动态恢复和巧用算法加密结合起来。
前提是对汇编大家一定要有所了解,例如一些人说金山杀的是配置信息上,你完全可以将其这些配置信息所处的地址的数据进行一层加密。或者你可以将其这些偏移所处的数据 通过xchg 交换。
dll注意下 要进行重定位
call $+5 ;机器码是 E8 00000000 00000000是相对地址
@@: pop ebx
sub ebx, @b
下面你就可以通过[ebx+你的偏移]来进行变址寻址了。。
test eax,eax
je xxxxxx
将test eax,eax nop掉,改je为jb
或将两句nop掉
test eax,eax
jnz xxxxxx
将两句nop掉
mov ebx,xxxxxx
mov ebp,eax
双mov可以上下调换
add edx, dword ptr [ebp+6E]
imul esi, dword ptr [edi+ebx*2+44], 614D6C6C
imul ebp, dword ptr [esi], 0
00 00
00 00
00 00
考虑下移
and eax,80000007
改为:
or eax,7FFFFFF9
用C32asm改,80000007为-80000007,C32asm会自动变为80000007的负数7FFFFFF9
je 等于则跳 改成 jle 也是等于则跳
这是瑞星的新把戏
00436008 09C0 xor EAX,EAX
改为
00436008 09C0 OR EAX,EAX
004A19BD 6A 00 PUSH 0
改为
004A19BD 6A 01 PUSH 1
0049D775 /77 07 JA SHORT 021.0049D77E
改为
0049D775 /7F 07 JG SHORT 021.0049D77E
特征码定位出来用OD载入却显示无此地址的解决方法
dll:
也许你经常遇到特征码定位出来用OD载入却显示无此地址.
我们用灰鸽子VIP2006的GETKEY.DLL做演示.
假若特征码为
[特征] 000009DA_00000002 004015DA (OC导出的内存地址)
使用OC导出的地址到OD中却不能使用.这时用lordpe打开GETKEY.dll
00013000
00400000 上下相加得00413000
OD载入入口为00883000 > 55 PUSH EBP
把40换成87就是真正的特征码.008715DA
Dll实例(黑洞1.97 瑞星dll特征):
OK=1
CharactorTotal=3
Codz1=H_0000354C_0092414C
Codz2=H_0001A4B4_0093B0B4
Codz3=H_0003C958_0095D558
先用lord_PE打开,再用OD打开
文件入口:00042948
> -------> 00442948
镜像:00400000
>----------->相减 00520000
内存入口 00962948
零区无法定位可执行文件数据的问题
1.c32asm来解决,静态反汇编改特征
2.加一0区段,跨区段jmp跳,然后再新区段保存"所有修改",再回到原特征码处jmp,保存
免杀关键是技巧,关键你对这些汇编指令掌握的程度,以及你对汇编程序的熟练度。。
接下来再说一下NOD32的高启
《一个钉子和一个国家灭亡的故事》大家都知道
如果有那一个钉子,不丢那个马掌,不折那匹战马,不伤那位将军…………
有太多不确定了,只要我们破坏了其中任何一个环节启发杀毒就会全线溃败。
NOD32通过PE结构寻找特征代码 以导入表函数的修改为例 (这个简单,其实还有更复杂的上次那个木马就是12处关联,但是12处关联破坏一个就免杀了)
首先他会从PE MZ那里开始计算PE HARD的位置 在从PE HARD处寻找数据段 计算数据段位置寻找指针的提示位置,然后通过指针的提示位置找到指针,通过指针找到导入表函数。
启发杀毒理解比较困难但是修改还是很简单的,可以说比普通的特征码更容易。我们只要破坏他以上分析的任何一个环节他就会全线溃败。
以前的pcshare有一个超简单过NOD32的方法,那就是将子系统设置为未知,就直接过NOD32的高启发,因为NOD32默认的对未知PE文件不予检测报毒,而恰巧,我们的pcshare通过这样更改之后仍然可以运行,达到了免杀目的,就是这么简单
其实卡巴为我们提供了更多修改的机会
因为他的特征是关联的,只要破坏他的关联就行了
就好像
1+2+3+4+5+6+7+8+9=45一样
特征码是45.当然会有很多选择我们可以改"1"也可以改“2”还可以改“3”……
改掉一个他下面的关联就被破坏了,也就免杀了,
解决NOD32最简单的两个方法
1.把文件子系统设未未知
2.修改OriginalFirstThunk 日期时间标志 ForwarderThunk 以前都是00000000 把它改成FFFFFFFF 或者别的,就这样就可以过了输入表查杀虽然之后lordpe提示“错误的指针”,但是功能,上线都是没有损坏的
对于NOD32 pcshare特征码超多的问题
解释很简单 pcshare是一个典型的4代木马(也有人称为3代,看分代标准)
很多代码很典型,适用于杀软研究广谱查杀。NOD32的启发更偏向于基因启发,但他没有独立的基因库,用病毒库代替了基因库,通过在病毒库里比对代码,确认病毒,看到我前面对基因启发的介绍,相信对NOD32病毒库小不难理解吧,很明显NOD32的开发者也意识到了这点,所以NOD32对启发可以报的病毒是不入库的。对于pcshare4处关键作为启发杀毒,剩下26个特征是辅助定位,4处关键修改后少量修改辅助定位就可以了。
关于OD修改字符串
例如pcshare有一个定位在“%S%S%S”上的...我们可以首先用C32把“%S%S%S”向前移一位,然后用OD载入,右键,超级字符串参考,
查找ASCII,然后找到所有的“s%s%s”(一般是一个PUSH或者CALL指令,他调用的就是这个字符串的地址),由于我们向前移了一位,所以显示的应该是“s%s%s”,然后双击来一个个修改...双击后会发现,对应的语句会有一个地址,我们把它改掉,向前一位,如4AD05168就改成4AD05167,接着同样方法继续改其它有“s%s%s”的...
这个方法通用字符串的修改...
另外还有一个容易忽略的问题,那就是文件版权
建议大家的木马都不要使用原来的图标和版权信息,可以加上微软,360的版权信息,有不少杀软会针对版权信息进行查杀(例:小红伞,遇到过几次,其余的不清楚)
360、卡巴免杀
怎么过360 卡巴 瑞星 金山 。。。
360其实很好过 行为查杀
只要把木马默认的文件名 服务名 (现在应该没人在使用win98了吧 或用注册表启动的木马了吧 如果有那么把注册表里的启动键值改了)修改掉 就OK了
金山流氓查杀也是一样的
接着说
瑞星 和 金山 其实 别看官方吹得很好 其实很垃圾 主动防御如同虚设
这里据个例子
黑洞1.96 吧 因为介绍卡巴的时候用到它 把服务端里面的 黑洞 藏鲸阁 等替换掉 (老陈,不是要砸你招牌 而是被逼的) 再把刚才说的 文件名 服务名 都换成其他的 那主动就过去了
其实NS也行 把SYSNS.DLL 改名 把版权去掉(老熊莫怪哦)再定位出其他的特征码 修改掉(表面没过,以上是废话)
那么 金山 瑞星 360 就过去了
- 1楼网友:街头电车
- 2021-08-23 09:35
特征码免杀,源码免杀,加壳改壳免杀!到【败笔网络安全小组】,里面有很多的免杀教程,个人觉的还不错吧!你也去看看!
- 2楼网友:躲不过心动
- 2021-08-23 08:14