首页
社区
课程
招聘
[求助]wince程序反汇编问题
发表于: 2010-4-7 20:03 13948

[求助]wince程序反汇编问题

2010-4-7 20:03
13948
IDA反汇编了wince下的程序,遇到几个小白问题,求解
1、pe文件中可以nop掉某段代码,对应的机器码是90 90  而ARM中有没有对应的nop指令,对应的机器码又是什么

2、wince程序如何修改跳转地址

pe文件可以在ollydbg中直接改跳转,而嵌入系统中如何修改

比如
.text:00001234      BL      _text_1288  
 
这句改为
.text:00001234      BL     _text_1299 


应当如何修改对应的机器码?

3、有没有类似ollydbg一样的工具可以在反汇编状态下直接修改wince程序代码的工具?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 123
活跃值: (295)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
等待大牛来解释。
2010-4-7 22:13
0
雪    币: 201
活跃值: (17)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
1.ARM中nop是伪指令,可用一条MOV指令替代,比如MOV r0, r0, lsl #0这样的操作。
2.BL修改后面的跳转地址偶没做过,不过貌似BL跳转范围只有32MB,如果是机器码,后面的地址实际为相对于PC的偏移量,所以这个看具体情况了
3.我没用过类似ollydbg这样动态调试wince程序的东西,如果是静态分析修改,IDA pro吧
2010-4-8 09:36
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
回答LZ的问题:
1、请在论坛内找到“宇宙青年”的工具,可以转换机器码,比如NOP—>00 00 A0 E1
2、wince跳转地址计算也有工具可用,也可以这样:(目标地址-现地址-8)/4
3、IDA 支持动态wince调试直接修改。
回答完毕,不对的请批评指证。
2010-4-8 11:47
0
雪    币: 13
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
哈哈 不错啦 学习中
2010-4-8 14:36
0
雪    币: 240
活跃值: (35)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
6
1、pe文件中可以nop掉某段代码,对应的机器码是90 90  而ARM中有没有对应的nop指令,对应的机器码又是什么

可以用机器码0x00000000做nop
2010-4-9 13:19
0
雪    币: 228
活跃值: (25)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
7
原来是伪指令,谢谢
2010-4-10 17:44
0
雪    币: 228
活跃值: (25)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
8
工具已找到,很好用
2010-4-10 17:45
0
雪    币: 228
活跃值: (25)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
9
我之前也是这么想的,试了一下可以
2010-4-10 17:45
0
雪    币: 209
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
1.可以准确的告诉你 ARM V4 V5指令集中,非Thumb的话NOP机器码都是00 00 A0 E1 (按UE文件顺序)
2.跳转计算比PC简单,因为非Thumb的话都是4字节一条指令。
3.IDA可以静态分析,同时也能动态分析一些exe和dll,但不是所有,Attach基本是无效的,如果需要做内存补丁,有另外的方法。
2010-4-12 10:27
0
雪    币: 219
活跃值: (38)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
不错,但是arm指令感觉比较复杂
2010-6-13 16:53
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
mark
2015-8-6 12:29
0
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
在IDAPro中查看对应的ARM汇编代码,ARM汇编指令代码为固定的4字节,进行对比即可知道BL指令后面对应的地址,BL指令的操作数为相对地址的长度,为4的倍数。
2015-9-10 07:28
0
游客
登录 | 注册 方可回帖
返回
//