[系统安全4]壳在免杀中的应用

6.1 壳的基础知识

程序运行流程

未加壳程序流程

  • 原程序 -> 加载到内存中 -> 顺利执行

加壳程序流程

  • 加壳程序 -> 加密的原程序读取到内存 -> 解密并释放 -> 原程序加载到内存中 -> 顺利执行

壳的运行过程

  • 加载API函数
  • 解密区段
  • 进行代码重定位
  • 转到入口点

6.2 壳在免杀领域的作用

  • 加壳免杀的原理

据我了解,当前杀毒软件会定义加壳的程序的病毒家族为.pack。检测不出来也会提示用户当前程序是加壳的风险程序

  • FreeRes多重加壳

FreeRes软件原作者的意图是通过这款软件将已压缩加密的程序解压并释放,在此之前黑客们为了对抗杀毒软件的自动脱壳功能,发现了一些重复加壳的规律。使用某些壳与其他一些壳重复使用,也就是最原始的加多层壳的办法。

6.3 壳的修改技巧

  • 壳的初级修改

    修改加壳文件的特征与免杀特征码一致。

  • 壳的深度修改

    在靠近入口点的位置修改,修改壳的流程可以修改跳以及一些带借进位的运算.

  • 提取壳的特征数据

    十六进制数据区:前4个字节为操作指令,后面的8位(字节)为操作数.

posted @ 2017-07-27 00:54  17bdw  阅读(372)  评论(0编辑  收藏  举报