首页
社区
课程
招聘
[讨论]动态混淆的代码怎么破?
发表于: 2015-1-4 02:21 4426

[讨论]动态混淆的代码怎么破?

2015-1-4 02:21
4426
假设有如下几句指令:

mov  eax, 00401588h
push  eax
push  eax
push  edi


可以这样写:

push  00401588h
xchg  eax, [esp]
mov  eax, [esp]
mov  eax, [esp]
push  esi
pushf
mov  [esp+4], eax
popf
mov  eax, [esp]
mov  [esp+4], eax
lea  esp, [esp-4]
pushf
mov  [esp+4], edi
mov  [esp], eax
pop  edi
mov  edi, [esp]


当然还可以写得更加复杂; 如果纯人工分析,根本不切实际, 因为如果 1KB 代码经过大量的混淆,或者可以多次多重混淆,1KB 的代码量, 可以变成 5MB, 10MB 甚至上百MB!!! 

我很想知道, 有什么方便快捷的方法能够还原? 就是自动化, 当然不求还原到原来最精练的样式,但至少不会那么晦涩; 比如,什么工具,什么脚本,什么插件, 或者构建什么环境如何去做, 可以对付这种情况?

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 36
活跃值: (212)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
想想不对, 这种应该不叫动态混淆, 我错了, 这种应该称作"变形";  我好想知道, 现在有没有公开的工具或者其它什么什么东西可以对付这种情况。
2015-1-4 02:35
0
雪    币: 71
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
写工具还原啊.
2015-1-4 09:22
0
游客
登录 | 注册 方可回帖
返回
//