hxrsh3110/Reconnaissance-Tool

GitHub: hxrsh3110/Reconnaissance-Tool

一款基于 Node.js 构建的异步、容器化 TCP 端口扫描器,通过并发控制与最小权限容器化设计,为安全审计提供轻量的网络侦察能力。

Stars: 0 | Forks: 0

# 容器化网络侦察工具 一款使用 Node.js 构建的异步、容器化 TCP 网络端口扫描器。 ### 🔍 这个工具的作用是什么?(高层级概述) 把互联网上的服务器想象成一栋拥有 65,535 扇门(端口)的巨大办公大楼。 有些门需要敞开,以便公众进入(例如用于网站的 Port 80)。其他门则应该严格上锁(例如用于管理后端访问的 Port 22)。 这款工具是一位专业的安全审计员。它会迅速绕着大楼外围走动,检查每一扇门,看看它们是敞开、关闭还是忽略请求。安全团队利用这些数据(攻击面管理,Attack Surface Management)在恶意行为者之前找到暴露的入口点。 ## 🏗️ 架构与工程 虽然已经有像 Nmap 这样的工具,但这个项目是从零开始构建的,旨在展示对网络协议、异步编程和容器安全的深刻理解。 * **异步并发:** 实现了基于 Promise 的批处理引擎。该引擎不会向网络泛洪发送数千个并发请求(这会导致本地操作系统文件描述符耗尽或 NAT 崩溃),而是将连接限制为每次 **100 个并发 socket**。 * **智能默认设置:** 动态解析命令行参数。接受特定的端口列表、范围,或者在没有提供参数时自动默认扫描前 1000 个端口。 * **优雅的超时管理:** 配置了严格的 2000ms 超时,以静默方式丢弃被过滤或无响应的端口,而不会阻塞执行线程。 * **强化的容器化:** 打包在多阶段 `node:20-alpine` Docker 镜像中(将攻击面减少到约 50MB)。通过放弃 root 访问权限并使用受限制的 `appuser` 执行,强制执行最小权限原则。 ## ⚙️ 前置条件 * 已安装并正在运行 [Docker](https://docs.docker.com/get-docker/)。 ## 🚀 安装与构建 克隆仓库并构建最小化的 Docker 镜像: ``` git clone [https://github.com/yourusername/reconnaissance-tool.git](https://github.com/yourusername/reconnaissance-tool.git) cd reconnaissance-tool docker build -t net-scanner . ``` ## 🛠️ 用法 该工具通过 Docker 直接执行。建议使用 --rm 标志,以便在执行后立即移除容器痕迹。 1. 默认扫描(扫描前 1000 个端口) ``` docker run --rm net-scanner example.com ``` 2. 定向端口列表 ``` docker run --rm net-scanner google.com 80,443,8080 ``` 3. 特定端口范围 ``` docker run --rm net-scanner scanme.nmap.org 75-85 ``` ## 🔒 安全与操作注意事项 权限:此工具会生成实时的 TCP 流量。仅扫描您拥有明确审计授权的目标(例如,您自己的基础设施、本地网络或指定的测试目标,如 scanme.nmap.org)。 资源限制:批处理引擎可防止本地拒绝服务,但在受限的企业网络上进行激进的扫描仍可能触发入侵检测系统(Intrusion Detection Systems,IDS)。
标签:Docker, GNU通用公共许可证, MITM代理, Node.js, 安全防御评估, 插件系统, 数据统计, 端口扫描, 自定义脚本, 请求拦截