在radee2(VS Shell和VS gdb)(Linux)中作为用户输入插入文件

时间:2019-02-24 03:51:47

标签: shell debugging gdb radare2

我有一个文件,希望在C程序中用作用户输入,要求通过scanf(在Linux中播放和学习)进行用户输入

让我们调用程序 a.ou t和内容为 myImput 的文件,从而:

  • 在shell中,我可以去:cat myInput | ./a.out
  • 在gdb中,我可以这样做:run < myInput一旦加载了gdb a.out

在radare2中有可能吗? 我看到了如何注入参数,但不能注入内容文件作为用户输入

1 个答案:

答案 0 :(得分:0)

要在调试时在程序中输入输入,请遵循以下说明:

  1. 创建文件profile.r22
  2. 写入此文件的内容:
#!/usr/bin/rarun2
program=./a.out
input=aaabbbccc

其中aaabbbccc是您要读取的文件的内容

  1. 告诉radare2使用此文件通过以下命令发送先前的输入:r2 -d ./a.out -e dbg.profile=profile.rr2
  2. 在radare2中键入dc以启动调试

您还可以在某些命令中更快地完成该操作:

{ echo -ne '#!/usr/bin/rarun2\nprogram=./a.out\ninput='; cat myInput; } > profile.rr2;
r2 -d ./a.out -e dbg.profile=profile.rr2

然后仍然启动命令dc