首页
社区
课程
招聘
[已解决]IDA 分析ELF文件JUMPOUT指令无法解析。
发表于: 2020-1-9 18:35 8570

[已解决]IDA 分析ELF文件JUMPOUT指令无法解析。

2020-1-9 18:35
8570

IDA 分析ELF文件JUMPOUT指令无法解析?

 

今天使用 IDA F5 的时候拿到代码 JUMPOUT(__CS__, off_DFFA4);

 

新手一枚,还想请问大佬这种情况是什么意思?怎样破,谢谢!

首先指令是这样的
.text:0006E508
.text:0006E508 var_90          = -0x90
.text:0006E508 var_60          = -0x60
.text:0006E508 anonymous_0     = -0x5C
.text:0006E508 anonymous_2     = -0x54
.text:0006E508 anonymous_3     = -0x50
.text:0006E508 anonymous_5     = -0x30
.text:0006E508 anonymous_4     = -0x2C
.text:0006E508 anonymous_1     = -0x1C
.text:0006E508 var_s0          =  0
.text:0006E508
.text:0006E508                 PUSH            {R4-R7,LR}
.text:0006E50A                 ADD             R7, SP, #0xC
.text:0006E50C                 SUB             SP, SP, #0x4C
.text:0006E50E                 MOV             R6, SP
.text:0006E510                 ADDS            R1, R6, #7
.text:0006E512                 ADDS            R1, #0x3D ; '='
.text:0006E514                 PUSH            {R2}
.text:0006E516                 POP             {R5}
.text:0006E518                 STR             R0, [R6,#0x3C]
.text:0006E51A                 LDR             R0, =(__stack_chk_guard_ptr - 0x6E520)
.text:0006E51C                 ADD             R0, PC  ; __stack_chk_guard_ptr
.text:0006E51E                 LDR             R0, [R0] ; __stack_chk_guard
.text:0006E520                 STR             R0, [R6,#4]
.text:0006E522                 LDR             R0, [R0]
.text:0006E524                 STR             R1, [R6,#8]
.text:0006E526                 STR             R0, [R1]
.text:0006E528                 LDR             R0, =(off_E1EF4 - 0x6E52E)
.text:0006E52A                 ADD             R0, PC  ; off_E1EF4
.text:0006E52C                 LDR             R0, [R0] ; loc_6E544
.text:0006E52E                 LDR             R1, [R6,#0x64]
.text:0006E530                 STR             R1, [R6,#0x2C]
.text:0006E532                 LDR             R1, [R6,#0x60]
.text:0006E534                 STR             R1, [R6,#0x28]
.text:0006E536                 MOV             PC, R0
.text:0006E538 ; ---------------------------------------------------------------------------
.text:0006E538
.text:0006E538 loc_6E538                               ; DATA XREF: .data:000DFCA0↓o
.text:0006E538                                         ; .data:000E1EF8↓o
.text:0006E538                 LDR             R0, =(unk_10BFF0 - 0x6E53E)
.text:0006E53A                 ADD             R0, PC  ; unk_10BFF0
.text:0006E53C                 MOVS            R1, #0
.text:0006E53E                 MOVS            R2, R1
.text:0006E540                 BL              sub_D7064

然后使用 F5 插件以后的伪代码

{
  int v6; // [sp+34h] [bp-5Ch]
  void *v7; // [sp+3Ch] [bp-54h]
  int *v8; // [sp+40h] [bp-50h]
  int v9; // [sp+60h] [bp-30h]
  int v10; // [sp+64h] [bp-2Ch]
  int v11; // [sp+74h] [bp-1Ch]
  int v12; // [sp+7Ch] [bp-14h]

  v6 = a3;
  v11 = a1;
  v7 = &_stack_chk_guard;
  v8 = &v12;
  v10 = a6;
  v9 = a5;
  JUMPOUT(__CS__, off_E1EF4);
}

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2020-1-20 16:01 被Kris777编辑 ,原因: 已解决
收藏
免费 0
支持
分享
最新回复 (15)
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
整了一天了,还希望大佬能解释一下
2020-1-9 18:36
1
雪    币: 17428
活跃值: (5009)
能力值: ( LV9,RANK:450 )
在线值:
发帖
回帖
粉丝
3
https://bbs.pediy.com/thread-202207.htm
2020-1-9 19:40
0
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
jishuzhain https://bbs.pediy.com/thread-202207.htm
尝试了这种切换模式的方法还是不行,没有作用。
最后于 2020-1-13 15:02 被Kris777编辑 ,原因:
2020-1-10 09:37
0
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谢谢啊
2020-1-10 09:37
0
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
别沉啊,求大佬们帮帮忙啊
2020-1-13 14:58
0
雪    币: 6910
活跃值: (9044)
能力值: ( LV17,RANK:797 )
在线值:
发帖
回帖
粉丝
7
发样本吧
2020-1-19 22:56
0
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
无名侠 发样本吧
https://share.weiyun.com/5EEKPlH
so文件放到微云了大佬注意观察info2 这个方法,f5插件没用
2020-1-20 10:47
0
雪    币: 8102
活跃值: (1945)
能力值: ( LV8,RANK:122 )
在线值:
发帖
回帖
粉丝
9
这里 从E1EF4动态加载地址赋值给PC, 而E1EF4做为数据段, 因为属于变量, IDA不知道具体值是多少,
下面的 MOV PC, R0 也就不知道应该往哪跳
 你把.data段 修改属性改成只读, 再按F5就可以了, 然后看到下面的效果

最后于 2020-1-20 11:19 被SnowFox编辑 ,原因:
2020-1-20 11:18
0
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
SnowFox 这里 从E1EF4动态加载地址赋值给PC, 而E1EF4做为数据段, 因为属于变量, IDA不知道具体值是多少,下面的 MOV PC, R0 也就不知道应该往哪跳 你把.data段 ...
大佬 66666
2020-1-20 11:30
0
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
SnowFox 这里 从E1EF4动态加载地址赋值给PC, 而E1EF4做为数据段, 因为属于变量, IDA不知道具体值是多少,下面的 MOV PC, R0 也就不知道应该往哪跳 你把.data段 ...
问下怎样改为只读啊。。
2020-1-20 15:00
0
雪    币: 8102
活跃值: (1945)
能力值: ( LV8,RANK:122 )
在线值:
发帖
回帖
粉丝
12
Kris777 问下怎样改为只读啊。。[em_31]

2020-1-20 15:02
0
雪    币: 81
活跃值: (462)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
SnowFox
感谢啦
2020-1-20 15:16
0
雪    币:
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
14
同是新手,遇到一样的问题
2020-5-21 20:34
0
雪    币: 8841
活跃值: (5071)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
jgs
15
学习了,收藏
2020-7-29 12:37
0
雪    币: 508
活跃值: (2713)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16

楼主解决了吗,我试了改.data只读属性还是不行

最后于 2020-11-19 20:14 被陈某人编辑 ,原因:
2020-11-19 19:53
0
游客
登录 | 注册 方可回帖
返回
//