JEB Decompiler中文网站 > 使用教程 > JEB Decomplier扩展介绍
JEB Decomplier扩展介绍
发布时间:2024/09/29 18:19:12

JEB Decompiler是一款功能强大的反编译工具,专为代码分析和逆向工程提供了一套完整的解决方案。它不仅支持Android应用程序的反编译,还能够处理x86和x86-64程序及恶意软件的逆向工程。JEB通过增强的反汇编功能,包括动态调用点解析、寄存器候选值确定以及动态交叉引用等,帮助用户更深入地理解代码。下面给大家介绍一下JEB Decomplier扩展的相关内容。

 

JEB 提供了丰富的 API,可用于开发:

 

脚本

 

  • Python 脚本可用于自动执行简单任务
  •  
  • 在 UI 客户端中运行时,脚本可以与 GUI 元素进行交互
  •  

插件(又名后端扩展):

 

  • 处理器插件,如反汇编器、文件解析器等。
  •  
  • 引擎插件,例如第二遍代码分析器,处理其他插件或助手产生的结果
  •  
  • 反编译器插件,例如dexdecgendec的 IR 优化器插件
  •  
  • 其他插件类型包括代码分析扩展(用于定制本机代码分析)、贡献(用于信息覆盖)、解释器(命令行处理器)等。
  •  

前端客户端,例如:

 

  • 官方UI客户端
  •  
  • 自动化管道的无头客户端
  •  
  • 1、功能
  •  

只有专业许可证才提供完整的 API 访问权限。但是,所有许可证都允许在 UI 客户端内执行脚本和插件:

许可证类型UI 客户端其他客户端(例如命令行)
非专业UI 脚本
专业版UI 脚本 + 插件脚本+插件

2、高级架构

 

掌握 JEB 中各个部分如何组合在一起的高级概念将使您成为更高效的扩展开发人员。

 

在最高层次上,JEB 分为后端和前端组件:

 

  • 后端组件负责处理输入工件。它们为本机和第三方插件(包括文件解析器等处理器插件)提供执行环境。
  •  
  • 前端组件负责处理输入的命令并呈现后端结果。可以使用后端暴露的API来创建各种前端。

 

下图展示了后端和前端组件之间的关系:

根据许可证类型,用户可能能够开发第三方插件并指示后端加载它们。这使高级用户能够制作满足其特定需求的输入处理器(例如,用于特殊或虚拟 CPU 的反汇编程序)。

 

您可以通过使用-c --license命令行标志启动 JEB 来验证您的 API 使用能力。

 

3、应用程序编程接口

 

客户端和扩展(插件、脚本)使用 JEB API。

 

API 参考文档可在您的 JEB 软件包(文件)中在线或离线获取doc/apidoc.zip

 

4、脚本与插件

 

脚本...

 

  • 实施IScript
  •  
  • 被用户调用来完成小任务
  •  
    • 例如:修改一些代码、导航到某个地方、显示一些信息等等。
    •  
  • 必须用 Python 编写(它们在 Jython VM 中运行)
  •  
    • 非常适合快速开发和原型设计
    •  
  • 由 JEB 按需执行
  •  
    • 在 GUI 客户端中,可以通过文件菜单执行
    •  

插件...

 

  • 实现一个专门的子类型IPlugin
  •  
  • 可以执行各种任务,从输入处理、反汇编、反编译、向其他插件添加功能、事件触发的操作等。
  •  
  • 可以编译为 jar;某些插件类型可以写为脚本(Java 或 Python)
  •  
  • 5、执行脚本
  •  

所有版本的 JEB 都可以在 UI 客户端内执行客户端脚本。

 

脚本应放在您的目录中(或客户端选项scripts/中指定的任何其他目录中)。使用文件、脚本、脚本选择器...菜单命令来执行、编辑或创建脚本。.ScriptsFolder

  • 客户端脚本用 Python 编写,并在 2.7 Jython VM(Python VM 的 Java 实现)中执行与任何扩展一样,脚本也使用 JEB API。
  •  
  • 在 UI 客户端内执行的客户端脚本也可以访问位于包中的UI-API。UIcom.pnfsoftware.jeb.client.ui -API 的类允许对视图、片段、项目等进行图形操作。(此 API 可由客户端选择实现;桌面客户端实现它。)
  •  

您将在我们的公共 GitHub 存储库中找到大量示例脚本。

 

6、执行引擎插件

 

引擎插件位于 JEB 后端的引擎上下文中。它们可以连续执行代码、由事件驱动,甚至可以由用户明确调用。

 

所有第三方插件必须放在您的目录中(或后端选项coreplugins/中指定的任何其他目录)。使用文件、引擎、执行...菜单命令来执行引擎插件。.PluginsFolder

 

运行File、Engines、Plugins命令即可查看 JEB 实例上下文中加载的引擎插件的完整列表。您可以双击某个插件来执行它。


 

以上就是JEB Decomplier扩展介绍的相关内容。JEB不仅适用于Android应用的静态分析,还可以用于调试Dalvik代码和所有本机代码,如Intel和ARM代码。它还支持反混淆和重构分析,以消除由应用程序保护器生成的模糊代码,并重建资源和模糊XML文件。

 

 

 

 

读者也访问过这里:
135 2431 0251