拓冰建站拓冰建站
首页 / 资讯中心 / 正文

fscan 为什么不再默认扫描 9100 端口:端口探测机制解析

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 这个端口居然不见了。它明明出现在常用的 Web 端口清单里历史上也常被用来暴露 Prometheus 监控面板为什么 fscan 的默认列表里把它拿掉了这不是 bug而是一次刻意的取舍。这篇机制解析带你把 fscan 的端口探测从选哪些端口到怎么判断端口活着一步步拆开看并给你控制扫描范围的最小操作集。一个端口是怎么被挑进扫描列表的先给结论fscan 默认扫什么不是算法挑的而是写死在源码里的几组端口名单。名单在源码里集中定义。所有预定义端口组放在 common/config/constants.go包括MainPorts默认主扫描清单约 133 个、WebPorts常见 Web 服务端口、DbPorts、ServicePorts、CommonPorts和AllPorts。命令行参数决定用哪份名单。默认参数-p的取值就是MainPorts的内容你也可以直接把-p换成端口组名字或自定义端口。每个组通过统一的映射表暴露给解析器。GetPortGroups()函数把web、main、db、service、common、all这几个名字映射到对应的端口串你在命令行里写组名时走的就是这张表。所以9100 在不在默认列表这个问题本质上就是它还在不在这些常量字符串里的问题。9100 为什么被移出了默认清单结论很直接9100 是打印机的 RAW 端口往它上面发探测数据可能真的触发一次打印fscan 因此在 Issue #517 后把它从默认列表里删掉了。端口属性冲突。9100 是网络打印服务的默认端口不是只读的 Web 接口。扫描器发出的探测包对这类端口来说可能就是要打印的字节流。副作用不划算。办公网里一台开着 9100 的打印机被扫描器问候一次可能就在纸上吐出一页乱码。轻则干扰办公重则消耗纸张和打印任务队列。修改方式很克制。你看源码注释就能明白意图——common/config/constants.go 里WebPorts和MainPorts附近各留了一行注释9100 已移除该端口为打印机 RAW 端口发送数据会触发打印。这也是为什么它这样做的答案收益多一个端口指纹远小于代价打扰真实业务所以宁可默认不扫把决定权交给你。一次扫描你实际会看到什么fscan 对端口的判断分两步先 TCP 全连接测试判断端口开没开再对开放端口做协议特征识别发探测包、比对响应。输出大致长这样存活确认。ICMP 探测成功后先打印一行(ICMP) Target 192.168.1.13 is alive。开放端口逐行列出格式是IP:端口 open比如192.168.1.13:9000 open。命中 Web 指纹的端口会追加一行WebTitle:http://IP:端口 状态码 标题这是 Web 探测模块在端口指纹之后做的二次识别。数据库、SSH、FTP 等服务会带出账号口令爆破结果例如MySQL:192.168.1.13:3306:root 123456。结尾是scan end结果同时写入result.txt可用-o改路径、-f换 json/txt 格式。也就是说你看到的每一个open背后都是TCP 连接成功这一个硬事实后面的服务名和版本才是探测包比对出来的推断。想自己控制扫描范围改这几个参数就够最小操作集按从粗到细排换整份名单./fscan -h 192.168.1.1/24 -p web用端口组替代默认清单组名有web、main、db、service、common、all。精确指定端口./fscan -h 192.168.1.13 -p 21,22,80,3306,9100——想扫 9100可以自己显式加上但前面说过它可能触发打印请先确认目标。排除个别端口-ep参数传逗号分隔的端口如-ep 9100适合全都要但少几个的场景。端口数量大时用文件-pf指定端口文件每行一个端口或范围比在命令行里贴一串长列表好维护。全端口扫描-p 1-65535对应AllPorts耗时和并发压力都上一个量级配合-t调线程数使用。另外提醒默认超时、重试等由内置配置管理你不需要为了能不能扫到额外开什么开关——默认 133 个端口覆盖内网里绝大多数真实服务。容易踩的坑别假设老版本行为还在。9100 是曾经默认扫、现在默认不扫的端口拿旧教程对照新版本的输出对不上很正常。-p和-ep是两套逻辑。前者整体替换默认清单后者只在当前清单上做减法写反了会得到和预期完全不同的端口集合。端口 open 不等于服务安全。fscan 会顺手做指纹、爆破和 Web 标题识别这些动作本身也在向目标发包生产环境扫描前最好和资产方打招呼。代理环境下端口状态可能误判项目历史修复项里有代理端口误判如果你挂着代理扫描发现某端口死活不出现或乱报先怀疑这条。对打印机、IoT 这类端口即业务的设备宁可显式-ep排除也不要在默认扫描里赌它没副作用。延伸阅读端口组常量与映射表见 common/config/constants.go命令行参数定义在 common/flag.goWeb 端口探测逻辑在 core/web_scanner.go。【免费下载链接】fscan一款内网综合扫描工具方便一键自动化、全方位漏扫扫描。(An intranet comprehensive scanning tool, enabling one-click automated, all-round vulnerability scanning)项目地址: https://gitcode.com/GitHub_Trending/fs/fscan创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门