首页
社区
课程
招聘
[原创]一个OD插件/花指令(附件重新上传了)
2005-2-23 14:33 16544

[原创]一个OD插件/花指令(附件重新上传了)

2005-2-23 14:33
16544
我新学脱壳,每当我碰到壳中的花指令时,头痛不已.
我也看到工具区有动态去除花指令的OD插件,但不甚合我意.原因有2:

1 我经常碰到象
$:                JMP                $+6
$+5:        DB                ?                ;也许1个,也许2个无用的字节
$+6:        PUSH        ESI         ;真正的指令
这样的指令序列,我总不能定义一个好的配置,去除这样的花指令.因为也许正常的指令序列也许象这样.

2 就算真的你去除了这些花指令(即使你没有意外的NOP掉任何一个正常的指令),我们知道很多壳要利用这些垃圾(花指令)
        做CRC校验的,一但更改了这些指令,恐怕你所调试的程序就无疾而终了.
       
我的意思是:当我只需要仔细观察某段汇编指令(比如我需要研究它的算法),我需要把这些花指令去掉.
当我观察完这些代码,我就把这些指令还原,以避开CRC陷阱.

基于以上,我做了个小插件.

以下是应用示例:

我有一段代码,看 00955302 的指令,跳转到 0095530F 的中间,所以我用这个插件去除花指令.
00955302   /E9 09000000     JMP     00955310
00955307   |5D              POP     EBP                              ; NOTEPADy.00400000
00955308   |D2A3 A0591EFF   SHL     BYTE PTR [EBX+FF1E59A0], CL
0095530E   |CC              INT3
0095530F   |15 668BF3FF     ADC     EAX, FFF38B66                                        ;跳转到一条指令的中间
00955314    34 0F           XOR     AL, 0F

代码变成如下,好看多了 :)
00955302   /E9 09000000     JMP     00955310
00955307   |5D              POP     EBP                              ; NOTEPADy.00400000
00955308   |D2A3 A0591EFF   SHL     BYTE PTR [EBX+FF1E59A0], CL
0095530E   |CC              INT3
0095530F   |90              NOP
00955310   \66:8BF3         MOV     SI, BX
00955313    FF340F          PUSH    DWORD PTR [EDI+ECX]

好了,还原.
00955302   /E9 09000000     JMP     00955310
00955307   |5D              POP     EBP                              ; NOTEPADy.00400000
00955308   |D2A3 A0591EFF   SHL     BYTE PTR [EBX+FF1E59A0], CL
0095530E   |CC              INT3
0095530F   |15 668BF3FF     ADC     EAX, FFF38B66                                        ;跳转到一条指令的中间
00955314    34 0F           XOR     AL, 0F

可以继续执行了.

使用:
1 将AJUNK.DLL拷贝到OD的插件目录.
2 在我们要NOP掉的指令处,右键弹出菜单,选择要NOP掉的字节数量.(快捷键 1-6)
3 恢复.(快捷键 9 取消一次操作, 0 恢复所有的指令)

本来,我想在 JMP XXXXX 的指令处,就可以直接找到花指令的所在,自动去除的.但我刚学用OD,对OD还很陌生,
所以只有用你自己的脑袋来判断了.

我纯粹菜鸟一个,写这个东西只是好玩.如有遗笑方家的地方,还望各位包含.
也希望各位老大帮助我们这些 newbie, 不胜感谢.

以下是插件的DLL和源码.
因为OD提供的输入库是C的,我使用的是VC++6,所以对plugins.h做了点修改,所有的引入,引出函数前都+了个 下划线.

又:POSTPOST http://bbs.pediy.com/editpost.php HTTP/1.0
个插件有点意思,请emai to : lenglianxi@tom.com, 我会将DLL和源码一并寄给你。

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞7
打赏
分享
最新回复 (30)
雪    币: 1761
活跃值: (746)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
yijun8354 12 2005-2-23 15:48
2
0
支持一下,希望能写出更多和我们分享~~~~
雪    币: 32406
活跃值: (18820)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
kanxue 8 2005-2-23 16:24
3
0
暂时给这帖加了个精,你现在有上传附件的权限了,这么好的东西放上来与大家分享一下。;)
雪    币: 255
活跃值: (266)
能力值: ( LV12,RANK:220 )
在线值:
发帖
回帖
粉丝
WiNrOOt 5 2005-2-23 17:35
4
0
最初由 kanxue 发布
暂时给你加了个精,你现在有上传附件的权限了,还么好的东西放上来与大家分享一下。;)

