feat: v2.1.0 核心重构与功能增强

## 架构重构
- 全局变量消除,迁移至 Config/State 对象
- SMB 插件融合(smb/smb2/smbghost/smbinfo)
- 服务探测重构,实现 Nmap 风格 fallback 机制
- 输出系统重构,TXT 实时刷盘 + 双写机制
- i18n 框架升级至 go-i18n

## 性能优化
- 正则表达式预编译
- 内存优化 map[string]struct{}
- 并发指纹匹配
- SOCKS5 连接复用
- 滑动窗口调度 + 自适应线程池

## 新功能
- Web 管理界面
- 多格式 POC 适配(xray/afrog)
- 增强指纹库(3139条)
- Favicon hash 指纹识别
- 插件选择性编译(Build Tags)
- fscan-lab 靶场环境
- 默认端口扩展(62→133)

## 构建系统
- 添加 no_local tag 支持排除本地插件
- 多版本构建:fscan/fscan-nolocal/fscan-web
- CI 添加 snapshot 模式支持仅测试构建

## Bug 修复
- 修复 120+ 个问题,包括 RDP panic、批量扫描漏报、
  JSON 输出格式、Redis 检测、Context 超时等

## 测试增强
- 单元测试覆盖率 74-100%
- 并发安全测试
- 集成测试(Web/端口/服务/SSH/ICMP)
This commit is contained in:
ZacharyZcR
2026-01-11 20:16:23 +08:00
parent 6b13b2e84f
commit 71b92d4408
948 changed files with 92335 additions and 24630 deletions
+30
View File
@@ -0,0 +1,30 @@
====================================
下一步行动指引
====================================
你已经成功进入 DMZ 区的 FTP 服务器!
发现的关键文件:
1. SSH 私钥:/home/admin/.ssh/office_key
2. 该私钥可以访问 VPN 网关 (10.10.1.13)
VPN 网关是双网卡主机:
- DMZ 侧:10.10.1.13
- 办公网侧:10.10.2.2
攻击路径:
1. 下载 SSH 私钥
2. 使用私钥连接 VPN 网关
3. 从 VPN 网关扫描办公网
命令示例:
# 下载私钥(已在当前目录)
chmod 600 office_key
# 连接 VPN 网关
ssh -i office_key [email protected]
# 扫描办公网
fscan -h 10.10.2.0/24
加油!
+17
View File
@@ -0,0 +1,17 @@
====================================
办公网打印机配置信息
====================================
设备型号: HP LaserJet Pro M404n
IP地址: 10.10.2.23
SMB共享: 已启用
管理员账户:
- 用户名: printer
- 密码: [已保存在密码管理器]
共享文件夹:
- print$ (打印机驱动)
- backup (打印任务备份)
注意: 为了方便管理,使用了简单密码
+27
View File
@@ -0,0 +1,27 @@
====================================
生产网主机清单
====================================
网段:10.10.3.0/24
已知主机:
10.10.3.30 - app-web (Tomcat 应用服务器)
10.10.3.31 - cache-redis (Redis 缓存,密码:redis123)
10.10.3.32 - mq-rabbit (RabbitMQ)
10.10.3.33 - mq-activemq (ActiveMQ)
10.10.3.34 - search-es (Elasticsearch)
重点目标:
★ Redis (10.10.3.31) - 已知密码,可能存在写入漏洞
防火墙策略:
- 办公网 -> 生产网:只允许特定端口
- 生产网 -> 核心网:全通(一旦进入生产网,可以访问核心网!)
核心网预览:
10.10.4.0/24 - 数据库集群和域控
策略建议:
1. 通过 Redis 获取立足点
2. 横向移动到其他生产主机
3. 扫描核心网寻找数据库
+18
View File
@@ -0,0 +1,18 @@
# Redis 配置文件(生产网备份)
bind 0.0.0.0
protected-mode no
port 6379
requirepass redis123
# 注意:此配置存在安全风险
# Redis 密码:redis123
# 主机:10.10.3.31
# 可能的攻击向量:
# 1. 使用密码认证后写入 SSH 公钥
# 2. 利用 Redis 执行 Lua 脚本
# 3. 配置文件写入攻击
# 从办公网连接:
# redis-cli -h 10.10.3.31 -a redis123