首页
社区
课程
招聘
[求助]E language * 如何逆向分析
2008-4-11 19:53 12019

[求助]E language * 如何逆向分析

2008-4-11 19:53
12019
程序脱壳后用Peid查得出 E language * 可是ECE不能够分析。
程序入口处代码入下:
00401000 >/$  E8 06000000   call    0040100B
00401005  |.  50            push    eax                              ; /ExitCode
00401006  \.  E8 BB010000   call    <jmp.&kernel32.ExitProcess>      ; \ExitProcess
0040100B  /$  55            push    ebp
0040100C  |.  8BEC          mov     ebp, esp
0040100E  |.  81C4 F0FEFFFF add     esp, -110
00401014  |.  E9 83000000   jmp     0040109C
00401019  |.  6B 72 6E 6C 6>ascii   "krnln.fnr",0
00401023  |.  6B 72 6E 6C 6>ascii   "krnln.fne",0
0040102D  |.  47 65 74 4E 6>ascii   "GetNewSock",0
00401038  |.  53 6F 66 74 7>ascii   "Software\FlySky\"
00401048  |.  45 5C 49 6E 7>ascii   "E\Install",0
00401052  |.  50 61 74 68 0>ascii   "Path",0
00401057  |.  4E 6F 74 20 6>ascii   "Not found the ke"
00401067  |.  72 6E 65 6C 2>ascii   "rnel library or "
00401077  |.  74 68 65 20 6>ascii   "the kernel libra"
00401087  |.  72 79 20 69 7>ascii   "ry is invalid!",0
00401096  |.  45 72 72 6F 7>ascii   "Error",0
主程序2
00456BF7    FC              cld                                      ; 标志寄存器清0
00456BF8    DBE3            finit
00456BFA    E8 FAC9FFFF     call    004535F9
00456BFF    68 0B3D4500     push    00453D0B
00456C04    B8 03000000     mov     eax, 3
00456C09    E8 54000000     call    00456C62
00456C0E    83C4 04         add     esp, 4
00456C11    E8 C6C8FFFF     call    004534DC
00456C16    E8 BFC7FFFF     call    004533DA
00456C1B    E8 CBC7FFFF     call    004533EB
00456C20    E8 E3C8FFFF     call    00453508
00456C25    E8 15C6FFFF     call    0045323F
00456C2A    E8 2DC6FFFF     call    0045325C
00456C2F    E8 EEC5FFFF     call    00453222
00456C34    68 02000152     push    52010002
00456C39    E8 1E000000     call    00456C5C                         ; 程序画面显示
00456C3E    83C4 04         add     esp, 4
00456C41    6A 00           push    0
00456C43    E8 0E000000     call    00456C56                         ; 等待选择线路
00456C48    E8 03000000     call    00456C50
00456C4D    83C4 04         add     esp, 4
00456C50  - FF25 43A24400   jmp     dword ptr [44A243]               ; krnln.100296E2

跟进程序以后却发现多数代码都是执行在krnln模块中,
1002964D  /.  55            push    ebp
1002964E  |.  8BEC          mov     ebp, esp
10029650  |.  C705 10EE0E10>mov     dword ptr [100EEE10], 1
1002965A  |.  B9 A8EB0E10   mov     ecx, 100EEBA8
1002965F  |.  E8 ECA70200   call    10053E50                         ;  程序1.1.1a.2.1
10029664  |.  83F8 01       cmp     eax, 1
10029667  |.  75 0C         jnz     short 10029675
10029669  |.  6A 00         push    0
1002966B  |.  B9 A8EB0E10   mov     ecx, 100EEBA8
10029670  |.  E8 ABA80200   call    10053F20                         ;  程序1.1.1a.2.2
10029675  |>  5D            pop     ebp
10029676  \.  C3            retn

程序在似乎是在众多的fnr和主程序间来回穿插,在下强请教一下跟踪的思路。

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