看雪的中文还需要提高呀~~~哎~~~~~~~~~~~~~~~~~~~~~
雪    币: 85402
活跃值: (198710)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
linhanshi 2005-2-23 20:01
5
0
Authorship.I support.
雪    币: 299
活跃值: (300)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
clide2000 7 2005-2-24 00:13
6
0
9494,还是传上来,方便大家交流
支持一下,希望能继续完善这个插件(另有没有delphi的插件原码)
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
prince 16 2005-2-24 08:34
7
0
就是,放上来吧,看雪老大都给你权限了~
雪    币: 78
活跃值: (115)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
采臣·宁 1 2005-2-24 09:03
8
0
好贴正如美女,是要 顶 弟,我顶
雪    币: 207
能力值: (RANK:50 )
在线值:
发帖
回帖
粉丝
lenglx 1 2005-2-24 09:20
9
0
谢谢各位个关心。
以下是附件,包括DLL和VC原码。

附件:AJunk.rar
雪    币: 896
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
fly 85 2005-2-24 09:33
10
0
thank

BTW:AJunk.dll解压失败,用源码编译了一下
雪    币: 299
活跃值: (300)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
clide2000 7 2005-2-24 09:50
11
0
重发一下吧,我没有VC啊
雪    币: 207
能力值: (RANK:50 )
在线值:
发帖
回帖
粉丝
lenglx 1 2005-2-24 19:04
12
0
今天很闲。
我重新修改了程序。
现在可以在JMP指令上按快捷键 7 ,自动找出花指令。
另外对原来处理备份数据的部分,重新编码过了。

再次谢谢大家的关心。

附件:AJunk.rar
雪    币: 257
活跃值: (369)
能力值: ( LV12,RANK:370 )
在线值:
发帖
回帖
粉丝
newsearch 9 2005-2-24 19:07
13
0
楼主辛苦了,3KS!
雪    币: 339
活跃值: (1510)
能力值: ( LV13,RANK:970 )
在线值:
发帖
回帖
粉丝
nbw 24 2005-2-24 21:07
14
0
支持一下。如今高手越来越多。
雪    币: 201
活跃值: (1659)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
freecat 1 2005-2-24 21:54
15
0
和 OllyUni Plugin for OllyDbg 有冲突 不能一起用
雪    币: 11201
活跃值: (3069)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
stan52 2005-2-24 23:14
16
0
支持
谢谢提供!
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
prince 16 2005-2-25 08:41
17
0
多谢楼主,看看先。
雪    币: 207
能力值: (RANK:50 )
在线值:
发帖
回帖
粉丝
lenglx 1 2005-2-25 10:35
18
0
最初由 freecat 发布
和 OllyUni Plugin for OllyDbg 有冲突 不能一起用


我没用过你说过的这个插件。能提供个下载地址?
thx.
雪    币: 215
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
dyk158 2005-2-25 12:04
19
0
不错!谢谢楼主!
雪    币: 201
活跃值: (1659)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
freecat 1 2005-2-25 14:52
20
0
哈我上传不了附件
你在网上找找吧
雪    币: 303
活跃值: (461)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
liuyilin 2005-2-28 14:01
21
0
,
雪    币: 233
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
bridgewind 2005-3-6 15:49
22
0
不错!谢谢楼主!
雪    币: 192
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kingjia 2005-3-6 21:42
23
0
厉害
雪    币: 214
活跃值: (15)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
ljy3282393 1 2005-3-7 01:58
24
0
楼主辛苦了!
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
sunlight 2005-3-28 09:49
25
0
支持一下。
游客
登录 | 注册 方可回帖
返回