揭秘病毒开发者躲避杀软的一些手法

我们来揭秘一下恶意软件(病毒)开发者用来规避杀毒软件(杀软)检测的一些常见手法。需要强调的是,了解这些是为了更好地防御,而不是鼓励或学习攻击行为。
杀毒软件的核心工作原理主要是:
1. "特征码扫描 (Signature-based Detection):" 这是最传统的方式。杀软厂商会收集大量的已知病毒样本,为每个病毒家族生成独特的“数字指纹”(特征码),并存储在庞大的病毒库中。当文件被扫描时,杀软会将其与病毒库中的特征码进行比对,如果匹配,则判定为病毒。 2. "启发式扫描 (Heuristic-based Detection):" 由于新病毒层出不穷,杀软需要启发式技术。它会分析文件的行为模式或代码结构,寻找一些已知的病毒特征(如特定的代码段、加密方式、修改系统文件等),即使没有匹配已知特征码,也可能将其标记为可疑或病毒。 3. "行为监控 (Behavioral Monitoring):" 监控程序运行时的行为。如果某个程序试图修改系统关键文件、创建大量计划任务、尝试连接已知恶意IP地址等可疑行为,杀软可能会将其阻止或标记。 4. "云安全技术 (Cloud-based Technology):" 将文件哈希值或部分代码上传到云端服务器,与全球其他用户的扫描结果进行比对,快速发现新威胁。
针对这些原理,恶意软件开发者会使用以下手法来

相关内容:

修改入口点


更好的知道攻击者的手法,能帮助我们的更好防守。


入口点是程序最开始执行的那个函数,通常以前四十个字节作为特征值来进行判断,因此通过修改PE文件入口点来迷惑

OD打开后光标默认在入口点

此时记下前三条汇编指令以及第四条的地址备用

0046620E >    55            PUSH EBP
0046620F      8BEC          MOV EBP,ESP
00466211      6A FF         PUSH -1

-->00466213<-- 

对前三条进行nop填充,并找到全0区域进行汇编-->00467642

分别编辑前面备用的汇编语句,再加上一条跳转语句跳回去,将头尾顺序置换

复制到可执行文件->全部复制->弹窗后保存文件

使用peditor修改入口点地址

将入口点地址修改为上文修改全0区域的第一条汇编语句地址-->00467642

yep~

花指令

以一些没有实际作用的指令来伪装欺骗起到一个类似加密的干扰作用,且不影响程序的运行结果。

工具一键加花-->提取花指令-->自定义添加

这时我又换了一个加花工具--那么是不是可以嘿嘿嘿 将其花指令提取纳入另一个加花工具中呢 尝试提取花指令 -->二进制复制-->

9C 60 E8 00 00 00 00 5D 83 ED 07 8D 8D 34 FC FF FF 80 39 01 0F 84 42 02 00 00 61 9D 68 00 E0 4E
00 C3

回看语句找到原程序入口点 --> 68 00E04E00 打开花指令添加 输入二进制复制出来的花指令,点击“68”可以得到其序号,填入跳转位置

纳入囊中

手工写入花指令

利用工具找到空白区域进行写入

在不打破堆栈平衡的条件下构造指令,可以是等值、nop填充位移、添加或删除完整的对应指令语句、跳转指令等语句操作,通过这些来延伸免杀的周期

push ebp 
mov ebp,esp
add esp,1
add esp,-1 //等值
mov eax,0046620E//把入口点数据送入eax
push eax//压入堆栈
retn//堆栈取回地址执行返回入口点

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章