在 Ghidra 中逆向工程 aarch64 精灵

逆向工程 吉德拉 aarch64
2021-06-15 04:58:30

我正在尝试对 aarch64 二进制文件进行逆向工程以从中找到密码。我能够修改 Ghidra 中的某些功能,但被附加的代码片段卡住了。图中标记的区域给我理解代码的算法带来了一些麻烦。

  1. 有太多未定义的变量。我不知道他们的数据类型。但由于 param_1 是一个字符数组,我假设 local_58 也将是一个大小为 40 的字符数组(来自 memcpy 函数调用)。因此,local_30 也将是一个大小为 40 的字符数组(来自 memcpy 函数调用)。我就在这里吗?

  2. 我假设第二个标记的片段正在告诉 local_30 的值。如果我是正确的 local_30 的值为 00001100 00000111 10101010 10011000 11100011。如果我错了,请在这里纠正我。

  3. FUN_00400c3 正在使用 local_58 并进行一些操作。与 local_58 一起,FUN 函数还将一个整数和一个 unsigned long long int 作为第二个和第三个参数。第三个参数有一个非常大的值。所以,我不确定 ghidra 给出的是正确的值还是垃圾值。

Ghidra 反编译输出

0个回答
没有发现任何回复~