首页
社区
课程
招聘
[求助]fork子进程调试问题
发表于: 2016-9-29 18:32 6069

[求助]fork子进程调试问题

2016-9-29 18:32
6069
小弟调试一个so,里面会调用fork函数,在实际调试时fork调用后IDA会收到一个异常,将这个异常返回给app后原调试正常可操作,但发现只能调试主线程。
写了一个类似的demo在fork子线程中输出对应log,测试发现只要app处于被调试的状态(IDA或AS)则fork子线程就没有log输出,类似没有被执行,请教下大家我想要用IDA调试子进程或者说在调试中让子进程可以正常执行该怎么做?
拜谢

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

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 54
活跃值: (705)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
我是直接跳过fork那句,然后修改返回值为0, 这样就可以进子进程的逻辑了
不过这样会导致主进程无法执行
2016-9-30 10:28
0
雪    币: 63
活跃值: (324)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
如果目的只是想看子进程逻辑是可以照你的办法,但如你所说这样做会造成主进程功能无法正常展开。
所以并不能用这种方式。 还是感谢提供思路
2016-9-30 10:34
0
雪    币: 18
活跃值: (561)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
ida不行,用gdb
2016-9-30 10:47
0
雪    币: 63
活跃值: (324)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
5
我用gdb的set follow-fork-mode child模式调过并没有成功,不知是否我设置问题导致并不能在我子进程断点断下。

如果得用GDB才能调还请教个问题:
gdb能否像IDA一样在我目标app加载so时设置断点让其断下,如何设置。
2016-9-30 10:58
0
雪    币: 18
活跃值: (561)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
你在dlopen下断点不就行了
2016-9-30 11:54
0
雪    币: 63
活跃值: (324)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
感谢
2016-9-30 14:25
0
游客
登录 | 注册 方可回帖
返回
//