首页
社区
课程
招聘
[原创]定制bcc/ebpf在android平台上实现基于dwarf的用户态栈回溯
发表于: 2022-9-26 21:18 42514

[原创]定制bcc/ebpf在android平台上实现基于dwarf的用户态栈回溯

2022-9-26 21:18
42514

冰与火的战歌:Windows内核攻防实战高级班!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。

最后于 2022-10-9 10:48 被飞翔的猫咪编辑 ,原因:
收藏
点赞 27
打赏
分享
最新回复 (17)
雪    币: 3220
活跃值: (4628)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
猫神杀疯了
2022-9-27 12:52
1
雪    币: 7296
活跃值: (9434)
能力值: ( LV12,RANK:240 )
在线值:
发帖
回帖
粉丝
3
VNRKDOEA 猫神杀疯了
我还是觉得你的乖巧宝宝的头像更好
2022-9-27 14:23
0
雪    币: 5357
活跃值: (6162)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
感谢分享!
2022-9-27 15:27
0
雪    币: 637
活跃值: (10301)
能力值: ( LV9,RANK:240 )
在线值:
发帖
回帖
粉丝
5
猫神杀疯了
2022-9-28 20:09
0
雪    币: 5
活跃值: (5764)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
只希望能否有成品
2022-10-8 18:19
0
雪    币: 2144
活跃值: (5278)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
厉害,没想到在安卓平台已经这么卷了。
2022-10-17 17:22
0
雪    币: 20
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
8
猫神杀疯了
2022-10-25 20:22
0
雪    币: 53
活跃值: (353)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
9

LZ威武!很好的一种思路。
// 一个问题

比如bcc自带的工具execsnoop,它有在execve系统调用上设置kprobe,当kprobe被触发时,还没有执行完execve,此时的stack等memory layout基本都是复制父进程的mm,perf event抓取到的stack及regs中的lr、sp也都是匹配父进程layout,后续stack数据转发到android这边的socket server,它按照pid取/proc/pid/maps时,因为execve系统调用已经执行完了,内存布局已经完全发生变化了,libunwindstack使用之前的lr/sp这些寄存器、stack数据,对照这个新maps肯定是获取不到正确的符号地址。


当然,原始execsnoop默认也没有使用bpf_getstack之类的获取用户态调用栈,如果获取,bcc解析符号时,理论上也是存在该问题的。


此外,假如被探测的程序还没等socket server那端读取完maps就退出了,maps获取不到,也就无法解析调用栈中的符号地址(原始bcc的实现,虽然没有socket转发,但其实应该也存在这种无法获取到目标maps的情况)。



最后于 2022-11-2 15:47 被netsniffer编辑 ,原因:
2022-11-2 15:34
0
雪    币: 686
活跃值: (7709)
能力值: ( LV13,RANK:240 )
在线值:
发帖
回帖
粉丝
10
netsniffer LZ威武!很好的一种思路。// 一个问题比如bcc自带的工具execsnoop,它有在execve系统调用上设置kprobe,当kprobe被触发时,还没有执行完execve,此时的stack等mem ...
ID 不错。50卖号吗?
2022-11-2 16:01
0
雪    币: 7296
活跃值: (9434)
能力值: ( LV12,RANK:240 )
在线值:
发帖
回帖
粉丝
11
netsniffer LZ威武!很好的一种思路。// 一个问题比如bcc自带的工具execsnoop,它有在execve系统调用上设置kprobe,当kprobe被触发时,还没有执行完execve,此时的stack等mem ...
工具肯定或多或少有些缺陷,如果遇到问题再按照问题的解决方向改进就行了。
2022-11-2 18:59
0
雪    币: 66
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
12
大佬,我按照你的,我编译android12 kernel 4.9 加你那些参数,驱动挂了,wiFi不能连接,触摸屏挂了,咋解决哈
2022-11-30 16:08
0
雪    币: 273
活跃值: (2389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
猫神泰强辣
2023-5-12 19:45
0
雪    币: 10
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
14
强到爆
2024-5-13 20:21
0
雪    币: 273
活跃值: (2389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
重温经典
2025-7-1 21:57
0
雪    币: 273
活跃值: (2389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
再温经典
2026-4-9 22:18
0
雪    币: 273
活跃值: (2389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
再再温经典
2026-4-22 21:21
0
雪    币: 2611
活跃值: (3110)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
18
3天前
0
游客
登录 | 注册 方可回帖
返回