Commit Graph

43 Commits

Author SHA1 Message Date
ZacharyZcR
75a056809c refactor: 移除无效的-noredis参数
- 删除DisableRedis字段定义和flag声明
- 移除相关i18n消息
- 更新PARAMETERS.md文档,删除-noredis参数说明
- 该参数已失效且在代码中无任何实际作用

现在如需禁用Redis扫描,应通过扫描模式或端口排除实现
2025-08-12 18:09:44 +08:00
ZacharyZcR
074aebfeec refactor: 简化插件利用架构,移除不必要的exploit控制参数
- 移除-ne (DisableExploit)参数及其相关控制逻辑
- 统一服务插件exploit实现为空函数,保持接口一致性
- MySQL/FTP/Cassandra/ActiveMQ插件exploit方法改为空实现
- Redis插件移除-ne控制,利用功能由专用参数控制(-rwp/-rf/-rs)
- VNC插件exploit功能改为空实现,专注于服务检测和弱密码扫描
- 更新插件描述,准确反映实际功能范围

所有exploit功能现在由明确的用户参数控制,无需通用禁用开关
2025-08-12 17:56:06 +08:00
ZacharyZcR
3b6f2083de feat: 优化SOCKS5参数命名以提升清晰度
- 将 -socks5-port 重命名为 -start-socks5,更明确表达启动服务器的意图
- 修正 -socks5 参数描述为使用SOCKS5代理(客户端模式)
- 添加新的i18n消息 flag_start_socks5_server 区分两种用途
- 更新文档说明两个参数的不同用途和使用示例

参数对比:
  旧方式: -socks5-port 1080 (容易混淆)
  新方式: -start-socks5 1080 (启动代理服务器)
  区别于: -socks5 127.0.0.1:1080 (使用外部代理)
2025-08-11 21:02:47 +08:00
ZacharyZcR
25649467c1 feat: 添加跨平台文件下载插件
- 新增downloader本地插件,支持Windows/Linux/Darwin
- 添加-download-url和-download-path命令行参数
- 支持HTTP/HTTPS协议文件下载
- 实现文件大小限制和超时控制
- 支持自动文件名提取和路径权限检查
- 完整的错误处理和资源清理机制
- 集成多语言支持(中英文)
2025-08-11 10:33:16 +08:00
ZacharyZcR
4e237f6bc3 feat: 移除键盘记录时间限制,改为持续记录模式
- 删除-keylog-duration命令行参数和相关配置
- 移除KeyloggerDuration全局变量和时间限制逻辑
- 键盘记录现在持续运行直到程序手动停止
- 更新日志格式为「记录模式: 持续记录」
- 优化用户体验,避免因时间限制导致记录意外中断
- 保持实时文件输出和高性能键盘捕获特性
- 更新插件信息和帮助文档,移除时间相关描述
2025-08-11 09:48:50 +08:00
ZacharyZcR
c9d07ebd9b feat: 添加跨平台键盘记录本地插件
- 实现Windows键盘Hook机制,支持低级键盘事件捕获
- 实现Linux输入设备监听,支持/dev/input/eventX设备读取
- 实现macOS Core Foundation事件监听,支持CGEventTap
- 添加键盘记录配置参数:-keylog-output和-keylog-duration
- 修复Windows消息循环阻塞问题,改用PeekMessage非阻塞模式
- 支持跨平台键盘输入捕获和文件输出
- 集成到FScan本地插件系统,支持-localplugin keylogger调用
2025-08-11 08:55:01 +08:00
ZacharyZcR
e254d6e333 feat: 添加Windows持久化插件套件
- 新增5个Windows持久化插件:
  * winregistry: Windows注册表持久化(Run键、RunOnce键、Winlogon Shell等)
  * winstartup: Windows启动文件夹持久化(快捷方式、批处理脚本等)
  * winschtask: Windows计划任务持久化(schtasks、XML任务导入)
  * winservice: Windows服务持久化(系统服务、svchost集成)
  * winwmi: Windows WMI事件订阅持久化(事件过滤器、消费者绑定)

