hxrsh3110/Cloud-Deployed-Threat-Intelligence-Sensor

GitHub: hxrsh3110/Cloud-Deployed-Threat-Intelligence-Sensor

一个基于Node.js和Docker的轻量级SSH蜜罐,部署于AWS云端,通过模拟SSH服务捕获并记录未授权访问的攻击者IP,生成可分析的威胁情报日志。

Stars: 0 | Forks: 0

# 架构概述 本项目采用了一种轻量级的容器化方法,利用模拟的 SSH 服务来捕获未经授权的访问尝试。 ## 云基础设施 托管在运行 Ubuntu 24.04 LTS 的 AWS EC2 t2.micro 实例上。安全组配置为将管理 SSH(端口 22)严格限制为专用 IP 地址,同时保持 honeypot 监听器(端口 2222)对公共 Internet 开放。 ## 容器化 该环境使用 Docker 进行隔离。它基于最小化的 node:alpine 镜像构建,并以分离模式运行,安全地将主机暴露的 2222 端口映射到容器中。 ## 应用逻辑 自定义的 Node.js TCP server 充当陷阱。当自动化扫描器或攻击者连接到端口 2222 时,应用程序会捕获其 IP 地址,并将其连同时间戳追加到本地的 threat-logs.txt 文件中。随后,它会提供虚假的 Ubuntu 登录横幅以拖延攻击者,并在两秒后终止连接,以节省服务器内存和资源。 ## 数据提取 直接从容器日志或生成的文本文件中提取威胁情报,使管理员能够解析、排序并识别出最频繁的恶意 IP 地址。 ## 部署 Runbook ### 阶段 1:AWS 基础设施配置 1. 登录 AWS 控制台 -> EC2 -> 启动实例。 2. 操作系统:Ubuntu 24.04 LTS。 3. 实例类型:t2.micro。 4. 密钥对:选择现有的 xyz-server-key。(如果密钥对不存在,请点击创建新密钥对) 5. 网络 / 安全组: 规则 1:SSH | 端口 22 | 源:我的 IP(管理员访问权限)。 规则 2:自定义 TCP | 端口 2222 | 源:任何位置 - 0.0.0.0/0(Honeypot 陷阱)。 6. 点击启动。复制新的公共 IPv4 地址。 ### 阶段 2:边界访问 1. 打开本地 Ubuntu WSL 终端。 2. 确保私钥具有严格的权限(每台机器只需执行一次): chmod 400 ~/.ssh/xyz-server-key.pem 3. 建立安全隧道: ssh -i ~/.ssh/xyz-server-key.pem ubuntu@ ### 阶段 3:服务器准备与部署 1. 更新包管理器并安装依赖项: sudo apt update && sudo apt install docker.io git -y 2. 将代码库拉取到云端: git clone cd cloud-honeypot 3. 构建容器镜像: sudo docker build -t threat-honeypot . 4. 执行陷阱(分离模式 + 端口映射): sudo docker run -d --name live-trap -p 2222:2222 threat-honeypot ### 阶段 4:威胁验证与提取 1. 验证容器是否正在运行并监听: sudo docker logs live-trap 2. 从容器中提取并解析攻击者 IP 数据: sudo docker exec live-trap cat threat-logs.txt | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b" | sort | uniq -c | sort -nr
标签:AWS, Docker, DPI, GNU通用公共许可证, MITM代理, Node.js, SSH, 威胁情报, 安全防御评估, 开发者工具, 自定义脚本, 蜜罐, 证书利用, 请求拦截