我正在查看在/proc/<pid>/maps
Android (10) 上运行的 aarch64 进程的文件。这部分引起了我的兴趣:
72582d2000-72582f6000 --xp 00012000 07:20 93 /apex/com.android.runtime/lib64/bionic/libm.so
根据readelf
,正如预期的那样,该部分对应于该.text
部分。
内存部分可执行但不可读意味着什么?我认为那不可能。
答案1
只执行内存 (XOM) 是 Android 10 中添加的一项安全功能,但在 Android 11 中被删除。
根据这个参考,它的实现是“作为针对即时代码重用攻击的强化缓解措施”。