前言
花了有些时间写这个 hookzz 框架. 白话文说下, 单指令的 hook, 无惧短函数和不定参数函数, 可以 hook 指令地址(指令片段), 可以 RuntimeCodePatch, 还有很多其他玩法. Move to HookZz
下面直接复制粘贴 README.md 了.
HookZzModules 是基于 HookZz 搞得一些模块. 可以在更方便的在 反调试 / hook_objc_msgSend / hook_MGCopyAnswer 做一些工作.
如果希望了解原理请 Move to HookFrameworkDesign
What is HookZz ?
a cute hook framwork.
still developing, for arm64/IOS now!
ref to: frida-gum and minhook and substrate.
special thanks to frida-gum's perfect code and modular architecture, frida is aircraft carrier, HookZz is boat.
Features
HookZz-Modules help you to hook.
the power to access registers directly
hook function with replace_call
hook function with pre_call and post_call
hook address(a piece of code) with pre_call and half_call
(almost)only one instruction to hook(i.e.hook short funciton, even only one instruction)
runtime code patch, without codesign limit
it's cute
Getting Started
Move to HookZz Getting Started
How it works ?
Move to HookFrameworkDesign.md
Docs
Move to HookZz docs
Example
Move to HookZz example
Modules
Move to HookZzModules
Quick Example No.1
Read It Carefully!
#include "hookzz.h"
#include <string.h>
#include <stdarg.h>
#include <stdio.h>
int (*orig_printf)(const char * restrict format, ...);
int fake_printf(const char * restrict format, ...) {
puts(