
FScan 端口扫描中 9100 的来龙去脉默认行为、控制方法与风险指南【免费下载链接】fscan一款内网综合扫描工具方便一键自动化、全方位漏扫扫描。(An intranet comprehensive scanning tool, enabling one-click automated, all-round vulnerability scanning)项目地址: https://gitcode.com/GitHub_Trending/fs/fscan如果你用 FScan 做内网资产摸排大概率会盯着扫描结果里某个陌生端口发问为什么这台机器会冒出 9100它默认到底扫哪些端口我又该怎么只扫我想要的这篇指南直接从 FScan 的端口扫描源码出发把默认扫什么、9100 为什么敏感、如何精确控制范围讲清楚最后给出一套生产环境的应对做法。扫描前 FScan 默认会碰哪些端口先给结论当前版本的 FScan 默认不会扫描 9100。很多人记得旧版本会扫 9100这个印象没错。但在 common/config/constants.go 里端口组常量旁边有两条注释都写着同一句话9100 已移除该端口为打印机 RAW 端口发送数据会触发打印。也就是说9100 曾经被放进默认列表后来因为副作用被明确拿掉了。FScan 默认使用的是一份内置端口表MainPorts约 150 个覆盖常见内网资产基础服务21(FTP)、22(SSH)、80(HTTP)、443(HTTPS)、445(SMB)数据库3306(MySQL)、1433(MSSQL)、5432(PostgreSQL)、27017(MongoDB)、6379(Redis)远程与中间件3389(RDP)、8080、8443、8848、9300、9200(Elasticsearch)大数据/监控50070(Hadoop)、9092(Kafka)、10250、11211(Memcached)你可以这样理解FScan 默认扫描只覆盖内置端口组里的那批端口范围之外的端口它一个都不会碰。所以扫描报告里出现 9100多半不是默认行为扫出来的而是端口参数被手动扩大过后文会讲怎么避免。端口是怎么被试出来的FScan 判断一个端口开没开靠的是并发 TCP 连接它同时向大量IP端口发起连接能完成三次握手的就标记为 open超时或拒绝的视为未开放。并发就是同时开多个连接一起测用人海战术换速度这也是扫一个 C 段能在几十秒内跑完的原因。端口确认开放后接着做服务指纹识别——简单说就是给端口发一段特定数据看对方回什么从回包里认出门后是什么服务。具体逻辑在 common/config/constants.go 的DefaultPortMap里不同端口挂着不同的探测规则例如 80/8080 发 HTTP 请求、1433 发 MSSQL 握手包、6379 发 Redis 命令。指纹对了扫描结果里就会出现Redis:192.168.1.13:6379 unauthorized这样带服务名的输出而不是干巴巴一个端口号。这里有个关键推论只要端口在扫描列表里FScan 就可能向它发送对应探测数据。数据落到什么服务上、会触发什么后果取决于那个端口背后真实是什么——这正是 9100 的麻烦所在。如何精确控制 FScan 的扫描端口范围FScan 提供了三个参数来控制扫描范围都是最小改动就能生效的-p指定端口这是总开关默认值就是上面那份内置端口表。直接赋值即可覆盖默认行为例如-p 80,443表示只扫这两个端口支持范围写法如-p 1-1024扫全部低端口。端口组-p支持内置的快捷组名——webWeb 端口、db数据库、service常见服务、all1-65535 全端口。例如-p web直接展开成一整组 Web 服务端口。-ep排除端口在默认列表基础上减掉指定端口例如-ep 25,110把 SMTP 和 POP3 从扫描列表里剔除。组合思路很直接用-p把范围收窄到业务需要的部分再用-ep剔除敏感端口。例如-p 1-1024,8000-9000 -ep 9100这种写法就同时做到了范围可控和敏感端口不进列表。生产环境审计时怎么避开 9100 的坑️ 9100 的坑不在于它危险而在于它是打印机 RAW 打印端口打印机收到这个端口上的数据会直接送去打印。如果扫描器往里面灌入 HTTP 探测数据结果很可能是打印机吐出一张写满乱码的纸——轻则浪费纸张、重则暴露扫描行为。这就是 FScan 把它移出默认列表的原因。落到生产环境审计几条建议慎用-p all。全端口扫描任务量大还会把 9100 这类有副作用的端口重新拉进探测范围内网环境不建议。用-p白名单代替全量扫。明确列出要审计的端口段范围越小意外越少。9100 必排除。目标环境里有打印机、共享打印服务时-ep 9100一定要加上如果 9100 出现在资产里先确认它背后到底是什么可能是监控组件占用了这个端口不一定是打印机。配合防火墙策略。对非必要开放端口在防火墙上直接拦掉对必须保留的端口如 9200、9300 这类后台服务配置访问控制只允许运维网段访问。写在最后记住两个判断点就够了第一FScan 默认只扫内置端口组不在组里的端口默认不碰第二9100 已从默认列表移除但它本身是会打印的端口——手动扩大扫描范围把它带进来之前先想清楚目标机器上这个端口背后是什么。把-p收窄、用-ep排除再配合防火墙内网扫描就能既覆盖资产又不出幺蛾子。想了解 FScan 完整的参数清单可以查看仓库里的 README.md 或 SKILL.md端口相关的实现集中在 core/port_scan.go 与 common/config/constants.go。【免费下载链接】fscan一款内网综合扫描工具方便一键自动化、全方位漏扫扫描。(An intranet comprehensive scanning tool, enabling one-click automated, all-round vulnerability scanning)项目地址: https://gitcode.com/GitHub_Trending/fs/fscan创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考