Android Native Hook 深入理解PLT hook
发布时间:2023年12月22日
前言
本文介绍NativeHook技术里的PLT hook,参考开源的xhook和bhook进行理解,本文不涉及该hook技术源码的分析,只分析大体原理,用于在进行修复稳定性问题时候寻找hook点使用。
基本搬运如下两篇文章,主要是加深自己理解:
字节跳动开源 Android PLT hook 方案 bhook
xhook Android PLT hook 概述
ELF格式
Native Hook是对so文件进行hook,这里就先介绍ELF文件吧。
ELF是Executable and Linkable Format的缩写,它是Unix(包括Linux这样的类Unix)平台上最通用的二进制文件格式。
比如:
c/.c++文件编译后得到的.o(或.obj)文件就是ELF文件。
动态库.so文件是ELF文件。
.o文件和.so文件链接后得到的二进制可执行文件也是ELF文件。
- Executable:可执行。ELF文件将参与程序的执行(Execution)工作。包括二进制程序的运行以及动态库.so文件的加载。
- Linkable:可链接。ELF文件是编译链接工作的重要参与者。
E
文章来源:https://blog.csdn.net/u014099894/article/details/135160071
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:chenni525@qq.com进行投诉反馈,一经查实,立即删除!