Skip to content

Releases: bytedance/bhook

ByteHook v1.0.2

03 Sep 10:41
v1.0.2
cb869ce
Compare
Choose a tag to compare

Bugs fixed

Fix a crash in manual mode

In manual mode, the caller needs to save the original function address in the hooked callback first, and then we can replace the address in the GOT. Otherwise, it may crash due to timing issues. So we added an additional callback (status code is BYTEHOOK_STATUS_CODE_ORIG_ADDR) to the manual mode to allow the caller to save the original function address.

Thanks to the contributors from iQiyi Video.

Fix a deadlock bug

If dlopen or dlclose in .init_array or .fini_array, a deadlock may occur between linker-mutex and dlclose-proxy-rwlock.

Thanks to the contributors from iQiyi Video and Toutiao.

Bugs 修复

修复手动模式的崩溃

在手动模式中,调用者首先需要在 hooked 回调中保存原函数地址,然后我们才能替换 GOT 中的地址。否则,可能由于时序问题引起崩溃。所以我们在手动模式中,额外增加了一次回调(状态码是 BYTEHOOK_STATUS_CODE_ORIG_ADDR),用于让调用者保存原函数地址。

感谢来自爱奇艺视频的贡献者。

修复一个死锁 bug

如果在 .init_array.fini_array 中存在 dlopendlclose,可能在 linker-mutexdlclose-proxy-rwlock 之间发生死锁。

感谢来自爱奇艺视频和今日头条的贡献者。

ByteHook v1.0.1

18 Aug 03:58
v1.0.1
575302b
Compare
Choose a tag to compare

Bugs fixed

  • Fix the bug in the CFI check bypass mechanism in arm64/x86_64. This bug will cause the CFI check bypass mechanism to fail after running for a period of time, and then cause a crash.
  • Add proguard.txt to AAR to keep all native methods.

Improve

  • Upgrade the NDK version to 23.0.7599858.

Bugs 修复

  • 修复 arm64 / x86_64 中 CFI check 绕过机制中的 bug。这个 bug 会导致 CFI check 绕过机制在运行一段时间后失效,然后导致崩溃。
  • 在 AAR 中增加 proguard.txt,用来 keep 所有的 native 方法。

改进

  • 升级 NDK 版本到 23.0.7599858。

ByteHook v1.0.0

11 Aug 06:10
v1.0.0
0dfe9a1
Compare
Choose a tag to compare

First version.

第一个版本。