4 Commits

Author SHA1 Message Date
ZacharyZcR
e886096060 fix: 修复i18n API与Go vet冲突并添加工程化配置
- 分离i18n.GetText和GetTextF接口,消除API歧义
- 添加.golangci.yml配置,禁用printf检查保留其他检查
- 添加Makefile统一构建命令
- 升级CI流程:lint -> test -> build三阶段
- 修复.gitignore排除Makefile问题
2025-10-02 22:33:09 +08:00
ZacharyZcR
c9097771ee fix: 修复Redis弱密码检测遗漏问题 (#447)
问题:
- 默认密码字典缺少常见弱密码 "redis"
- Redis用户字典未配置,导致不必要的重复测试
- 存在永远不会执行的硬编码备用凭据

修复:
- 添加 "redis" 到默认密码字典
- 添加 redis 用户配置(空用户名)
- 删除无用的硬编码逻辑

Fixes #447
2025-10-02 16:08:49 +08:00
ZacharyZcR
75af9bd861 添加可配置的HTTP重定向次数限制
添加 --max-redirect 参数控制HTTP重定向行为。
当达到重定向次数限制后,停止跟随重定向,但仍然对最后的响应进行POC扫描,而不是直接失败。

改动内容:
- 添加 MaxRedirects 配置变量(默认值:10)
- 添加 --max-redirect 命令行参数,支持中英文国际化
- 配置 Client.CheckRedirect 遵守重定向次数限制
- 统一 webtitle 使用全局 lib.Client,移除自建客户端

关联 Issue #215
2025-10-02 02:54:05 +08:00
ZacharyZcR
be1188d82b refactor: v2.1.0 核心重构和功能增强
**核心架构重构**
- 重构目录结构:Common/ -> common/, Core/ -> core/, Plugins/ -> plugins/, WebScan/ -> webscan/
- 模块化设计:拆分common/为parsers/, logging/, i18n/, output/, proxy/等子模块
- 统一插件系统:消除Plugin/Scanner/LocalPlugin等重复接口
- 配置解析器重写:新增parsers包处理所有配置解析逻辑
- 国际化支持:完整的中英文i18n系统

**服务插件重构** (59个插件)
- 所有服务插件采用统一接口设计
- 新增服务插件:ActiveMQ, Cassandra, Kafka, Neo4j, RabbitMQ, Rsync等
- 增强现有插件:SSH, MySQL, Redis, SMB, FTP, PostgreSQL等
- 本地功能插件:AVDetect, Cleaner, CronTask, KeyLogger, SystemInfo等26个
- 智能错误分类和重试机制
- 并发暴力破解优化

**核心扫描引擎**
- 端口扫描重构:支持SYN/Connect/ICMP多种模式
- 服务识别增强:集成nmap-service-probes指纹库
- Web扫描优化:title抓取、POC检测、指纹识别
- 进度条系统:实时显示扫描进度、发包统计、内存使用
- 发包频率控制:支持-rate和-maxpkts限制

**新增功能**
- user:pass格式字典支持 (-upf参数) #179
- fscan-lite C语言版本:轻量级无依赖版本
- 本地扫描模式:26个本地安全检测插件
- API模式:支持远程调用
- Docker测试环境:13个服务的docker-compose配置

**Bug修复**
- 修复并发输出混乱问题
- 修复包计数双重统计
- 修复进度条显示不准确
- 修复-no参数被忽略
- 修复SMB/SSH认证问题
- 修复Oracle TNS服务识别错误
- 修复SafeDialTimeout缺失TCP计数

**性能优化**
- 删除大量死代码和冗余函数
- 简化过度工程设计
- 优化端口扫描性能
- 减少内存占用
- 清理重复代码

**测试和CI/CD**
- 新增核心模块单元测试 (2000+ loc)
- GitHub Actions优化:统一构建发布流程
- 支持fscan和fscan-lite统一发布
- 中文化工作流配置

**文档**
- 更新README文档
- 新增插件开发文档
- 完善国际化文档

**依赖更新**
- 更新go.mod依赖
- 清理无用依赖
- 升级核心库版本

统计:
- 删除文件:61个旧架构文件
- 新增文件:500+个模块化文件
- 代码行数:~50000 lines
- Commits压缩:289 -> 1
2025-10-02 00:50:10 +08:00