DetectFrida:Android 平台上的 Frida 检测工具

DetectFrida:Android 平台上的 Frida 检测工具

DetectFrida 是一个开源项目,旨在为 Android 应用提供一种检测 Frida 动态调试工具的方法。该项目主要使用 C、CMake 和 Java 编程语言。

项目核心功能

该项目包含以下核心功能:

  • 命名管道检测:通过检测 Frida 使用的命名管道来判断是否被动态调试。
  • 特定线程检测:通过检测 Frida 特定的线程来识别调试行为。
  • 内存与磁盘文本段比较:比较内存中的文本段与磁盘上的文本段,以识别 libc 和原生库是否被修改。

此外,项目还提供了以下三种加固原生代码的机制:

  • 替换 libc 调用为系统调用:增强安全性,减少被篡改的风险。
  • 字符串内存操作自定义实现:避免使用通用函数,降低被检测到的概率。
  • 应用 O-LLVM 原生混淆:通过混淆技术提高代码的安全性。

项目最近更新的功能

项目最近的更新包括以下内容:

  • 函数对齐调整:优化了函数对齐,以避免在目标 API 29 上的应用崩溃。
  • 可读性检查:在扫描可执行段之前,增加了可读性检查,以避免应用崩溃。
  • 注释部分清理:清理了原生库中的注释部分,以防止 APKId 检测到混淆。
  • 目标 API 更新:将目标 API 更新到 30。
  • Obfuscator-LLVM 更新:更新了 Obfuscator-LLVM 到 OLLVM-TLL 版本。
  • 修复误报:修复了在 Android 10 和 Android 11 上的误报问题,确保了 memdisk 比较方法能够正确检测。
  • Frida 无关的 memdisk 比较:改进了 memdisk 比较方法,使其不依赖于 Frida 特定的签名,避免了 Frida 签名变化导致的绕过检测的问题。

DetectFrida 通过这些更新,进一步增强了其检测和防护能力,为 Android 应用提供了更加安全的运行环境。

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值