Objection 快速逆向、自动分析和主动调用
前言:为什么需要 Objection 在 Android 逆向分析中,Frida 已经成为最强大的动态插桩工具。但实际使用时你会发现,许多操作是重复性的:查看 Activity 列表、搜索特定类名、hook 某个方法查看参数和返回值——每次都需要手写一段 JavaScript 脚本,然后通过 frida -U -f com.app -l hook.js 加载。这种模式虽然灵活,但在快速逆向...
前言:为什么需要 Objection 在 Android 逆向分析中,Frida 已经成为最强大的动态插桩工具。但实际使用时你会发现,许多操作是重复性的:查看 Activity 列表、搜索特定类名、hook 某个方法查看参数和返回值——每次都需要手写一段 JavaScript 脚本,然后通过 frida -U -f com.app -l hook.js 加载。这种模式虽然灵活,但在快速逆向...
Objection 简介 Objection 是由安全研究团队 SensePost 开发的一款基于 Frida 的运行时探索工具包(Runtime Exploration Toolkit)。它将 Frida 的底层能力封装为一系列开箱即用的高级命令,让安全研究人员无需编写 JavaScript 脚本,即可快速对 Android 和 iOS 应用进行动态分析和安全评估。 如果说 Frida ...
前言 在上一篇文章中,我们深入学习了 Frida RPC 远程调用的概念和实战技巧。当你的逆向分析需要在 PC 端批量调用手机上的加密函数时,RPC 是最高效的方案。然而,当场景升级到"多人协作"或"远程机房"时,你需要将 Frida RPC 服务暴露到公网——这同时带来了便利和安全挑战。 本文将系统讲解如何安全地将 Frida RPC 开放到公网,...
LLVM 项目概述 LLVM是于2002年创建的一个模块化和可重用的编译器和工具链技术的集合。它能够编译UNIX的内核,并用于漏洞挖掘。LLVM包括了多个核心组件,其中关键的包括: 核心库(LLVM Core) - 优化器 负责将源码优化到LLVM的中间语言(Intermediate Representation, IR)。 Clang LLVM的前端编译器,将C/C++代码编译...
AndroidNativeEmu 调用 JNI 函数和模拟 Java 函数交互 AndroidNativeEmu 是一个基于 Unicorn 引擎的 Android Native 函数模拟执行框架,用 Python 编写。它提供了比原生 Unicorn 更高级的抽象,能够模拟 JNI 环境、加载 SO 文件、调用导出函数等。与 Unidbg(Java 实现)相比,AndroidNative...
Capstone、Unicorn、Keystone 工具的介绍 在逆向工程和二进制分析领域,有三个基于同一技术体系的工具经常被配合使用:Capstone(反汇编引擎)、Unicorn(CPU 模拟器)和 Keystone(汇编引擎)。它们三者都基于 QEMU 的相关技术,分别覆盖了二进制分析中"反汇编→模拟执行→汇编"的完整链路。本文将详细介绍这三个工具的定位、功能和使...
Unicorn 工具的入门和实际使用 Unicorn 是一个开源的跨平台 CPU 模拟器框架,基于 QEMU 二进制翻译技术构建,支持 ARM、ARM64、x86、x64、MIPS、PowerPC、SPARC 等多种 CPU 架构。它是逆向工程、安全研究、恶意代码分析等领域中非常重要的工具之一。本文将从基础概念入手,详细介绍 Unicorn 的实际使用方法。 Unicorn 引擎架构 U...
Unicorn 模拟调用 SO 文件和 JNI 接口函数,包括 JNI_OnLoad 在 Android 逆向工程中,很多时候我们需要在不依赖真机的情况下分析 SO 文件中的算法逻辑。Unicorn 作为一个轻量级的 CPU 模拟器框架,提供了底层的指令模拟能力。本篇将介绍如何使用 Unicorn 引擎加载 SO 文件、模拟 ARM 环境、调用 JNI_OnLoad 以及处理 JNI 接口...