首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
Android安全
发新帖
0
0
[求助]so未被调用前,怎么找到基地?
发表于: 2016-6-15 20:56
9575
[求助]so未被调用前,怎么找到基地?
hmlyn
2016-6-15 20:56
9575
小弟在ida6.5调试so前,遇到点难题,我想调用该so的 init函数,这个函数被某个按钮事件触发,并只会调用一次,也就是当调用这so时,这个init函数同时执行,那么我想调用该so话,要在还没被加载这个so前,下好断点,可是so没被加载前,Ctrl+s,是查看不到这个so的,也就是我也没法得知基址。
求前辈指点,网上找了些资料,都是这个so被加载过的,才能知道基址的。
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
收藏
・
0
免费
・
0
支持
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
10
)
hmlyn
雪 币:
0
活跃值:
(680)
能力值:
( LV2,RANK:10 )
在线值:
发帖
8
回帖
54
粉丝
2
关注
私信
hmlyn
2
楼
本来以为可以用
adb shell /proc/<pid>/maps
打印查看的,但还是不行,只要这个so没被加载过,就没有。咋办呢
2016-6-15 21:11
0
sojia
雪 币:
160
活跃值:
(10)
能力值:
( LV2,RANK:10 )
在线值:
发帖
1
回帖
13
粉丝
0
关注
私信
sojia
3
楼
静态分析时下好断点,attach到进程后会自动识别对应的so文件和断点的
我记得是这样的
难到你是要在动态库加载前下断点吗
2016-6-15 22:27
0
hmlyn
雪 币:
0
活跃值:
(680)
能力值:
( LV2,RANK:10 )
在线值:
发帖
8
回帖
54
粉丝
2
关注
私信
hmlyn
4
楼
如果java层,还没执行 System.loadLibrary("xxxx");
来加载xxxx.so话,那么ida附加进程,也是看不到这个xxx.so的。
当使用了loadLibrary函数,载入了这个xxx.so,才可以看到。
2016-6-15 22:36
0
hmlyn
雪 币:
0
活跃值:
(680)
能力值:
( LV2,RANK:10 )
在线值:
发帖
8
回帖
54
粉丝
2
关注
私信
hmlyn
5
楼
晕了,为啥我提问的,都没人一个人回复呢
2016-6-15 23:40
0
学编程
雪 币:
163
活跃值:
(1623)
能力值:
( LV5,RANK:60 )
在线值:
发帖
30
回帖
441
粉丝
2
关注
私信
学编程
1
6
楼
ida调试勾选上加载新模块通知事件
2016-6-16 09:29
0
大王叫我挖坟
雪 币:
191
活跃值:
(195)
能力值:
( LV8,RANK:130 )
在线值:
发帖
29
回帖
321
粉丝
24
关注
私信
大王叫我挖坟
3
7
楼
╮(╯▽╰)╭其实这是一个很菜鸟的问题,可惜大神们都太忙了,现在是工作期间吧,╮(╯▽╰)╭看在都是菜鸟我来帮一下你吧,谁叫我是个空闲的菜鸟呢,嘿嘿!!啊嘿嘿
那个你需要对linker下断点,自行百度对init_array下断点吧,这个一堆一堆的文章,linker对so dlopen之后会填充soinfo这个结构体的,最后处理完毕so之后,会第一个执行so的init_array节的内容,你在他还没有运行init_array节之前下断点就行了
2016-6-16 11:35
0
QEver
雪 币:
233
活跃值:
(285)
能力值:
( LV12,RANK:270 )
在线值:
发帖
32
回帖
581
粉丝
4
关注
私信
QEver
5
8
楼
IDA的Debugger options里面有个Suspend on library load/unload,在so加载前勾选上就行了。
至于前面说到的搞linker,更灵活一点,但是操作比价繁琐。
2016-6-16 11:49
0
大王叫我挖坟
雪 币:
191
活跃值:
(195)
能力值:
( LV8,RANK:130 )
在线值:
发帖
29
回帖
321
粉丝
24
关注
私信
大王叫我挖坟
3
9
楼
哈哈谢谢大神指点,又多学了一招
2016-6-17 11:08
0
GeneBlue
雪 币:
47
活跃值:
(418)
能力值:
( LV7,RANK:100 )
在线值:
发帖
3
回帖
93
粉丝
7
关注
私信
GeneBlue
2
10
楼
不知道这个so是不是你自己写的,要是自己写的,在so的init函数中加sleep,然后挂上gdb可以源码单步调试,要是别人的so就在ida中的Debugger options中弄
2016-6-18 00:06
0
hmlyn
雪 币:
0
活跃值:
(680)
能力值:
( LV2,RANK:10 )
在线值:
发帖
8
回帖
54
粉丝
2
关注
私信
hmlyn
11
楼
怎么结贴呢,谢谢各位大大解答
2016-6-20 21:32
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
hmlyn
8
发帖
54
回帖
10
RANK
关注
私信
他的文章
[求助]雷电模拟器中的android中的没有Linux内核的温控/sys/class/thermal/thermal_zone0
2104
unidbg Context 对象传参到so里,如何实现呀?困扰了一整天了
3805
android系统设置里的账户,它的数据是保存在何处的?
5411
[求助]请问JEB Terminal控制台,怎么打印下断点的变量值?
7035
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部