rarun2(1) radare2 utility to run programs in exotic environments

SYNOPSIS

rarun2 [[script.rr2]]

DESCRIPTION

This program is used as a launcher for running programs with different environment, arguments, permissions, directories and overridden default filedescriptors.

The program just accepts a single argument which is the filename of the configuration file to run the program.

It is useful when you have to run a program using long arguments or pass long data to stdin or things like that usually required for exploiting crackmes :)

DIRECTIVES

The rr2 (rarun2) configuration file accepts the following directives, described as key=value entries and comments defined as lines starting with '#'.

program
path to program to be executed
stdout
select file to replace stdout file descriptor
stdin
select file to read data from stdin
input
set string to be passed to the program via stdin
chdir
change directory before executing the program
chroot
run the program in chroot. requires some previous setup
preload
preload a library (not supported on Windows, only linux,osx,bsd)
setuid
set process uid
seteuid
set effective process uid
setgid
set process group id
setegid
set effective process group id
setenv
set value for given environment variable
arg[0-3]
set value for argument N passed to the program

EXAMPLES

Sample rarun2 script


  $ cat foo.rr2
  #!/usr/bin/rarun2
  program=./pp400
  arg0=10
  stdin=foo.txt
  chdir=/tmp
  #chroot=.
  ./foo.rr2

Connecting a program to a socket


  $ nc -l 9999
  $ rarun2 program=/bin/ls connect=localhost:9999

Debugging a program redirecting io to another terminal


  ## open a new terminal and type 'tty' to get
  $ tty ; clear ; sleep 999999
  /dev/ttyS010
  ## in another terminal run r2
  $ r2 -d rarun2 program=/bin/ls stdio=/dev/ttys010

AUTHORS

Written by pancake <[email protected]>