收藏
点赞0
打赏
分享
最新回复 (19)
雪    币: 109
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
suolao 2008-4-12 12:24
2
0
自己顶下,自己顶
雪    币: 203
活跃值: (17)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wangcl 2008-4-12 18:24
3
0
易语言,进入软件才能分析
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
dewwu 2008-4-12 19:39
4
0
F9运行后可查字符串!
雪    币: 109
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
suolao 2008-4-12 21:19
5
0
进入软件才能分析?进入什么软件? OD跟踪到最后有一个call,之后的东西就在krnln.fnr里面飘来飘去,跟踪了几个易的程序都是在同一个krnln.fnr里大转转,实在是让人很头晕.
F9运行后程序有自好像发现自己被脱了壳退出了.
雪    币: 109
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
suolao 2008-4-12 21:52
6
0
F9以后查出字符串,但没有发现有意义的东西啊.
雪    币: 485
活跃值: (12)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
petnt 12 2008-4-12 22:02
7
0
主要代码都在ecode段,在那个段下断试试
雪    币: 109
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
suolao 2008-4-13 01:30
8
0
00403968    E8 CDD7FFFF     call    0040113A                         ; e主程序
004014E1    FFD0            call    eax                              ; 进入库
00A4B08E    FC              cld                                      ; 程序真正的入口点
00A33D7D    55              push    ebp                              ; 点击启动序以后的情况
00A343AB    E8 6C010000     call    00A3451C                         ; 放出程序--------
00A34541    E8 EE070000     call    00A34D34                         ; 产生随机名称-eax
00A34606    E8 29070000     call    00A34D34                         ; 生产文件名2

从下午跟到现在,饭也没吃,终于是有点眉目了,可以跟踪到一些重要的地方,但是具体的操作全部走在krnln.fnr,没有办法理解程序的意图。而且在主程序很多API找不到。程序似乎是被修改过的,ECE不能使用。这个程序我不知道怎么在ECE里修改特征码以让ECE识别该程序,57544E45识别不了程序。实在是郁闷。
雪    币: 134
活跃值: (142)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
xievazi 2008-4-14 00:45
9
0
看雪工具里面有个E-CODE的应该不错,我下了,但是在我虚拟机和本机都不能运行,晕西晕
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
侃学二二 2008-4-14 13:44
10
0
设置数据模拟跟踪,可以ECE分析的。
雪    币: 1379
活跃值: (708)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hmilywen 2008-4-15 00:55
11
0
请问怎么设置?
雪    币: 109
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
suolao 2008-4-16 00:51
12
0
请问怎么设置?
雪    币: 203
活跃值: (17)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wangcl 2008-4-16 14:30
13
0
发个软件下载地址,可能别人能更好地看看
雪    币: 213
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
踏水无浪 2008-5-30 22:32
14
0
非独立编译的没有这个段。
雪    币: 137
活跃值: (410)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wweifu 2008-7-14 13:02
15
0
解决了吗?我的也是这样.......
雪    币: 109
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
suolao 2008-7-14 20:45
16
0
找了很多资料,后来是破了软件,不过还是没有搞懂意思....
雪    币: 101
活跃值: (88)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
nkspark 3 2008-11-22 01:00
17
0
EcE找了半天没找到,咋下载链接都不能用了?

我在ecode段里,对所有的函数下断,然后F9,看堆栈信息, 似乎可以大致了解程序工作内容。
雪    币: 104
活跃值: (68)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
刘国华 2008-11-22 17:53
18
0
怀疑是早期版本编译的字节码吧,解释执行的
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Evilmov 2008-12-1 09:32
19
0
继续研习....
雪    币: 2314
活跃值: (129)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
shellwolf 10 2008-12-1 12:53
20
0
先翻翻自己的电脑。hoho。
不行的话,去拉个pediy的大礼包,里面肯定有。
游客
登录 | 注册 方可回帖
返回