Skip to main content

kernel-system-hook

内核级 / 系统服务级 Hook 方法论(供安全研究/自有设备)。当标准 Java/Native Hook 被 App 检测或绕不过时,需要在更底层(system_server 系统服务、syscall/内核)拦截环境探测(root 检测、调试检测、frida 检测)。涵盖 KernelSU/APatch 内核模块、系统服务 Hook、syscall 拦截思路。

Informações da origem

Repositório
xiamiya/mHook
Última atividade na origem
6 de agosto de 2026 às 10:08
Idioma detectado do SKILL.md
chinês
Estrelas
95
Forks
23

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
kernel-system-hook
description
内核级 / 系统服务级 Hook 方法论(供安全研究/自有设备)。当标准 Java/Native Hook 被 App 检测或绕不过时,需要在更底层(system_server 系统服务、syscall/内核)拦截环境探测(root 检测、调试检测、frida 检测)。涵盖 KernelSU/APatch 内核模块、系统服务 Hook、syscall 拦截思路。
# 内核级 / 系统服务级 Hook 当 App 的环境探测(root/调试/frida/模拟器检测)在应用层拦不住时,往下沉到系统服务层或内核层拦截。 ## 一、先判断需要多底层 | 层级 | 手段 | 适合 | |---|---|---| | 应用层 | Xposed/LSPosed hook Java API | 普通 root 检测(Build 属性、su 路径) | | Native 层 | Frida/inline hook libc(`fopen`/`access`/`stat`) | 检测走 native 直接读文件 | | **系统服务层** | hook system_server 里的 PackageManager/ActivityManager | App 查其他包、查进程列表来反检测 | | **内核层** | KernelSU/APatch 内核模块、syscall hook | App 直接走 syscall 绕过 libc,或检测非常严 | ## 二、系统服务层 Hook(system_server) - LSPosed 可 hook system_server 进程(作用域勾选"系统框架")。 - 常 hook 点: - `PackageManagerService.getInstalledPackages/getPackageInfo` —— 隐藏 Magisk/Xposed 管理器等敏感包 - `ActivityManagerService.getRunningAppProcesses` —— 隐藏 frida-server/可疑进程 - `Settings.Global/Secure.getInt` —— 伪造 adb_enabled、development_settings_enabled - 注意:改系统服务影响全局,务必精确匹配调用方(只对目标 App 生效),否则可能引起系统不稳定。 ## 三、syscall / 内核层拦截 - **场景**:App 用内联汇编直接发 `svc` 系统调用(绕过 libc,Frida hook libc 就失效,见 svc-instruction-trace 技能)。 - **KernelSU / APatch**:提供内核态能力,可用 kprobe/kretprobe 挂钩 syscall 入口,或用其提供的 `susfs` 之类方案隐藏 root 痕迹。 - **思路**: 1. 确定 App 检测走哪个 syscall(openat 读 `/proc/self/maps`、`/proc/net/tcp` 查 frida 端口等) 2. 内核模块里 hook 对应 syscall,对目标进程返回伪造结果 3. 或用现成的隐藏框架(Shamiko/susfs/Zygisk 模块)先试,能解决就不用自己写内核模块 ## 四、实操建议 - 优先用**现成隐藏方案**(Shamiko + LSPosed 排除列表、Zygisk-based hide),能过大多数检测,成本最低。 - 现成的过不了再考虑自写内核模块(需要 KernelSU/APatch 环境 + 内核开发能力)。 - 每加一层 hook 都要验证:目标 App 是否还检测得到、系统是否稳定。 ## 边界 用于自有设备的安全研究、反检测机制学习、隐私保护、恶意软件的环境对抗分析。不协助攻击他人设备、绕过他人系统的安全控制去实施侵害。
Ver no GitHub