bmax121/KernelPatch

GitHub: bmax121/KernelPatch

KernelPatch 是一个无需源码和符号信息、仅凭 stripped Linux 内核镜像即可实现内核 patch 和 hook 的底层框架。

Stars: 1455 | Forks: 359

# KernelPatch **仅需被 strip 过的 Linux 内核镜像即可对 Linux 内核进行 patch 和 hook。** ``` _ __ _ ____ _ _ | |/ /___ _ __ _ __ ___| | _ \ __ _| |_ ___| |__ | ' // _ \ '__| '_ \ / _ \ | |_) / _` | __/ __| '_ \ | . \ __/ | | | | | __/ | __/ (_| | || (__| | | | |_|\_\___|_| |_| |_|\___|_|_| \__,_|\__\___|_| |_| ``` - 无需源码和符号信息即可获取所有符号信息。 - 向内核注入任意代码。(静态 patch 内核镜像或运行时动态加载)。 - 提供内核函数 inline hook 和 syscall table hook。 - 针对 Android 的额外 SU。 如果您使用的是 Android,[APatch](https://github.com/bmax121/APatch) 会是更好的选择。 ## 要求 CONFIG_KALLSYMS=y ## 支持版本 目前仅支持 arm64 架构。 Linux 3.18 - 6.6(理论上) ## 更多信息 [文档](./doc/) ## 致谢 - [vmlinux-to-elf](https://github.com/marin-m/vmlinux-to-elf):解析内核符号的部分思路。 - [android-inline-hook](https://github.com/bytedance/android-inline-hook):修复 arm64 inline hook 指令的部分代码。 - [tlsf](https://github.com/mattconte/tlsf):用于 KPM 的内存分配器。(需要另一个分配器来分配 ROX 内存。) ## 许可证 KernelPatch 采用 **GNU General Public License (GPL) 2.0** () 授权。
标签:arm64, Linux内核, 云资产清单, 内核Hook, 内核补丁, 安全渗透, 安卓, 客户端加密, 逆向工程