radare2/man/rarun2.1
David Martínez Moreno cedef51ce4 Fix a round of typos and incorrect man macros.
The macro Em. was present in all the manpages and it's incorrect, plus
 there's some typos here and there, some of them spotted by lintian.
2013-12-31 23:52:46 -08:00

81 lines
2.1 KiB
Groff

.TH RARUN2 1
.SH NAME
rarun2 \- radare2 utility to run programs in exotic environments
.Dd Nov 11, 2013
.Sh SYNOPSIS
.Nm rarun2
.Op [script.rr2]
.Sh DESCRIPTION
This program is used as a launcher for running programs with different environment, arguments, permissions, directories and overridden default filedescriptors.
.Pp
The program just accepts a single argument which is the filename of the configuration file to run the program.
.Pp
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 :)
.Sh DIRECTIVES
.Pp
The rr2 (rarun2) configuration file accepts the following directives, described as key=value entries and comments defined as lines starting with '#'.
.Bl -tag -width Fl
.It Ar program
path to program to be executed
.It Ar stdout
select file to replace stdout file descriptor
.It Ar stdin
select file to read data from stdin
.It Ar input
set string to be passed to the program via stdin
.It Ar chdir
change directory before executing the program
.It Ar chroot
run the program in chroot. requires some previous setup
.It Ar preload
preload a library (not supported on Windows, only linux,osx,bsd)
.It Ar setuid
set process uid
.It Ar seteuid
set effective process uid
.It Ar setgid
set process group id
.It Ar setegid
set effective process group id
.It Ar setenv
set value for given environment variable
.It Ar arg[0-3]
set value for argument N passed to the program
.El
.Sh EXAMPLES
Sample rarun2 script
.Pp
$ cat foo.rr2
#!/usr/bin/rarun2
program=./pp400
arg0=10
stdin=foo.txt
chdir=/tmp
#chroot=.
./foo.rr2
.Pp
Connecting a program to a socket
.Pp
$ nc \-l 9999
$ rarun2 program=/bin/ls connect=localhost:9999
.Pp
Debugging a program redirecting io to another terminal
.Pp
## 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
.Sh SEE ALSO
.Pp
.Xr radare2(1) ,
.Xr rahash2(1) ,
.Xr rafind2(1) ,
.Xr rabin2(1) ,
.Xr radiff2(1) ,
.Xr ragg2(1) ,
.Xr rasm2(1) ,
.Sh AUTHORS
.Pp
Written by pancake <pancake@nopcode.org>