用 netcat 搭建 Linux 网络蜜罐:theProtector honeypot 模块捕捉扫描与横向移动全过程
【免费下载链接】theProtectorLinux Bash Script for the Paranoid Admin on a Budget - real-time monitoring and active threat response项目地址: https://gitcode.com/gh_mirrors/th/theProtector
theProtector 是一个面向 Linux 主机的安全监控框架(Bash 脚本实现),其 honeypot 蜜罐模块利用 netcat 与端口监听技术,自动捕获网络扫描、暴力破解和横向移动行为。本文带你从零理解 netcat 蜜罐原理,到完整部署 theProtector 的 honeypot 模块,看清攻击者"扫描 → 试探 → 横向移动"的全过程。
🔍 为什么蜜罐是低成本的最佳侦察手段
大多数主机安全监控只能"看到已发生的事",而蜜罐(Honeypot)的思路相反:故意暴露一个诱饵服务,谁碰谁暴露。
攻击者入侵通常遵循固定剧本:
- 端口扫描:nmap、masscan 批量探测 22、23、21、3389 等常见端口
- 协议试探:对疑似开放端口发起 SSH/FTP/HTTP 握手,判断服务指纹
- 横向移动:攻入一台机器后,对内网其他主机的同类端口重复上述动作
只要一台 Linux 主机上跑着一个"不存在的 SSH 服务",任何连接它的人都不是合法用户——100% 可告警,零误报。theProtector 的技术论文《tech paper for Protector》中将其列为核心检测层之一:网络蜜罐用于检测侦察行为与横向移动,配合 eBPF 内核监控、YARA 恶意软件扫描形成立体防线。
🧩 theProtector 的 honeypot 模块原理
项目包含两代蜜罐实现,原理一脉相承:
① 经典监听版(theprotector.sh)
默认在2222 / 8080 / 23 / 21 / 3389五个常见被攻击端口上挂监听器,每次命中就记录一条HONEYPOT_HIT并触发 HIGH 级告警。未授权运行时会自动跳过需要 root 的特权端口,端口冲突则自动跳过——非常"穷人管理员"式的稳健设计。
② 企业级仿真版(TheProtectorV4.sh)
这是精髓所在。V4 不再只是"记一笔",而是动态分配端口 + 协议仿真:
- HTTP 蜜罐回复伪造的 Apache 状态页,识别 webshell 上传、Range 头攻击
- SSH 蜜罐返回假 OpenSSH 版本横幅,捕获 SSH 探测
- FTP/Telnet/SMTP 蜜罐模拟登录流程,记录每次账号尝试
- 每 60 秒生成一份攻击者情报报告:Top10 攻击源 IP、协议分布、攻击类型统计
netcat 在其中扮演双重角色:安装检测时脚本会探测nc/netcat二进制(记录到扫描结果的has_netcat字段),并作为网络监听的基础能力。技术论文中给出的经典蜜罐命令正是:
timeout 30 nc -l -p "$port" -s 127.0.0.1🛠 netcat 蜜罐三步走:先手动体验一遍
理解原理最好的方式是亲手跑一次。netcat 是 Linux 上最轻量的网络监听工具,一条命令就是蜜罐:
# 1. 安装 netcat(Ubuntu/Debian) sudo apt install netcat-openbsd # 2. 在 2222 端口挂一个假 SSH 监听 nc -l -p 2222此时任何对你的IP:2222的连接都会直接打印在终端上——这就是原始蜜罐的全部魔法。再开一个终端模拟攻击者:
# 3. 模拟扫描者发起连接(本地自测) nc 127.0.0.1 2222两个终端同时"点亮"的瞬间,你就体验完了蜜罐的完整闭环:监听 → 命中 → 记录。theProtector 做的,就是把这件事自动化、多端口化、情报化。
📦 一键部署 theProtector honeypot 模块
第一步:获取项目
git clone https://gitcode.com/gh_mirrors/th/theProtector cd theProtector chmod +x theprotector.sh第二步:环境自检
sudo ./theprotector.sh testtest 模式会逐项报告 eBPF、YARA、netcat、python3 等依赖是否就绪,缺什么一目了然。
第三步:单独启动蜜罐模块
sudo ./theprotector.sh honeypot一条命令,五个诱饵端口全部上线。退出前会提示按 Ctrl+C,脚本随后自动清理所有监听进程与 PID 文件,不留残留。
第四步(可选):完整增强监控
sudo ./theprotector.sh enhancedhoneypot 会与 eBPF 监控、YARA 扫描、反逃逸检测一起运行,蜜罐命中会汇入统一告警系统。
⚙️ 关键配置项
在脚本同目录创建sentinel.conf,常用蜜罐参数:
ENABLE_HONEYPOTS=true:总开关HONEYPOT_PORTS=("2222" "8080" "23" "21" "3389"):自定义诱饵端口列表HONEYPOT_BINDADDR:监听地址,默认 127.0.0.1(本机环回)
💡想捕捉横向移动?把
HONEYPOT_BINDADDR改成你的内网网卡 IP,蜜罐即面向局域网开放——攻击者横向扫到你这台机器时,每个端口命中都是实锤。
📊 读懂蜜罐日志:从扫描到横向移动的证据链
蜜罐运行后,日志集中在/var/log/ghost-sentinel/(root 用户):
| 日志文件 | 内容 |
|---|---|
honeypot.log | 每次命中的时间戳、端口、来源地址 |
honeypot_attacks.jsonl | V4 版逐条攻击记录(协议、类型、数据样本) |
honeypot_intelligence.json | 攻击者情报报告(Top10 排行榜) |
latest_scan.json | 结构化扫描汇总,含has_netcat环境字段 |
实战判读套路:
- 🎯 同一 IP 在几分钟内命中多个端口 → 典型nmap/masscan 端口扫描,V4 版会直接标记
scanner_detection - 🔑 同一端口反复
USER/PASS登录尝试 →暴力破解,FTP/Telnet 蜜罐会记录完整凭证尝试 - 🕸️ 已知恶意 IP 连续命中 SSH、HTTP、FTP 三类仿真服务 → 攻击者在做服务测绘,下一步大概率是横向移动,建议立即封禁该 IP 并检查它已接触过的所有主机
想看实时活动,API 服务器还暴露了蜜罐专用端点:
curl http://127.0.0.1:8080/api/honeypot也可配合 TheProtectV4Dashboard.go 启动 Web 仪表盘,在浏览器里看蜜罐活动曲线。
⚠️ 部署前的三个安全须知
- 默认只绑本机:
127.0.0.1是最安全的起点,确认需要内网诱捕后再改HONEYPOT_BINDADDR - 只保护自己的机器:蜜罐是"自家门口的陷阱",在他人资产上部署可能涉及法律问题,请确认主机归属与合规要求
- 零真实业务风险:蜜罐端口上没有任何真实服务,被攻破也攻不坏任何东西——这正是蜜罐与真实服务最大的区别
✅ 小结
用一个 netcat 监听器你就理解了蜜罐的本质,而 theProtector 的 honeypot 模块把这份本质工程化:五个诱饵端口起步、动态端口分配、多协议仿真、攻击类型自动分类、Top10 攻击者情报报告。对于" Paranoid Admin on a Budget" 来说,这是投入产出比最高的防御之一——攻击者自己把行踪记录成了证据,从端口扫描到横向移动,全程留痕。
【免费下载链接】theProtectorLinux Bash Script for the Paranoid Admin on a Budget - real-time monitoring and active threat response项目地址: https://gitcode.com/gh_mirrors/th/theProtector
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考