rippsec/netscan

GitHub: rippsec/netscan

一个纯 Bash 实现的 LOTL 网络扫描器,解决在受限环境中进行主机发现与端口探测的依赖缺失问题。

Stars: 0 | Forks: 0

# netscan 一个纯 Bash 编写的 LOTL(Living Off The Land)网络扫描器。不依赖 `nmap`、`masscan` 或任何外部依赖,仅使用任何最小 Linux 系统上可用的内置命令和标准 POSIX 工具。 适用于无法安装工具的环境:CTFT 跳板机、受限服务器、容器环境以及渗透后侦察。 ## 功能特性 - **主机发现** — 子网 ICMP Ping 扫描 - **网络端口扫描** — 扫描子网范围内所有活跃主机的开放端口 - **单主机端口扫描** — 针对单个 IP 的目标扫描 - **目标列表扫描** — 从文件读取 IP 并逐一扫描 - **服务识别** — 对常见端口进行基础 Banner 抓取 - **接口列表** — 显示本地网络接口 - **输出到文件** — 使用 `-o` 保存结果 - **IPv6 模式**(实验性) - 可配置并发数、超时时间和端口范围 - 优雅处理 `Ctrl+C` 中断 所有 TCP 探测均使用 `/dev/tcp` —— 无需 `nc`,仅在 Banner 抓取时依赖它。 ## 使用方法 ``` bash netscan.sh [MODE] [OPTIONS] ``` ### 模式 | 标志 | 模式 | 描述 | |---|---|---| | `-N` | 主机发现 | Ping 扫描以发现子网中的活跃主机 | | `-P` | 网络端口扫描 | 扫描子网范围内所有主机的端口 | | `-p` | 单主机端口扫描 | 对指定目标 IP 进行端口扫描 | | `-i` | 接口列表 | 显示本地网络接口 | ### 选项 | 标志 | 描述 | 默认值 | |---|---|---| | `-t ` | 目标 IP 或子网基地址(例如 `192.168.1.0`) | — | | `-T ` | 目标列表文件(每行一个 IP) | — | | `-r ` | 端口范围或列表 | `1-65535` | | `-R ` | 子网内主机范围 | `1-254` | | `-c ` | 并发任务数 | `50` | | `-w ` | 超时时间(秒) | `2` | | `-s` | 启用服务/Banner 识别 | 关闭 | | `-o ` | 输出到文件 | 标准输出 | | `-v` | 详细模式 | 关闭 | | `-q` | 静默模式(隐藏 Banner) | 关闭 | | `-6` | IPv6 模式(实验性) | 关闭 | ### 端口格式 ``` -r 80,443,8080 individual ports -r 1-1000 range -r 1-1000,8080,9000 mixed ``` ## 示例 ``` # 查找子网上的活跃主机 bash netscan.sh -N -t 192.168.1.0 # 扫描单个主机(常用端口) bash netscan.sh -p -t 192.168.1.1 -r 22,80,443,8080 # 扫描子网内所有主机,端口 1-10000,200 个线程 bash netscan.sh -P -t 192.168.1.0 -r 1-10000 -c 200 # 扫描指定主机范围并获取横幅信息 bash netscan.sh -P -t 192.168.1.0 -R 1-50 -r 22,80,443 -s # 从目标列表扫描并保存结果 bash netscan.sh -T targets.txt -p -r 1-1000 -o results.txt # 快速扫描,短超时 bash netscan.sh -p -t 10.10.10.5 -r 1-65535 -c 200 -w 1 ``` ## 工作原理 TCP 端口探测使用 Bash 内置的 `/dev/tcp` 伪设备: ``` timeout $t bash -c "echo >/dev/tcp/$host/$port" 2>/dev/null ``` 这可以在不依赖任何外部工具的情况下建立 TCP 连接。仅在已知服务端口(如 22、80、443 等)进行 Banner 抓取时,才会回退使用 `nc` 获取响应。 主机发现使用 `ping -c 1 -W $timeout`,并通过 `-c` 设置的并发数限制后台任务数量。
标签:Banner抓取, Bing搜索, Facebook API, ICMP Ping扫描, IPv6, Linux工具, Living Off The Land, POSIX, PowerShell, SEO: Bash network scanner, SEO: LOTL scanner, SEO: 无依赖端口扫描, TCP端口探测, Web截图, 云存储安全, 受限环境, 后渗透侦察, 容器安全, 并发控制, 应用安全, 接口列表, 数据统计, 无外部依赖, 服务器安全, 服务检测, 端口扫描, 端口探测, 纯Bash, 网络扫描, 超时配置, 输出到文件