病毒查杀_特征码定位 – 作者:凯信特安全团队

1、免杀技术

加花指令:攻击者为程序添加了一段没有作用的指令,不影响程序的运行,程序的部分偏移便会受到影响,反病毒软件是靠特征码来判断文件是否有毒的,反病毒软件不能识别这段花指令,那么它检测特征码的偏移量会整体位移一段位置,自然也就无法正常检测木马了。

加壳:当运行加壳的程序时,系统首先会运行程序的“壳”,然后由壳将加密的程序逐步还原到内存中,最后运行程序。加壳之后的文件反病毒软件无法将其还原,那么特征码也就无法判断出来,无法正常检测到木马了。

修改特征码:反病毒软件是靠特征码来判断文件是否有毒的,那么通过修改特征码,使反病毒软件的特征库匹配不到,也就无法正常检测到木马。

2、特征码定位

工具:

定位特征码有三款非常不错的工具:MyCCL、CCL、MultiCCL

MyCCL 2.1

图片.png

功能:

文件路径: 定位的文件路径

目录路径: 存放MyCCL分块文件的目录

分块数量: 分块文件的个数

单位长度: 填充的字符长度

填充: 十六进制字节数据填充

开始位置/结束位置: 开始填充位置/结束填充位置

分段长度: 填充字符的总长度

正向: 选择填充方向

复合定位: 定位多处特征码

单一定位: 定位一个特征码

原理:

假设一段病毒程序代码是如下(0代表NULL, ,a、b、c等代表特征码):

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:XXXXXXXXcXXXXXxXXXXX

  003h:XXXXXXXXXaXXXXXXXXXX

  004h:XXXXXXXXXbXXXXXXXXXX

  005h:XXXXXXXXXXXXcXXXXXXX

  当文件同时包含a.b.c三种特征码的时候,反病毒软件就报毒啦。这就是所谓的复合特征码。当然杀软在定义复合特征码的时候可能有好几种组合,好几套特征码。这里手动用MyCCL来生成5个文件。

  ========File1=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:00000000000000000000

  003h:00000000000000000000

  004h:00000000000000000000

  005h:00000000000000000000

  ========File2=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:XXXXXXXXcXXXXXxXXXXX

  003h:00000000000000000000

  004h:00000000000000000000

  005h:00000000000000000000

  ========File3=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:XXXXXXXXcXXXXXxXXXXX

  003h:XXXXXXXXXaXXXXXXXXXX

  004h:00000000000000000000

  005h:00000000000000000000

  ========File4=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:XXXXXXXXcXXXXXxXXXXX

  003h:XXXXXXXXXaXXXXXXXXXX

  004h:XXXXXXXXXbXXXXXXXXXX

  005h:00000000000000000000

  ========File5=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:XXXXXXXXcXXXXXxXXXXX

  003h:XXXXXXXXXaXXXXXXXXXX

  004h:XXXXXXXXXbXXXXXXXXXX

  005h:XXXXXXXXXXXXcXXXXXXX

  =========================

  从File2开始就有了abc特征码的组合,File2到File5就被杀了。被杀以后再用MyCCL,进行二次定位,这样我们就知道了特征码c的位置了。然后再把002h那行置0,再生成一次。

  第二次生成5个文件:

  ========File1=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:00000000000000000000

  003h:00000000000000000000

  004h:00000000000000000000

  005h:00000000000000000000

  ========File2=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:00000000000000000000

  003h:00000000000000000000

  004h:00000000000000000000

  005h:00000000000000000000

  ========File3=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:00000000000000000000

  003h:XXXXXXXXXaXXXXXXXXXX

  004h:00000000000000000000

  005h:00000000000000000000

  ========File4=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:00000000000000000000

  003h:XXXXXXXXXaXXXXXXXXXX

  004h:XXXXXXXXXbXXXXXXXXXX

  005h:00000000000000000000

  ========File5=============

  001h:XXXXXaXXXbXXXXXXXXXX

  002h:00000000000000000000

  003h:XXXXXXXXXaXXXXXXXXXX

  004h:XXXXXXXXXbXXXXXXXXXX

  005h:XXXXXXXXXXXXcXXXXXXX

  =========================

因为002h被我们置0了,这里只有File5有abc特征码了,所以File5被杀,这时另一处c也暴露出来了,这样我们就把所有c特征码都定位出来了。

实操:

1)生成一个远控木马123.exe,利用MyCCL加载,分块数量分为20;

图片.png

2)点击生成

图片.png

3)点击yes,生成输入切块文件夹OUTPUT,并提示杀毒

图片.png

4)打开360杀毒,并关闭实时防护及云引擎等,利用本地扫描进行扫描图片.png5)扫描出21个风险文件,1个为远控软件,20个为块文件,点击立即处理进行查杀,查杀完再利用MyCCL点击二次处理

6)程序提示已经找到一处特征码,可能还存在其他,是否继续进行,选择yes进行,并提示选择再次杀毒及二次处理,直到识别不到病毒文件,重复4、5、6的操作,杀毒完成后,点击MyCCL的特征区间,查看特征码

图片.png

7)打开C32Asm,将123.exe托入其中,右键对应HEX编辑(即查看16进制)

图片.png

8)再右键点击跳到,输入特征码

图片.png

图片.png

9)再右键点击对应汇编模式编辑,便到达了特征码的汇编代码处,便可以进行修改特征码了。

图片.png

来源:freebuf.com 2019-04-12 20:28:13 by: 凯信特安全团队

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论