- 添加-win-pe参数支持PE文件路径指定
- 完整的参数验证和错误处理
- 支持.exe和.dll文件格式
- 国际化支持(中英文)
- 遵循FScan简化本地插件架构

所有插件已完成测试验证,提供多层次Windows持久化方案
2025-08-11 07:04:22 +08:00
ZacharyZcR
804274ff67 feat: 添加Linux持久化插件套件
- 新增ldpreload插件:通过LD_PRELOAD动态库预加载实现持久化
- 新增shellenv插件:通过修改shell配置文件实现持久化
- 新增crontask插件:通过cron计划任务实现持久化
- 新增systemdservice插件:通过systemd服务实现持久化
- 添加-persistence-file参数支持.elf/.sh文件
- 四种持久化方式覆盖多个持久化向量
- 仅支持Linux平台,包含完善的平台检查
- 集成智能权限管理和错误处理机制
2025-08-11 06:18:15 +08:00
ZacharyZcR
0eef393420 feat: 添加正向Shell本地插件
- 新增forwardshell本地插件,支持跨平台远程Shell访问
- 支持Windows (cmd)、Linux/macOS (/bin/sh) 平台
- 添加-fsh-port参数指定监听端口,默认4444
- 实现并发连接处理和命令超时控制
- 集成生命周期管理,支持长时间运行
- 提供exit命令优雅断开连接
2025-08-11 05:17:39 +08:00
ZacharyZcR
b60a2af424 feat: 添加SOCKS5代理本地插件
- 实现完整的SOCKS5协议支持,包括握手和连接请求处理
- 支持IPv4/IPv6地址和域名解析
- 添加-socks5-port命令行参数用于指定代理端口
- 实现双向数据转发和并发连接处理
- 集成主程序生命周期管理,避免代理运行时程序退出
- 支持跨平台运行(Windows/Linux/macOS)
- 通过curl测试验证代理功能正常
2025-08-10 10:25:51 +08:00
ZacharyZcR
fc6dd50377 feat: 添加跨平台反弹Shell本地插件
新增功能:
- 添加 reverseshell 本地插件,支持 Windows/Linux/macOS 反弹Shell
- 新增 -rsh 命令行参数,用于指定反弹目标地址:端口
- 支持自动生成不同平台的反弹Shell命令
- 集成到现有本地插件架构中

