<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>JNI - 标签 - 逆向工程 Cookbook</title><link>https://overkazaf.github.io/reverse_engineering/tags/jni/</link><description>Android 与 Web 逆向工程实战手册</description><generator>Hugo 0.147.7 &amp; FixIt v0.4.0-alpha.3-20251224074056-4fec1cda</generator><language>zh-CN</language><managingEditor>overkazaf@gmail.com (+5)</managingEditor><webMaster>overkazaf@gmail.com (+5)</webMaster><lastBuildDate>Mon, 22 Jul 2024 00:00:00 +0000</lastBuildDate><atom:link href="https://overkazaf.github.io/reverse_engineering/tags/jni/index.xml" rel="self" type="application/rss+xml"/><item><title>ARM 汇编入门 (Android Native)</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/arm_assembly/</link><pubDate>Mon, 22 Jul 2024 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/arm_assembly/</guid><description>&lt;h1 class="heading-element" id="arm-汇编入门-android-native">&lt;span>ARM 汇编入门 (Android Native)&lt;/span>
 &lt;a href="#arm-%e6%b1%87%e7%bc%96%e5%85%a5%e9%97%a8-android-native" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>当应用的核心逻辑、加密算法或性能密集型任务用 C/C++ 编写时，它们会被编译成原生库 (&lt;code>.so&lt;/code> 文件)。在 Android 上，这些库主要是 ARM 架构的。理解 ARM 汇编是分析 &lt;code>.so&lt;/code> 文件的基础。本指南将介绍逆向工程师需要了解的 ARMv7 (32-bit) 和 ARMv8 (64-bit/A64) 的基础知识。&lt;/p></description></item><item><title>Android 运行时 (ART) 深度解析</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/art_runtime/</link><pubDate>Tue, 07 May 2024 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/art_runtime/</guid><description>&lt;h1 class="heading-element" id="android-运行时-art-深度解析">&lt;span>Android 运行时 (ART) 深度解析&lt;/span>
 &lt;a href="#android-%e8%bf%90%e8%a1%8c%e6%97%b6-art-%e6%b7%b1%e5%ba%a6%e8%a7%a3%e6%9e%90" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>ART (Android Runtime) 是 Android 5.0 (Lollipop) 之后默认的应用程序运行时环境，取代了旧的 Dalvik 虚拟机 (DVM)。ART 的引入显著改变了 Android 应用的执行方式，旨在提高应用的性能、启动速度和电池续航。&lt;/p></description></item><item><title>Android .so 文件详解 (ELF Format)</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/so_elf_format/</link><pubDate>Fri, 05 Apr 2024 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/so_elf_format/</guid><description>&lt;h1 class="heading-element" id="android-so-文件详解-elf-format">&lt;span>Android .so 文件详解 (ELF Format)&lt;/span>
 &lt;a href="#android-so-%e6%96%87%e4%bb%b6%e8%af%a6%e8%a7%a3-elf-format" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>&lt;code>.so&lt;/code> 文件（Shared Object）是 Android 平台上的原生共享库，等同于 Windows 上的 &lt;code>.dll&lt;/code> 或 Linux 上的 &lt;code>.so&lt;/code>。它们包含了由 C/C++ 等原生代码编译而成的机器码。在 Android 逆向工程中，分析 &lt;code>.so&lt;/code> 文件是理解应用核心逻辑、破解加密算法和绕过安全机制的关键一步。&lt;/p></description></item><item><title>Android Studio 调试工具集</title><link>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/android_studio_debug_tools/</link><pubDate>Thu, 04 Apr 2024 00:00:00 +0000</pubDate><author>overkazaf@gmail.com (+5)</author><guid>https://overkazaf.github.io/reverse_engineering/android/04-reference/foundations/android_studio_debug_tools/</guid><description>&lt;h1 class="heading-element" id="android-studio-调试工具集">&lt;span>Android Studio 调试工具集&lt;/span>
 &lt;a href="#android-studio-%e8%b0%83%e8%af%95%e5%b7%a5%e5%85%b7%e9%9b%86" class="heading-mark">
 &lt;svg class="octicon octicon-link" viewBox="0 0 16 16" version="1.1" width="16" height="16" aria-hidden="true">&lt;path d="m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z">&lt;/path>&lt;/svg>
 &lt;/a>
&lt;/h1>&lt;p>Android Studio 不仅仅是一个代码编辑器，它还集成了一套强大、可视化的调试和分析工具，能够极大地提升开发和逆向分析的效率。熟悉这些工具是每个 Android 工程师的必备技能。&lt;/p></description></item></channel></rss>