2016-09-14 28 views
1

我想用radare2調試程序「id3v2 -c hallo test.mp3」。 如何將參數「-c hallo test.mp3」傳遞給radare2?radare2:如何將參數傳遞給debugee?

我只發現了一些rarun2,但是當我做r2 -d rarun2 program=/usr/bin/id3v2 arg1=-c arg2=hallo arg3=test.mp3時,調試器在rarun2中,而不在id3v2中。

回答

2

您可以通過幾種方式將參數傳遞給radare2調試程序。

最簡單的方法是:

r2 -d program arg1 arg2 arg3 
  • R2是radare2的別名。
  • -d告訴radare2調試可執行文件。
  • arg1..3是由radare2傳遞給可執行文件的參數。

的另一種方法是使用ood命令radare2殼內:

執行radare2 ./program,然後鍵入ood arg1 arg2 arg3ood命令用於「以調試器模式重新打開(帶參數)」。

您還可以使用反引號通過動態參數調用ood。例如,我們希望用我們的系統上從一個文件中的內容調試我們的程序作爲參數:

ood `!cat file.txt` 

說file.txt的內容是「富巴」所以這相當於執行ood foo bar

  • 反引號用於傳遞radare2命令的輸出。
  • 正在系統(3)中運行給定的命令。

另一種方法來將參數傳遞給radare2調試的程序是通過使用rarun2輪廓文件:

$ r2 -R profile.rr2 -d program 
$ cat profile.rr2 
#!/usr/bin/rarun2 
arg1=foo 
arg2=bar 
  • -R [rarun2]指定rarun2輪廓加載。