问题标签 [ghidra]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
151 浏览

assembly - 修补时 ghidra 中的新指令

我正在尝试用 ghidra 修补二进制文件。虽然我可以用新指令替换现有指令,但我看不到将新指令添加到同一个函数的选项。我怎样才能做到这一点?我错过了什么?

0 投票
1 回答
218 浏览

ghidra - 查找局部变量的所有用途(ghidra 脚本)

有没有办法为给定的局部变量获取给定函数中的所有 PcodeOps?到目前为止,我可以找到给定函数和名称的 HighSymbol,但是我想获取该变量的所有用途?

0 投票
1 回答
1084 浏览

android - frida hook 原生非导出函数

我正在反转这个 android 应用程序以用于学习目的,并且该应用程序在本机层上实现了所有有趣的功能,因此我在 arm android studio 映像上运行该应用程序并反转了共享库。所以该应用程序正在使用 ghidra 进行调用我设法将共享对象反编译成c,我发现了很多相互调用的函数,我还发现了尊重jni命名约定的函数

我可以成功地挂接上述任何导出,但是当我尝试挂接以下函数时,我得到一个导出未找到我如何挂接这些本机函数?

0 投票
0 回答
31 浏览

ipad - Ghidra 在任何事情上;可能吗?

由于 ghidra 需要 jvm 和/或 jre 和终端,是否可以在 ipad 上使用 ghidra 以及如何使用?谢谢

0 投票
0 回答
270 浏览

function - Ghidra 找不到功能

我是逆向工程的新手,我使用 Ghidra 和 IDA Pro。但由于反编译器,我尝试更多地使用 Ghidra。

但是现在我真的不知道该怎么做,因为当我在 Ghidra 中打开 exe 文件时,Ghidra 不希望我显示这些功能。另一方面,IDA Pro 显示了 exe 文件的每个功能。

这是两个程序的图像:

Ghrida 没有显示任何功能(现有的 2 个功能几乎是空的)

IDA Pro 展示功能

我尝试学习逆向工程,所以请不要说“只要 IDA 与它一起工作就使用它”。Ghidra 是目前对我来说更加用户友好的程序,所以我真的想让它在 Ghidra 中工作。

有人能帮我吗?对不起我的英语不好,我不是本地人。

0 投票
1 回答
616 浏览

android - 使用 frida 绕过 Flutter 应用的 Sslpinning 中的空地址

我正在通过使用这种方法和这种方法在 genymotion x86 上测试一个颤振的 android 应用程序以绕过 sslpinning ,但是我的函数地址在运行 Frida 时返回 null。

首先,通过Ghidra找到了函数的地址,即 (0x773c52),这里是该函数早期行的字节: (\x55\x41\x57\x41\x56\x41\x55\x41\x54\x53\ x48\x81\xec\xf8\x00\x00\x00\xc6) 然后通过binwalk找到地址的正确偏移量:

接下来我在 Frida 代码中使用了这个地址,如下所示:

最后,当我运行 Frida 脚本时,我遇到了空地址异常。

TypeError:无法在(frida/runtime/core.js:45)的应用(本机)处的disablePinning(/hook_ssl.js:20)处读取null的属性“添加”

frida中的空地址错误

我还尝试了许多不同版本的 Frida。有人知道为什么会这样吗?

提前致谢。

0 投票
1 回答
97 浏览

c - Ghidra 索引 C 四字

有这个 Ghidra 反编译的 C 代码。

我知道 local_60 是一个四字,但我不明白索引它

local_60._3_1_这里指的是什么?

0 投票
0 回答
72 浏览

gcc - 如何修复 ghidra 以在 Windows 10 上打开 PE 文件?

我是 Ghidra 和逆向工程的新手,我浏览了 ghidra 的教程,但是每次我尝试加载 exe 文件时,都会出现错误,并且文件以原始二进制而不是 PE 文件格式加载。exe文件是在Windows 10上使用gcc编译器编译的,它是ac文件。这是问题的截图 在此处输入图像描述

0 投票
1 回答
204 浏览

encryption - 使用 Ghidra 和 FindCrypt 在二进制文件中查找 AES 密钥

我想了解更多关于 RE 的信息。

我在 STM32F107 上编写了一个简单的程序,它只使用 AES128-ECB 加密和解密文本。

这是 C 代码(到目前为止,我故意省略了密钥):

现在我想在我的二进制文件中找到 16 字节的私钥。

当我在十六进制编辑器中打开二进制文件并搜索我的密钥时,我会连续找到所有 16 个字节。

我在 Ghidra 中加载了二进制文件,之前安装了FindCrypt,现在运行分析。

FindCrypt 现在找到 AES_Decrytion_SBox_Inverse 和 AES_Ecryption_SBox。

但两者都不是我的 AES 密钥,而是 SBox。之后情况如何?在所有教程中,我发现它看起来很简单,因为函数查找器可以找到 AES 函数 - 但由于项目是裸机,这可能无法正常工作。

我认为 FindCrypt 寻找某种可能导致密钥的十六进制模式......

附上了二进制文件。字节序很小,架构是 ARM Cortex(我认为?!)

Ghidra FindCrypt 分析

0 投票
1 回答
107 浏览

plugins - 从 Ghidra java 插件打印到 Ghidra 控制台

在 ghidra 脚本中,您只需 println("to the console");

但是我需要从 ghidra 插件(真正的 jar 插件,而不是脚本)打印到 ghidra 控制台。

我发现我可以通过以下方式获取 ConsoleService 的实例:

我的插件如下所示:

如何获取 PluginTool 的实例以便获取 ConsoleService?