代码重构:
- 清理旧插件架构文件 (Plugins/*.go)
- 统一使用新的模块化插件架构
- 修复 main.go 中的函数调用
- 更新可用插件列表和参数验证

技术细节:
- Windows: PowerShell TCP反弹Shell
- Linux/macOS: Bash TCP反弹Shell
- 支持连接测试和错误处理
- 遵循现有插件架构模式
2025-08-10 05:10:03 +08:00
ZacharyZcR
05727a0db7 feat: 实现Telnet远程终端协议专业扫描插件
- 新增Telnet服务插件,支持完整的Telnet协议实现和弱口令检测
- 实现Telnet连接器、利用器和主插件的完整新架构
- 支持智能服务器类型识别(无需认证、仅密码、用户名+密码)
- 集成IAC命令处理、选项协商等完整Telnet协议功能
- 支持多种认证模式和用户名/密码组合暴力破解
- 完善国际化消息支持和Docker测试环境配置
- 测试验证:成功检测root:123456等弱密码组合
2025-08-09 15:42:46 +08:00
ZacharyZcR
8da185257b feat: 实现SNMP网络管理协议专业扫描插件
- 新增SNMP服务插件,支持UDP协议和community字符串认证
- 实现SNMP连接器、利用器和主插件的完整架构
- 添加UDP端口161的特殊处理机制,解决UDP端口扫描问题
- 支持默认community字符串爆破(public, private, cisco, community)
- 集成SNMP系统信息获取和服务识别功能
- 完善国际化消息支持和Docker测试环境配置
2025-08-09 15:34:05 +08:00
ZacharyZcR
188f949f09 feat: 完成Rsync和SMTP服务插件迁移到新架构
- 完成Rsync文件同步服务插件迁移
  * 实现RSYNCD协议支持和模块列表获取
  * 支持匿名访问和认证扫描
  * 添加Docker测试环境配置

- 完成SMTP邮件服务插件迁移
  * 实现SMTP协议和PLAIN认证支持
  * 支持匿名访问检测和弱密码扫描
  * 添加Docker测试环境配置

- 更新国际化消息和插件注册机制
- 两个插件均通过完整功能测试验证
2025-08-09 15:05:19 +08:00
ZacharyZcR
dc8579f554 feat: 实现Neo4j图数据库专业扫描插件
- 新增Neo4j Bolt协议识别和弱密码检测
- 支持未授权访问和默认凭据检测
- 实现ServiceConnector三层架构模式
- 添加Neo4j专用国际化消息
- 支持7474/7687端口扫描
- 自动注册到插件系统
2025-08-09 11:57:35 +08:00
ZacharyZcR
a71092b514 feat: 实现Microsoft SQL Server数据库专业扫描插件
- 新增MSSQL协议识别和弱密码检测
- 支持sa等管理员账户暴力破解
- 实现ServiceConnector三层架构模式
- 添加MSSQL专用国际化消息
- 支持SOCKS代理连接
- 自动注册到插件系统
2025-08-09 11:46:07 +08:00
ZacharyZcR
7e4d5a0bcd feat: 实现MongoDB NoSQL数据库专业扫描插件
- 新增MongoDB协议识别和未授权访问检测
- 支持Wire Protocol(OP_MSG和OP_QUERY)
- 实现connector/exploiter/plugin三层架构
- 添加MongoDB专用国际化消息
- 自动注册到插件系统
2025-08-08 14:02:13 +08:00
ZacharyZcR
fbe141cc80 feat: 实现Memcached和Modbus专业扫描插件 2025-08-08 13:37:58 +08:00
ZacharyZcR
7b8d2b4add feat: 实现LDAP轻量级目录访问协议专业扫描插件 2025-08-08 12:54:03 +08:00
ZacharyZcR
6e936f604a feat: 实现Apache Kafka消息队列专业扫描插件
- 新增Kafka插件支持9092等端口扫描
- 实现SASL PLAIN认证机制支持
- 支持弱密码暴力破解和服务识别功能
- 延迟连接设计避免SASL握手错误
- 支持Consumer和Client双重连接验证
- 完善Kafka相关国际化消息支持
- 兼容新插件架构设计模式
2025-08-08 11:34:37 +08:00
ZacharyZcR
0808461026 feat: 实现IMAP邮件服务专业扫描插件
- 新增IMAP/IMAPS插件支持143和993端口扫描
- 实现TLS/SSL加密连接支持
- 添加IMAP协议专用超时机制(默认超时+5秒)
- 支持弱密码暴力破解和服务识别功能
- 完善IMAP相关国际化消息支持
- 兼容新插件架构设计模式
2025-08-08 11:27:55 +08:00
ZacharyZcR
4b482b603d fix: 修复FTP插件注册和利用功能问题
- 在Core/Registry.go中添加FTP插件导入,确保插件正确注册
- 完善FTP插件的i18n消息支持,添加完整的中英文消息
- 修复FTP利用器错误处理逻辑,改进错误报告机制
- 添加FTP测试环境docker-compose配置文件

修复后FTP插件支持:
- 服务识别和版本检测
- 弱密码扫描和匿名登录检测
- 目录枚举、文件上传下载测试等利用功能
2025-08-08 08:58:36 +08:00
ZacharyZcR
51735c4e25 feat: 实现-nobr/-ne参数和服务识别功能
新增功能:
- 添加-ne参数禁用利用攻击,实现弱密码检测和利用攻击的分离控制
- 实现-nobr模式下所有插件的服务识别功能,单数据包获取最大信息
- 修复端口插件匹配逻辑,只调用适配端口的插件提升扫描效率

插件改造:
- MySQL: 通过握手包识别获取版本信息
- Redis: INFO命令识别版本,优先检测未授权访问
- SSH: Banner识别获取协议和服务器版本
- ActiveMQ: STOMP协议识别获取版本和认证状态

技术改进:
- 新增端口匹配算法确保精准插件调用
- 完善i18n国际化支持所有新功能
- 统一服务识别接口设计便于扩展
2025-08-08 03:32:00 +08:00
ZacharyZcR
ecc79aa9b8 feat: 实现ActiveMQ消息队列服务专业扫描插件
新增功能:
- 基于STOMP协议的ActiveMQ弱密码检测
- 完整的多语言i18n支持(中英文)
- 自动信息收集和权限识别
- 队列枚举和管理权限检测
- 优化的Docker测试环境配置

技术特性:
- 支持端口61613(STOMP)和61614(STOMP+SSL)
- 智能用户权限分析
- 异步利用执行机制
- 统一的插件架构设计
- 完善的错误处理和日志记录

测试环境:
- 简化的ActiveMQ Docker配置
- 预配置多种测试凭据
- 专注STOMP协议,提升性能
2025-08-08 02:53:14 +08:00
ZacharyZcR
8a2c9737f3 enhance: 增强进度条显示和扫描配置功能
- 在扫描开始时显示详细配置信息(-t, -time, -mt, -gt参数)
- 端口扫描进度条显示线程数配置
- 进度条实时显示插件和连接并发状态
- 添加ConcurrencyMonitor并发监控系统
- 提升mt参数默认值从10到50以提高扫描性能
- 移除端口范围限制,支持全端口扫描(1-65535)
- 完善中英文国际化支持
2025-08-07 14:48:32 +08:00
ZacharyZcR
de286026e8 refactor: 统一插件超时机制实现Context-First架构
- 重构SSH/MySQL/Redis插件超时控制,移除第三方库超时依赖
- 统一使用Go Context超时机制,提升超时控制可靠性和精确度
- 扩展MySQL/Redis/SSH插件默认端口支持,提升扫描覆盖率
- 修复插件系统中ConcurrentScanConfig超时配置缺失问题
- 优化插件检测逻辑,正确识别新架构插件并显示准确状态信息
- 解决插件在错误端口上长时间等待问题,显著提升扫描效率
2025-08-07 14:01:50 +08:00
ZacharyZcR
b346e6bdc1 feat: 完善插件系统i18n国际化支持
- 修复重复输出问题:适配器层改为debug输出,避免与插件层重复
- 修复格式化错误:修正SaveExploitResult中的端口格式化问题
- 新增利用方法名称i18n:添加GetExploitMethodName函数支持方法名本地化
- 扩展i18n消息模板:新增利用方法执行、MySQL/Redis专用消息模板
- 完善exploiter国际化:所有利用方法和结果消息支持中英文切换
- 优化用户体验:利用方法显示从"information_gathering"变为"信息收集"
2025-08-07 12:30:17 +08:00
ZacharyZcR
43f210ffc6 feat: 实现新一代插件注册系统完全替代传统手动注册模式
- 重构插件注册架构采用现代工厂模式和自动发现机制
- 新增完整的插件元数据管理系统支持版本能力标签等信息
- 实现智能插件适配器提供向后兼容的桥接功能
- 建立MySQL Redis SSH三个标准插件作为新架构参考实现
- 优化插件扫描逻辑支持按端口按类型的智能查询和过滤
- 添加国际化支持和完善的文档体系
- 代码量减少67%维护成本大幅降低扩展性显著提升

新架构特点:
- 零配置插件注册import即用
- 工厂模式延迟初始化和依赖注入
- 丰富元数据系统和能力声明
- 完全解耦的模块化设计
- 面向未来的可扩展架构

测试验证: MySQL和Redis插件功能完整包括弱密码检测未授权访问检测和自动利用攻击
2025-08-07 11:28:34 +08:00
ZacharyZcR
78b8ff4f81 fix: 修复扫描模式验证和帮助文本过时问题
修复内容:
- 移除ValidationParser中无效的扫描模式(main, web, db, service, top1000, custom)
- 简化扫描模式验证逻辑,只保留真正支持的预定义模式(all, icmp)
- 允许任何插件名称作为扫描模式,实际验证在运行时进行
- 更新帮助文本,移除过时的portscan/tcpscan/udpscan引用

技术改进:
- 避免维护两套插件列表,减少维护成本
- 使验证逻辑与实际功能保持一致
- 提供更准确的用户指导信息

支持的扫描模式:
- all: 运行所有插件
- icmp: 存活探测模式
- 插件名称: mysql, redis, ssh等任何注册插件
- 多插件: mysql,redis,ssh等逗号分隔格式
2025-08-07 09:54:56 +08:00
ZacharyZcR
022461f407 feat: 添加-m icmp参数支持存活探测模式
新增功能:
- 支持通过-m icmp参数启用存活探测功能
- 与现有-ao参数功能等价,提供更直观的使用方式
- 添加参数冲突检查,当同时使用-ao和-m icmp时给出友好提示
- 完善参数验证,将icmp添加到有效扫描模式列表

技术实现:
- 扩展ValidationParser支持icmp模式验证
- 修改Scanner策略选择逻辑支持icmp模式
- 新增参数冲突检查函数checkParameterConflicts
- 更新帮助信息和国际化消息支持

向后兼容:
- 保持-ao参数原有功能不变
- 两种参数方式都能正确触发存活探测
- 支持中英文双语界面和提示信息
2025-08-07 09:45:01 +08:00
ZacharyZcR
78f81610cd feat: 实现存活探测模式(-ao)支持快速主机存活状态检测
新增功能:
- 添加-ao参数启用存活探测模式,专注于ICMP ping检测
- 实现AliveScanner专用扫描器,提供详细统计信息
- 集成到Scanner架构,支持与其他扫描模式无缝切换
- 完善i18n国际化支持,覆盖中英文界面

技术实现:
- 新增core/AliveScanner.go实现专用存活检测逻辑
- 扩展Scanner.go选择策略支持存活探测模式
- 优化目标解析和错误处理机制
- 提供成功率、耗时等详细扫描统计

使用场景:
- 快速批量主机存活性验证
- 网络拓扑发现前期探测
- 大规模网络资产盘点预检
2025-08-07 09:28:11 +08:00
ZacharyZcR
6c93129cb1 refactor: 重构扫描器架构优化代码复用和性能
主要改进:
- 创建BaseScanStrategy基础类提取通用功能,减少60%代码重复
- 新增PortDiscoveryService分离端口发现逻辑,提升职责清晰度
- 优化插件匹配算法,从O(n×m×p)降至O(n×p)复杂度
- 修复插件适用性判断逻辑错误,确保精确端口匹配
- 完善国际化支持,新增21个i18n消息定义
- 代码行数显著减少:LocalScanner(-50%)、ServiceScanner(-42%)、WebScanner(-44%)

技术优化:
- 组合模式替代继承,提升扩展性
- 策略模式实现插件过滤器,支持Local/Service/Web类型
- 服务分离提升可测试性和维护性
- 性能优化减少嵌套循环和重复计算

确保漏洞扫描插件列表与实际执行插件保持精确一致。
2025-08-07 09:16:03 +08:00
ZacharyZcR
e8a7c594e9 refactor: 重构i18n模块为模块化架构提升维护性
将单个messages.go文件(935行)拆分为按功能分类的多个文件:
- core.go: 核心系统消息
- parse.go: 解析相关消息
- config.go: 配置相关消息
- scan.go: 扫描相关消息
- network.go: 网络相关消息
- output.go: 输出相关消息
- error.go: 通用错误消息
- flag.go: 命令行参数消息
- constants.go: 语言常量定义
- init.go: 统一初始化机制

提升了代码维护性、可读性和团队协作效率,为后续国际化扩展奠定良好基础。
2025-08-07 08:53:51 +08:00
ZacharyZcR
a250fd7e22 refactor: 重构Scanner.go架构并完善国际化支持
架构优化:
- 简化ScanStrategy接口,从8个方法减少到3个
- 移除不必要的Scanner结构体包装,改为直接函数调用
- 合并scheduleScanTask和executeSingleScan为单一函数
- 移除prepareScanTasks中间层,采用流式处理避免预构建任务列表
- 移除ScanTask结构体,减少内存分配

性能提升:
- 流式任务执行,降低内存占用
- 统一资源管理,简化并发控制
- 减少函数调用链层次,提高执行效率

国际化完善:
- 新增5个扫描流程相关的双语消息定义
- 所有硬编码中文字符串替换为i18n调用
- 完整支持中英文扫描模式选择和错误提示

代码质量:
- 从187行减少到166行,函数数量从9个减少到7个
- 职责更清晰,耦合度更低,可维护性提升
- 保持向后兼容,核心功能完整
2025-08-07 08:27:12 +08:00
ZacharyZcR
f943f04de7 refactor: 精简命令行参数提升用户体验
移除冗余和低频使用的参数:
- 移除 -ping 参数,统一使用 -np 控制存活检测
- 移除 -top 参数,改为智能计算显示数量
- 移除 -np-bar, -slow, -sp 调试参数
- 重构 -pg 为 -nopg,简化进度条控制逻辑

主要变更:
- 将进度条控制从默认开启改为默认显示,使用 -nopg 禁用
- 实现智能TOP计算,根据扫描规模自动调整显示数量
- 统一参数命名风格,提高易用性
- 完善参数文档,新增 PARAMETERS.md

影响:
- 简化了用户界面,减少参数学习成本
- 保持核心功能不变,提升使用体验
- 移除功能重复和混淆的参数选项
2025-08-07 07:18:32 +08:00
ZacharyZcR
69a70fc577 feat: 在漏洞扫描阶段显示启用的插件列表
增强用户体验,让用户清楚了解漏洞扫描时启用的具体插件:

功能特点:
• 在"开始漏洞扫描"后显示实际启用的插件列表
• 智能过滤,只显示针对发现端口的适用插件
• 完整国际化支持,中英文界面均正常显示
• 格式与现有"使用服务插件"保持一致

实现细节:
* Core/ServiceScanner.go: 新增LogVulnerabilityPluginInfo函数
  - 使用与实际扫描相同的插件过滤逻辑
  - 确保显示的插件列表与实际执行的插件一致
  - 支持插件去重和格式化显示

* Common/i18n/messages.go: 添加漏洞扫描相关国际化文本
  - scan_vulnerability_start: "开始漏洞扫描" / "Starting vulnerability scan"
  - scan_vulnerability_plugins: "使用漏洞扫描插件: %s" / "Using vulnerability scan plugins: %s"
  - scan_no_vulnerability_plugins: "未找到可用的漏洞扫描插件" / "No available vulnerability scan plugins found"

显示效果:
- 针对SMB端口(445,135): 显示"ms17010, smb, smb2, smbghost, findnet"
- 针对Web端口(80,443): 显示"webpoc, webtitle"
- 根据实际发现的开放端口智能显示相关插件

提升用户对扫描过程的可见性和控制感,便于调试和性能优化。
2025-08-07 01:38:51 +08:00
ZacharyZcR
20cb3356de refactor: 重构common包错误消息系统并优化常量管理
主要改进:
- 将output和parsers包中的硬编码错误消息迁移到i18n国际化系统
- 修复constants.go中未引用常量的使用问题
- 消除所有硬编码字符串、魔术数字和协议标识符
- 清理死代码常量MinIPv4OctetValue

具体变更:
* output包: 删除19个硬编码错误消息,新增13个i18n消息键
* parsers包: 删除24个硬编码错误模板,新增22个i18n消息键
* 修复8个未引用的Default常量在对应默认选项函数中的使用
* 替换11处网络协议相关的硬编码值为常量引用
* 更新6个错误类型常量和验证逻辑的硬编码使用
* 修复2处IPv4八位组计数的硬编码为常量引用

提升效果:
- 支持中英文错误消息国际化切换
- 统一常量管理,提高代码可维护性
- 消除代码重复,符合DRY原则
- 清理死代码,优化代码质量

涉及文件: 11个文件,新增210行,删除103行
2025-08-06 22:33:26 +08:00
ZacharyZcR
aff27e0b2c refactor: 清理common/i18n包中的死代码函数
- 删除Manager结构体中8个未使用的方法
- 清理全局访问函数中11个死代码函数
- 保留核心功能:SetLanguage, AddMessages, GetText
- 简化国际化管理架构,提升代码维护性
- 总计删除约300行死代码,包大小减少60%
2025-08-06 07:37:11 +08:00
ZacharyZcR
9b6c389ea8 fix: 移除输出中的emoji和Unicode字符,提升终端兼容性
主要更改:
- 替换进度条中的Unicode块字符(█░│)为ASCII字符(#.|)
- 移除完成提示中的✓符号,改为[完成]标识
- 替换网络接口显示中的树形字符(└─)为简单短横线(-)
- 清理国际化信息中的emoji字符(🔍)

优化效果:
- 提升跨平台终端兼容性
- 避免在不支持Unicode的环境中显示乱码
- 输出更适合日志记录和脚本处理
- 符合传统命令行工具的专业输出风格
2025-08-06 01:39:58 +08:00
ZacharyZcR
4101ccc91a feat: 重构进度条系统并优化日志级别控制
- 实现固定底部进度条显示,与正常输出分离
- 创建ProgressManager统一管理进度条状态和渲染
- 优化日志级别过滤,默认只显示BASE、INFO、SUCCESS级别
- 修复进度条与并发日志输出的冲突问题
- 重构日志系统以支持动态级别配置和进度条协调
- 改进用户体验,提供清晰、专业的扫描进度反馈

主要改进:
* 新增ProgressManager.go实现固定底部进度条
* 修复日志初始化时机,确保级别配置正确生效
* 实现日志输出与进度条的互斥显示机制
* 优化默认日志级别,过滤干扰性调试和错误信息
* 保持向后兼容性,支持用户自定义日志级别
2025-08-06 00:06:49 +08:00
ZacharyZcR
a00e7a735a fix: 完善帮助信息国际化和参数验证机制
- 补充40+个缺失的flag参数翻译,实现完整中英文帮助信息
- 优化语言预处理机制,确保帮助信息生成前语言设置生效
- 新增智能帮助显示逻辑,无目标时自动显示帮助而非执行扫描
- 添加-help参数支持显式帮助请求
- 改善用户体验,避免误导性的默认扫描行为
2025-08-05 23:03:12 +08:00
ZacharyZcR
09d578a476 feat: 完善i18n国际化系统,实现完整的中英文切换支持
- 新增核心扫描流程国际化消息:扫描模式、进度状态、端口统计等
- 修复硬编码中文消息,统一使用GetText()获取国际化文本
- 优化import循环依赖,config和parsers包直接导入i18n包
- 完善消息覆盖:配置警告、扫描状态、任务进度全面国际化
- 实现实时语言切换,-lang en/zh参数立即生效

功能验证:
- 中英文输出100%准确,格式化参数正常工作
- 核心扫描流程消息完全国际化覆盖
- 线程安全并发访问,性能无明显影响
- 向后兼容性完整,现有代码无需修改

使fscan具备专业级国际化能力,支持全球用户使用
2025-08-05 21:25:02 +08:00
ZacharyZcR
a850e141fc refactor: 封装i18n为独立包,优化国际化架构
- 新建Common/i18n/子包,提供专业的国际化管理
- i18n/manager.go: 线程安全的国际化管理器,支持动态语言切换
- i18n/messages.go: 完整的消息库,200+条国际化文本
- 重构Common/i18n.go为向后兼容层,引用新i18n包
- 支持多语言回退机制和消息格式化功能
- 提供统一的国际化接口,便于维护和扩展

架构优势:
- 模块化设计: 独立的i18n包,职责单一
- 线程安全: 支持并发访问的国际化管理器
- 灵活配置: 支持动态语言切换和消息管理
- 向后兼容: 100%兼容现有GetText()调用
- 易于扩展: 支持新语言和消息的动态添加

使项目国际化架构更加整洁和专业化
2025-08-05 21:13:23 +08:00