1.为毛android的32内核一般是0x8000c000?
有一些是因为历史原因,比如windows引导,有些地址是固定的.
其实很多内核 它加载到内核中的地址是固定的
2.内核地址随机化KASLR是啥?
内核地址随机化指的是内核中的模块的符号
老版本的mach_kernel与新版本的kernel都是加载在固定地址 兼容老版本和设备
从它开始 可以在内核中搜到所有kernel symbols
3.macos三种稳定搜内核符号的方法
其一 从内核的加载的虚拟地址开始在内核中搜到所有kernel symbols
其二 就是反汇编看看text前段的常见的一些func 并且是导出到kdk中可访问的 它们地址与掉低4字节 就是当前的页 也就是text base
其三 mmap 在r3上做hook checker
macOS特有的 可以在r3下访问kernel的地址 通过task port
4.如何看固件的加载地址
一般看soc文档
随带的刷机工具 刷的时候 会有写入地址的
再看是不是大众的忒 binwalk能不能提取
参考:
mac osx and ios internals
除Solaris系列以外,Dtrace已先后被移植到FreeBSD、NetBSD及Mac OS X等操作系统上