

项目说明
Fscan
English
内网综合扫描工具,一键自动化漏扫。
版本: 2.2.2
功能特性
扫描能力
主机发现 - ICMP/Ping存活探测,支持大网段B/C段存活统计端口扫描 - TCP全连接扫描,内置133个常用端口,支持端口组(web/db/service/all)服务识别 - 智能协议识别,支持20+种服务指纹匹配Web探测 - 网站标题、CMS指纹、Web中间件、WAF/CDN识别(40+指纹)爆破能力
弱密码爆破 - 28种服务爆破(SSH/RDP/SMB/FTP/MySQL/MSSQL/Oracle/Redis等)Hash碰撞 - 支持NTLM Hash认证(SMB/WMI)SSH密钥登录 - 支持私钥认证方式智能字典 - 内置100+常见弱密码,支持{user}变量替换漏洞检测
高危漏洞 - MS17-010(永恒之蓝)、SMBGhost(C)未授权访问 - Redis/MongoDB/Memcached/Elasticsearch等未授权检测POC扫描 - 集成Web漏洞POC,支持Xray POC格式DNSLog - 支持DNSLog外带检测漏洞利用
Redis利用 - 写公钥、写计划任务、写WebShell、主从复制RCEMS17-010利用 - ShellCode注入,支持添加用户、执行命令SSH命令执行 - 认证成功后自动执行命令本地模块
信息收集 - 系统信息、环境变量、域控信息、网卡配置凭据获取 - 内存转储(MiniDump)、键盘记录、注册表导出权限维持 - Systemd服务、Windows服务、计划任务、启动项、LD_PRELOAD反弹Shell - 正向Shell、反向Shell、SOCKS5代理服务杀软检测 - 识别目标主机安装的安全软件痕迹清理 - 日志清理工具输入输出
目标输入 - IP/CIDR/域名/URL,支持文件批量导入排除规则 - 支持排除特定主机、端口输出格式 - TXT/JSON/CSV多格式输出静默模式 - 无Banner、无进度条、无颜色输出网络控制
代理支持 - HTTP/SOCKS5代理,支持指定网卡发包控制 - 速率限制、最大发包数量控制超时控制 - 端口超时、Web超时、全局超时独立配置并发控制 - 端口扫描线程、服务扫描线程独立配置扩展功能
SDK嵌入 - pkg/fscan提供Go SDK,可嵌入Agent或安全平台,支持任务控制(Pause/Resume)、实时进度回调、TaskID追溯Web管理界面 - 可视化扫描任务管理(条件编译 -tags web)Lab靶场环境 - 内置Docker靶场用于测试学习插件化架构 - 服务插件/Web插件/本地插件分离,易于扩展多语言支持 - 中英文界面切换(-lang zh/en)性能统计 - JSON格式性能报告(-perf)v2.1.0 更新日志
> 本次更新包含 262个提交,涵盖30项新功能、120项修复、54项重构、14项性能优化、20项测试增强。
架构重构
全局变量消除 - 迁移至Config/State对象,提升并发安全和可测试性SMB插件融合 - 整合smb/smb2/smbghost/smbinfo为统一插件,新增smb_protocol.go服务探测重构 - 实现Nmap风格fallback机制,优化端口指纹识别策略输出系统重构 - TXT实时刷盘+双写机制,解决结果丢失和乱序问题i18n框架升级 - 迁移至go-i18n,完整覆盖core/plugins/webscan模块HostInfo重构 - Ports字段从string改为int,类型安全函数复杂度优化 - clusterpoc(125→30)、EnhancedPortScan(111→20)代码审计 - 修复P0-P2级别问题,清理deadcode日志系统优化 - LogDebug调用清理(71→18),精简启动日志输出性能优化
正则预编译 - 全局正则表达式预编译,避免重复编译开销内存优化 - map[string]bool改为map[string]struct{}节省内存并发指纹匹配 - 多协程并行匹配,提升识别速度连接复用 - SOCKS5全局拨号器复用,避免重复握手滑动窗口调度 - 自适应线程池+流式迭代器,优化端口扫描CEL缓存优化 - POC扫描CEL环境缓存,减少重复初始化包级变量提取 - proxyFailurePatterns/resourceExhaustedPatterns/sslSecondProbes等预分配容量 - 简化转换链、单次字符串替换并发安全优化 - 优化锁粒度和内存分配新功能
Web管理界面 - 可视化扫描任务管理,响应式布局和进度显示多格式POC适配 - 支持xray和afrog格式POC智能扫描模式 - 布隆过滤器去重+代理优化增强指纹库 - 集成FingerprintHub(3139条指纹)Favicon指纹识别 - 支持mmh3和MD5双格式hash匹配通用版本提取器 - 自动提取服务版本信息指纹优先级排序 - 智能排序匹配结果智能协议检测 - 自动识别HTTP/HTTPS协议类型网卡指定功能 - 支持VPN场景(-iface参数)排除主机文件 - 支持从文件读取排除主机(-ehf参数)ICMP令牌桶限速 - 防止高速扫描导致路由器崩溃端口扫描重试 - 失败自动重扫机制RDP真实认证 - 集成grdp库实现系统指纹识别SMB/FTP文件列表 - 匿名访问时自动列出文件302跳转双重识别 - 同时识别原始响应和跳转后响应指纹TXT输出URL汇总 - 末尾添加Web服务URL列表便于批量测试nmap核心集成 - 三大改进:探测策略/匹配引擎/版本解析插件选择性编译 - Build Tags系统,支持服务/本地/Web插件独立编译默认端口扩展 - 从62个扩展到133个常用端口全端口扫描支持 - 扩大端口范围限制HTTP重定向控制 - 可配置的重定向次数限制性能分析支持 - 添加pprof性能分析和benchmark测试TCP包统计 - 服务插件支持TCP包发送统计fscan-lab靶场 - 内网渗透训练平台,覆盖全部漏洞场景(未完成)Redis利用增强 - 移植完整Redis利用功能(写公钥/计划任务/WebShell/主从RCE)rsync插件重构 - 使用go-rsync库重构认证逻辑Bug修复(120项,列出关键修复)
RDP空指针panic - 修复证书解析导致的崩溃(#551)批量扫描漏报 - 修复大规模扫描遗漏问题(#304)JSON输出格式 - 修复输出格式错误(#446)Redis弱密码检测 - 修复检测遗漏问题(#447)结果实时保存 - 修复扫描结果未及时保存(#469)Nmap解析溢出 - 修复八进制转义解析bug(#478)指纹识别竞态 - 修复webtitle/webpoc竞态问题(#474)MySQL连接验证 - 改用information_schema库验证代理端口误判 - 修复代理模式下端口状态判断错误Context超时 - 修复22处插件超时未响应问题ICMP竞态条件 - 修复并发扫描竞争问题IPv6地址格式 - 修复4处地址格式化问题POC高并发卡死 - 修复Context未传播问题Ctrl+C结果丢失 - 添加信号处理确保结果写入SOCKS5全回显 - 添加代理连接验证服务探测泄漏 - 修复连接未正确关闭问题webtitle响应丢弃 - 修复部分响应数据被丢弃导致识别失败TXT漏洞信息缺失 - 修复输出遗漏漏洞详情JSON指纹缺失 - 统一SERVICE结果Target格式扫描耗时显示 - 修复完成耗时显示为0的问题虚假漏洞记录 - 重构TXT输出系统消除误报Redis跨平台路径 - 修复利用功能的路径和超时问题Windows编译警告 - 修复fscan-lite平台兼容性Go 1.20兼容 - 降级依赖保持兼容性测试增强(20项)
单元测试 - 核心模块覆盖率74-100%并发安全测试 - State对象、指纹匹配引擎专项测试集成测试 - Web扫描/端口扫描/服务探测/SSH认证/ICMP探测CLI参数测试 - 命令行参数解析验证性能基准测试 - Adapti、服务探测策略benchmarkResultBuffer测试 - 去重和完整度评分验证工程化改进
CI流程优化 - golangci-lint v2升级,简化构建步骤Issue自动化 - GitHub Issue模板优化,Project自动化工作流Lint全量修复 - revi/shadow/staticcheck/gosimple全部通过README重写 - 中英文文档全面更新代码格式统一 - gofmt/goimports规范化快速开始
编译
安装
运行截图
使用 fscan -list-plugins 查看当前构建可用的模块名称、类型、默认端口和调用方式。
通过 -m 指定有固定端口的模块且未传 -p/-pf 时,扫描范围使用所选模块默认端口的并集;
例如 fscan -hf ip.txt -m netbios 使用 137,139。指定 -p 可扫描非标准端口,Web 模块仍使用通用端口范围。
-pwda/-usera 追加到默认字典;与 -pwd/-user 或 -pwdf/-userf 同用时,追加到指定字典。
fscan.exe -h 192.168.x.x


fscan.exe -h 192.168.x.x -rf id_rsa.pub (Redis写公钥)

fscan.exe -h 192.168.x.x -m ssh -user root -pwd password

fscan.exe -h 192.168.x.x -m ssh -user root -pwda pass1 pass2 pass3 (追加多个密码)
fscan.exe -h 192.168.x.x -p80 -proxy

fscan.exe -h 192.168.x.x -socks5 socks5://user:pass@127.0.0.1:1080 (SOCKS5认证代理)
fscan.exe -h 192.168.x.x -p 139 -m netbios


fscan.exe -h 192.0.0.0/8 -m icmp
!img.png
!2.0-1
!2.0-2
路线图
更新计划
更新周期 - 每月一次版本发布前两周 - 新功能开发与特性更新后两周 - Bug修复与代码整合欢迎PR - 期待您的贡献!SDK & Agent 集成
扩展SDK能力,完善端侧Agent嵌入支持断点续扫、带宽级限速、内存水位控制更多Agent场景的集成示例插件生态
持续扩展服务插件覆盖范围为每个服务插件开发更多漏洞检测和利用能力保持插件API向后兼容,确保旧版本POC持续可用Fscan-lite
C语言重写的轻量版本更小的体积,更少的依赖支持更多嵌入式/受限环境目录: fscan-liteFscan-lab
内网渗透测试靶场环境覆盖所有fscan支持的漏洞场景开发测试与功能验证平台新手学习与技能练习环境目录: fscan-lab免责声明
本工具仅面向合法授权的企业安全建设行为。使用前请确保已获得授权,符合当地法律法规,不对非授权目标扫描。作者不承担任何非法使用产生的后果。
404StarLink
![]()
fscan 是 404Team 星链计划2.0 成员项目。
Star趋势
![Stargazers over time]()
捐赠
请作者喝饮料
参考
项目信息
开发语言:Go
Star 数:14614
技术要点
该项目属于漏洞知识库方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕一款内网综合扫描工具,方便一键自动化、全方位漏扫扫描。(An intranet comprehensive scanning tool, enabling one-click automated, all-round vulnerability scanning)展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
使用与学习建议
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
免责声明
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。