首页
社区
课程
招聘
[原创]Apatch KPM内核模块从编译入门到环境对抗跑路(1)-入门知识
发表于: 2026-4-29 22:43 17619

[原创]Apatch KPM内核模块从编译入门到环境对抗跑路(1)-入门知识

2026-4-29 22:43
17619

ubuntu24.02

下载编译工具

然后是在这下载GNU tools ,建议使用aarch64-none-elf,我之前使用linux自带的aarch64-linux-gnu编译出来无法正常使用。2bbK9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6V1k6i4k6W2L8r3!0H3k6i4u0Q4x3X3g2S2M7X3#2Q4x3X3g2U0L8$3#2Q4x3V1k6V1L8%4N6F1L8r3!0S2k6s2y4Q4x3V1k6Q4x3X3c8Q4x3V1k6S2M7X3#2Q4x3X3c8Y4L8Y4g2Q4x3X3c8@1L8$3!0D9j5$3S2S2K9h3&6Q4x3X3c8V1L8%4N6F1L8r3!0S2k6s2y4Q4x3V1j5I4x3g2)9J5k6o6u0Q4x3X3b7J5x3o6t1J5i4K6u0V1x3o6t1`.

实测这个地址下载的非常慢,建议直接复制链接用迅雷

下载示例编译

下载工程,切换到示例hello工程

安装hello.kpm

adb push hello.kpm /storage/emulated/0/Download



理解KPM模块的基本信息

hello模块作为最简单的KPM示例,其中包含了KPM模块的基本框架内容。

该内容会显示在安装界面上

init 加载触发


exit 卸载触发


control0 在界面上输入参数时候触发






获取了输入参数,并且调用compat_copy_to_user显示到用户

关于这两部分,原文档说的特别清楚。我直接放给AI总结一下

5d8K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6T1L8h3q4^5x3e0t1I4i4K6u0r3d9$3g2J5L8X3g2D9f1r3q4@1j5$3S2Q4x3V1k6T1L8r3!0T1i4K6u0r3L8h3q4A6L8W2)9J5c8X3c8G2j5#2)9J5c8Y4A6Z5i4K6u0V1b7@1&6Q4x3V1k6A6L8X3I4A6L8X3g2Q4x3X3c8Z5L8$3!0C8i4K6u0W2L8h3b7`.
788K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6T1L8h3q4^5x3e0t1I4i4K6u0r3d9$3g2J5L8X3g2D9f1r3q4@1j5$3S2Q4x3V1k6T1L8r3!0T1i4K6u0r3L8h3q4A6L8W2)9J5c8X3c8G2j5#2)9J5c8Y4A6Z5i4K6u0V1b7@1&6Q4x3V1k6K6P5i4y4U0j5h3I4D9i4K6u0V1K9r3!0G2K9#2)9J5k6h3#2V1

在反调试检测和环境伪装这一块,kpm能做到更底层的对抗。

抛砖引玉,我这里实战对抗一下libmsaoaidsec.so这个模块的frida检测。不用frida脚本的反检测代码而是通过kpm模块隐藏frida信息。


代码整理中,先发试试能不能通过检测

APatch部署及KPM实现InlineHook及SyscallHook技术
APatch部署及KPM实现InlineHook及SyscallHook技术-先知社区

官方教程
KernelPatch Modules(KPM) 使用指南 | APatch Docs
KernelPatch/doc/zh-CN at main · bmax121/KernelPatch


传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2026-5-4 17:32 被小黄鸭爱学习编辑 ,原因:
收藏
免费 17
支持
分享
最新回复 (1)
雪    币: 104
活跃值: (8567)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
tql
2026-5-1 14:44
0
游客
登录 | 注册 方可回帖
返回