问题标签 [radare2]

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 投票
1 回答
716 浏览

python - Python 2.7.6 r2pipe.open 无法加载二进制文件

我安装了 r2pipe,但它没有运行。我不明白。

0 投票
0 回答
539 浏览

python - 由于“错误:函数“void r_io_section_list_visual (...)”的参数过多,无法安装radare2-bindings

我正在尝试为 Python ( http://www.radare.org/r/down.html ) 安装radare2-bindings。

从 github 克隆项目并运行 ./configure --prefix=/usr 后,输出中的 python 范围内的一切似乎都正常(错误来自我不需要绑定的语言)。

但是,当我尝试在 python 文件夹上运行 make 时,我得到以下输出:

有谁知道如何解决这个问题?在这个安装过程中我已经遇到了很多问题,并且能够解决它们......但是这个问题现在真的让我陷入了困境。

0 投票
2 回答
1264 浏览

python - python - 无法使用radare2打开文件:无效选项-'0'

我已经使用 pip install 安装了radare2,然后在python shell中我给出了以下代码行

我已经交叉检查 /bin/ls 是否可用。为什么我会收到此错误?

0 投票
1 回答
6722 浏览

reverse-engineering - 从 Radare2 获取完整的二进制控制流图

我想使用radare2获取二进制(恶意软件)的完整控制流程图。
我从另一个关于 SO 的问题中关注了这篇文章。我想问是否ag有另一个命令可以提供整个二进制文件的控制流图,而不仅仅是一个函数的图。

0 投票
2 回答
1545 浏览

dockerfile - Dockerfile 构建错误:无法找到

我正在尝试构建以下 Radare2 dockerfile,但我认为我可能有一些格式错误。我似乎无法弄清楚如何正确安装和构建所有内容。任何帮助,将不胜感激。

尝试构建此 dockerfile 时出现以下错误:

0 投票
1 回答
140 浏览

reverse-engineering - radare2 补丁键盘输入

我正在使用radare2进行逆向工程实践。我想修补 vim 二进制文件(linux),以便当用户按下“i”时,它会被替换为“e”。

如何使用radare2在反汇编文件中找到从键盘读取的内容?

0 投票
1 回答
1572 浏览

bash - 如何正确安装和调用“r2snow”radare2 反编译器?

在过去的几个小时里,我一直在尝试安装反编译器,但没有成功。由于我最近一直在使用radare2作为反汇编器,我认为使用相关的反编译器包会很好用。在发现radecoradeco-lib目前还不够稳定,无法构建后,我使用他们的包管理器r2pm最终将r2snow BASH 脚本安装在~/.local/share/radare2/prefix/bin.

但现在我不知道如何运行它来反编译二进制文件!我收到的错误信息是:"Usage: r2 -i '.!r2snow'"。我知道这r2是 的简写radare2,并且-i标志是传递要运行的脚本文件,但是我尝试以多种方式将 r2snow BASH 脚本传递给它,但没有成功。

有使用此特定反编译器经验的人知道如何正确调用它吗?通常我可以自己解决这个问题,但事实证明缺乏适当的文档太难了。

我不骗你,每次你不正确地调用程序时,它都会嘲笑你。最近:"Usage: r2 -i '.!r2snow'" -- This should be documented, since it's not that obvious.也许我应该完全尝试不同的反编译器。有没有更容易设置的免费反编译器?

0 投票
0 回答
567 浏览

reverse-engineering - 为什么 'axt' 和 'aaa' 在 Radare 2 中不起作用?

这是我输入的所有内容:(我按照本教程进行操作:https ://crackmes.one/static/solution/5b51b18833c5d41c0b8ae543.zip )

0 投票
0 回答
72 浏览

assembly - 为什么 rasm2 为一条指令生成与原始二进制指令不同的代码?

我有一个 x86 二进制代码,我用radare2 打开它,并且(在可视模式下)我有以下说明:

Rabin2 给我有关二进制文件的信息:

如果我运行 rasm2 并尝试生成以下二进制代码je 0x401319;

它返回一个不同的二进制代码:

我不知道为什么会这样。

0 投票
1 回答
687 浏览

c++ - 如何从二进制中的给定符号获取调用者图

这个问题与我今天早些时候提出的一个问题有关:我想知道是否可以从给定函数(或符号名称,例如取自nm)生成调用者图,即使感兴趣的函数不是“我的" 源代码(例如位于库中,例如malloc()

例如,要知道在malloc名为我的程序中使用的位置,我foo首先会查找符号名称:

然后运行一个工具(它可能需要我的程序的特殊编译/链接版本或一些编译器工件):

这将生成一个(文本)调用者图,然后我可以进一步处理。

阅读这个问题我发现radare2似乎完成了几乎所有你能想象到的事情,但不知何故我还没有设法从给定的符号生成调用者图..

进步

使用radare2我已经设法dot从可执行文件生成调用者图,但仍然缺少一些东西。我正在编译以下 C++ 程序,我很确定它必须使用malloc()or new

我用静态库编译它,以确保我想分析的所有调用都可以在二进制文件中找到:

通过运行nm a.out | grep -E "_Znwm|_Znam|_Znwj|_Znaj|_ZdlPv|_ZdaPv|malloc|free"你可以看到很多用于内存分配的符号。

现在我radare2在可执行文件上运行:

使用一个小脚本(受此答案的启发),我正在从包含“sym.operatornew”的任何符号中寻找一个调用路径,但似乎没有!

有没有办法确保从/到在该二进制文件中调用的任何函数生成调用图所需的所有信息?

有没有更好的方法来运行radare2?看起来不同的调用图可视化类型提供了不同的信息 - 例如,ascii 艺术生成器确实提供了点生成器未提供的符号名称,而点生成器提供了有关调用的更多详细信息。