在安全测试过程中,拿到目标,第一件事就是看它开了哪些端口。但 nmap 扫全端口有多慢,谁扫谁知道。一台机器几千秒起步,内网一个 C 段下去,你可以先泡杯茶、刷两条短视频、再不回来看看扫完没。
于是就有了今天的主角——RustScan。
关于
RustScan是用 Rust 重写的极速端口扫描器,专门负责"快速找端口",然后把结果自动丢给 nmap 做深度探测。它不是要取代 nmap,而是给 nmap 装了个火箭推进器。两者相辅相成,既有速度,又有效果。

开箱即用
话不多说,直接看我 Kali 上的真实测试。
命令:
rustscan -a 192.168.50.48
扫完全部端口,用时1.86s

原理分析
很多人以为 RustScan 只是"并发开得猛",其实核心设计是两阶段模式:
第一阶段(RustScan 负责): 用极高的并发(默认 batch size 4500,也就是同时开 4500 个 socket)快速遍历端口范围,只判断"开/关",不做任何服务识别。
第二阶段(nmap 负责): 把第一阶段找到的开放端口,自动作为参数传给 nmap,由 nmap 来做服务版本识别、脚本扫描(-sV / -sC)等精细活儿。

安装
在Kali中,直接执行下面命令便可安装。
sudo apt install rustscan -y装完验证:
rustscan --version
参数指南

建议收藏图片
实战指北
01全端口速扫 + 自动版本探测
一条命令搞定"找端口 + 认服务":
rustscan -a 192.168.50.48 -- -sV -sC -O-- 后面的所有内容,会原封不动传给 nmap。真实输出:


用时28s如果,我们用nmap扫描,用时为161s

注意: 建议加--ulimit 5000参数,否则默认 ulimit 太低会漏报端口,还疯狂警告。
02 内网 C 段批量摸底
rustscan -a 192.168.50.0/24 --ulimit 5000 --top -g | tee lan_ports.txt结果存文件,方便后续处理。254 台机器的 TOP1000 端口,几分钟内出结果。
03 快速开始
如果,你觉得命令太繁琐,只需记一条即可。
rustscan -a 192.168.50.48
总结
RustScan 解决的是渗透流程里最烦人、最耗时的那一步。它用 Rust 的并发能力把这一步从几分钟压到几秒,然后再把精细活儿交回给老大哥 nmap。节约了大量的时间,是工作和学习中必不可少的一款工具,快去试试吧!
更多精彩文章 欢迎关注我们
本文首发于微信公众号,原文链接:1.86 秒扫完 65535 个端口!给 Nmap 提个速