Files
fscan/.github/release-notes/v2.2.0-rc.md
T
ZacharyZcR 354ad2e24b chore: 移除 fscan-lite (C 版本)
功能过于单一(仅 TCP 端口扫描),与 fscan 品牌定位不符。
fscan-nolocal 已是精简版的正确方案。

- 删除 fscan-lite 源码和构建脚本
- goreleaser 移除 lite 构建步骤
- CI 不再安装 mingw 交叉编译工具
2026-06-01 08:37:04 +08:00

3.8 KiB
Raw Permalink Blame History

fscan v2.2.0-rc

⚠️ 这是预发布版本 (Release Candidate),可能存在未发现的问题。 如果你在使用中遇到任何异常,请积极通过 Issue 反馈,帮助我们尽快稳定正式版。 生产环境建议继续使用 v2.1.3


与 v2.1.3 的主要变更

🏗️ 架构升级:嵌入式 Scanner SDK

新增 pkg/fscan 包,fscan 从纯 CLI 工具进化为可嵌入的扫描引擎

  • 支持从其他 Go 程序直接调用 fscan 扫描能力
  • 每个 Scanner 实例拥有独立的 config/state/session
  • 支持多实例并发扫描,日志和结果完全隔离
  • 全局状态已完整迁移到 session 实例

🚀 大规模扫描支持

  • 流式 Host Iterator — /8 级别 CIDR 不再一次性展开到内存
  • 移除 MaxHosts 硬限制 — 大网段不再被静默截断
  • ARM 原子计数器对齐 — 修复 32 位 ARM 平台 panic

🔌 新增协议插件(+9

插件 用途
IMAP / POP3 邮件服务器检测
JDWP Java Debug 端口检测
NFS / RMI 文件共享 / Java 远程调用
IPMI 服务器带外管理
SNMP (UDP) 网络设备管理
DNS / BACnet / Modbus DNS 服务 / 工控协议

全部为原生协议实现,零外部依赖。

性能与体积优化

  • Kafka/MongoDB/Cassandra 从重型客户端库改为 raw TCP 实现,二进制体积减小
  • 热路径零分配、自适应连接池 CAS 无锁化
  • Scanner 客户端指纹收敛(降低被检测概率)

🌐 网络能力增强

  • SOCKS5 代理认证支持(用户名/密码)
  • 国密 TLSSM2/SM3/SM4)网站扫描
  • 支持 -add-password 追加多个自定义密码

🔧 本地后渗透插件

  • 新增 sshkey、4 种持久化插件(crontask/systemd/winregistry/winschtask
  • minidump 降级链凭据提取 + 杀软前置检测
  • cleaner 清理所有持久化痕迹
  • systeminfo 整合合并(fileinfo/dcinfo/avdetect/envinfo

📦 工程改进

  • 目录重命名:WebScan/webscan/mylib/libs/
  • i18n 覆盖扩展(中/英双语)
  • 全量 lint/errcheck 修复
  • 补充大量单元测试

⚠️ 已知问题 / 注意事项

问题 说明
SDK 并发限速共享 CanSendPacket() 全局限速器在多 Scanner 实例间共享(按进程限速,非按实例)
CEL 回连验证走全局 DNSLog 反连检测的 HTTP 请求计数走全局 state(影响可忽略)
本地插件仅限授权场景 持久化/minidump/shell 类插件仅用于授权渗透测试
WebUI 为实验性功能 fscan-web 版本的 Web 界面尚未完善
common 包未完全拆分 内部架构的 common 包职责仍较重,后续版本持续优化

反馈与贡献

这是一个 RC 版本,我们非常需要你的反馈:


版本说明

版本 说明
fscan 标准版,包含全部插件(推荐)
fscan-nolocal 精简版,不含本地后渗透模块(体积更小)
fscan-web WebUI版,带 Web 管理界面(主流平台)

平台支持

平台 架构
Linux x64, x32, arm64, armv5/6/7, mips, mips64, mipsle
Windows x64, x32
macOS x64 (Intel), arm64 (Apple Silicon)
FreeBSD x64, x32, arm64, armv5/6/7
Solaris X64n