【问题标题】:inserting file as user input in radare2 (VS shell & VS gdb) (linux)在radare2(VS shell和VS gdb)(linux)中插入文件作为用户输入
【发布时间】:2019-07-17 19:35:00
【问题描述】:

我有一个文件,我想在 C 程序中用作用户输入,该文件通过 scanf 请求用户输入(在 linux 中播放和学习

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

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

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

【问题讨论】:

    标签: shell debugging gdb radare2


    【解决方案1】:

    要在调试时向程序输入输入,请按照以下说明操作:

    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

    【讨论】:

      猜你喜欢
      • 2016-08-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-14
      • 1970-01-01
      • 2017-06-23
      • 1970-01-01
      相关资源
      最近更新 更多