mirror of
https://github.com/shadow1ng/fscan.git
synced 2026-09-22 03:10:42 +08:00
功能过于单一(仅 TCP 端口扫描),与 fscan 品牌定位不符。 fscan-nolocal 已是精简版的正确方案。 - 删除 fscan-lite 源码和构建脚本 - goreleaser 移除 lite 构建步骤 - CI 不再安装 mingw 交叉编译工具
3.8 KiB
3.8 KiB
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 代理认证支持(用户名/密码)
- 国密 TLS(SM2/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 版本,我们非常需要你的反馈:
- 🐛 发现 Bug → 提交 Bug 报告
- 🎯 结果不准 → 提交误报/漏报
- ✨ 功能建议 → 提交功能请求
- 💬 使用疑问 → Discussions
版本说明
| 版本 | 说明 |
|---|---|
| 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 |