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
|
095437ad1a
|
feat: 实施内存分配优化提升扫描性能
主要优化:
• 创建字符串构建器池,字符串连接性能提升18倍,内存减少99.8%
• 实施切片和Map对象池复用机制,减少频繁内存分配
• 优化SSH凭证生成,预分配切片容量减少58.6%内存使用
• 改进端口扫描和ICMP模块的Map容量预估机制
• 保持100%向后API兼容性
性能改进:
- 字符串操作: 8154ns→447ns (18x提升)
- 内存分配减少: 99.8% (8.3GB→16MB)
- SSH凭证生成: 内存减少58.6%
- 对象池复用率: 100%
新增文件:
+ common/utils/stringbuilder.go - 字符串构建器池
+ common/utils/slicepool.go - 切片对象池
+ common/utils/mappool.go - Map对象池
+ common/utils/benchmark_test.go - 性能基准测试
+ Common/utils/ - 大写版本兼容目录
修改文件:
* Common/Parse.go - 使用优化的字符串连接和去重函数
* Plugins/SSH.go - 凭证生成预分配优化
* Core/ICMP.go - 网段统计Map容量预估
* Core/PortScan.go - 端口排除Map预分配
通过专业基准测试验证,显著改善大规模扫描场景的内存效率和性能表现。
|
2025-08-07 01:09:54 +08:00 |
|
ZacharyZcR
|
68a0c99c4c
|
fix: 修复globals.go并发安全问题并清理死代码
修复内容:
- 消除双向同步机制中的竞态条件风险
- 移除复杂的syncWithCore/syncToCore函数
- 简化全局状态管理架构
优化改进:
- 使用单一数据源(core包)避免数据不一致
- 保持向后兼容性,不破坏现有API
- 清理11个unreachable函数,减少30%代码量
- 从270行精简至188行,提升可维护性
技术细节:
- 移除globalState复杂结构体
- 简化配置同步逻辑为SyncFromCore/SyncToCore
- 保留必要的全局变量以维持兼容性
- 所有核心扫描功能验证正常
安全提升:
- 消除数据竞争和竞态条件
- 确保配置同步的原子性
- 提高多线程环境下的稳定性
涉及文件: 2个文件,+85行,-64行
|
2025-08-07 00:29:44 +08:00 |
|
ZacharyZcR
|
84b0bb1e28
|
refactor: 完成common包常量提取和代码重构优化
- 新增constants.go文件统一管理各包常量定义
- 提取logging、output、parsers、proxy包中的硬编码值
- 将30+个魔法数字替换为语义化常量
- 统一错误代码和消息格式
- 清理死代码和未使用变量
- 优化代码可维护性和可读性
- 保持完全向后兼容性
涉及包:
- common/logging: 日志级别和格式常量
- common/output: 输出配置和格式常量
- common/parsers: 解析器配置和验证常量
- common/proxy: 代理协议和错误常量
|
2025-08-06 21:29:30 +08:00 |
|
ZacharyZcR
|
2f9c213e80
|
refactor: 系统性清理common包中的死代码和未使用变量
主要清理内容:
- logging包:移除DetailedFormatter、JSONFormatter及相关方法
- output包:清理Manager和Statistics中的未使用方法
- parsers包:移除各Parser中的Validate()和GetStatistics()方法
- proxy包:清理Factory和Global中的所有未使用函数
- ProgressManager:移除未使用的进度条方法和字段
- globals:清理未使用的status变量
技术改进:
- 使用deadcode和golangci-lint工具系统性检测
- 保持代码结构清晰,添加清理注释
- 修复相关依赖引用问题
- 确保编译通过和功能正常
代码减少:移除约40个死代码函数和多个未使用字段
|
2025-08-06 08:14:00 +08:00 |
|
ZacharyZcR
|
c8038bdc62
|
fix: 修复进度条显示错位问题,实现真正的固定底部进度条
- 简化进度条定位逻辑,移除复杂的光标定位操作
- 优化LogWithProgress协调机制,确保日志与进度条正确交互
- 修复ANSI转义序列被直接输出的问题
- 进度条现在能够在底部原地更新,不再与日志输出争抢显示空间
|
2025-08-06 05:00:21 +08:00 |
|
ZacharyZcR
|
05ba01f170
|
refactor: 统一包命名规范并清理冗余文件
主要更改:
- 统一包目录命名为小写(Core→core, Plugins→plugins, WebScan→webscan)
- 更新所有import路径以符合Go语言命名规范
- 重构parsers模块,简化复杂的工厂模式(从2000+行优化至400行)
- 移除i18n兼容层,统一使用模块化i18n包
- 简化Core/Manager.go架构(从591行优化至133行)
- 清理冗余文件:备份文件、构建产物、测试配置、重复图片
- 移除TestDocker测试环境配置目录
- 解决变量命名冲突问题
性能优化:
- 减少代码复杂度60-70%
- 提升构建和运行性能
- 保持完整功能兼容性
代码质量:
- 符合Go语言最佳实践
- 统一命名规范
- 优化项目结构
|
2025-08-06 01:30:18 +08:00 |
|
ZacharyZcR
|
f5843e486b
|
完善Common包i18n国际化支持,优化错误格式化
- 完成Bridge.go中所有硬编码中文的i18n改造
- 修复Parse.go中的国际化消息调用格式
- 扩展i18n.go消息库至200+条完整消息覆盖
- 统一各子系统的多语言错误处理机制
|
2025-08-05 20:58:01 +08:00 |
|
ZacharyZcR
|
b436c0d546
|
refactor: 大规模精简代码结构,移除冗余函数和优化模块
核心优化:
- 移除大量未使用的函数和方法,显著减少代码复杂度
- 精简多个子模块的接口定义和类型声明
- 优化Bridge.go桥接层,统一API调用接口
- 简化Parse.go主解析逻辑,提高代码可读性
模块精简:
- config模块:简化配置管理接口,移除冗余配置项
- logging模块:精简日志格式化和处理逻辑
- output模块:优化输出管理和统计功能
- parsers模块:简化类型定义和解析接口
性能提升:
- 减少不必要的函数调用开销
- 优化内存分配和垃圾回收压力
- 简化模块间依赖关系
- 提升编译速度和运行效率
安全验证:
- 编译测试完全通过,无编译错误或警告
- 功能完整性验证通过,所有核心功能正常
- 静态分析确认无隐藏依赖或反射调用风险
- 运行时测试验证系统稳定性和正确性
|
2025-08-05 20:00:50 +08:00 |
|
ZacharyZcR
|
c04bfcfd07
|
refactor: 重构Parse.go解析模块,优化参数验证和信息显示
主要改进:
- 模块化设计:将549行Parse.go拆分为6个专用解析器
- 性能优化:添加文件缓存、并发处理和去重机制
- 增强验证:实现配置冲突检测和参数验证
- 改善体验:清理冗余警告,添加解析结果摘要显示
- 向后兼容:保持所有原有API接口不变
新增模块:
- FileReader: 高性能文件读取和缓存
- CredentialParser: 用户名密码解析
- TargetParser: 主机目标解析
- NetworkParser: 网络配置解析
- ValidationParser: 参数验证和冲突检测
- Types: 统一的数据结构定义
修复问题:
- 消除重复的"Web超时时间大于普通超时时间"警告
- 添加目标主机、端口、代理等配置信息显示
- 删除说教性安全警告,保留技术性提示
|
2025-08-05 02:14:10 +08:00 |
|
ZacharyZcR
|
9b38dc0006
|
feat: 修复密码解析逻辑保留空密码
- 移除密码解析时对空密码的过滤逻辑
- 保留用户在命令行或文件中指定的空密码
- 确保空口令爆破功能正常工作
- 更新.gitignore排除开发工具目录
|
2025-08-05 00:36:38 +08:00 |
|
shadow1ng
|
c4378545b9
|
合并dev。变动太大吗,又得重新优化输出,进度50%。rpc服务冲突,暂时删除
|
2025-05-12 21:59:16 +08:00 |
|
I0veD
|
9092b09b16
|
Update Parse.go
|
2025-04-20 19:16:59 +08:00 |
|
ZacharyZcR
|
77705118d5
|
refactor: 大量重构
|
2025-04-14 02:36:16 +08:00 |
|
ZacharyZcR
|
c58b63a6ac
|
fix: 修复#444
|
2025-04-05 22:00:21 +08:00 |
|
ZacharyZcR
|
3dde342d65
|
feat: i18n
|
2025-02-07 13:10:06 +08:00 |
|
ZacharyZcR
|
0235bf5af5
|
fix: -hf的一个问题 修复#412的问题
|
2025-01-12 22:26:18 +08:00 |
|
ZacharyZcR
|
235e2aee60
|
refactor: 调整逻辑,修复SMB2的一个跳出问题
|
2025-01-04 17:00:03 +08:00 |
|
ZacharyZcR
|
af06345aa5
|
refactor: 调整扫描逻辑
|
2025-01-04 14:04:41 +08:00 |
|
ZacharyZcR
|
75aeee5215
|
feat: 优化域探测显示,调整Web扫描逻辑
|
2025-01-04 11:49:59 +08:00 |
|
ZacharyZcR
|
ceede3cd68
|
refactor: 输出格式重构,去掉所有插件的多线程,因为多线程会导致结果不准确,加入进度条
|
2025-01-01 07:18:36 +08:00 |
|
ZacharyZcR
|
277ea5d332
|
refactor: 输出格式重构,重构SMB、SMB2、FTP的一些验证逻辑
|
2025-01-01 05:24:49 +08:00 |
|
ZacharyZcR
|
2e3ccee2e0
|
perf: 优化输出说明
|
2024-12-22 02:31:29 +08:00 |
|
ZacharyZcR
|
c5dcf2c633
|
refactor: 重构扫描模式逻辑
|
2024-12-21 18:26:44 +08:00 |
|
ZacharyZcR
|
33cb33b1ad
|
perf: 统一错误输出
|
2024-12-21 17:21:41 +08:00 |
|
ZacharyZcR
|
375a1e4673
|
refactor: 端口支持改为列表
|
2024-12-20 18:38:13 +08:00 |
|
ZacharyZcR
|
1278a0355f
|
refactor: 大型重构
|
2024-12-20 14:19:23 +08:00 |
|
ZacharyZcR
|
bdeabec67e
|
refactor: 大型重构
|
2024-12-20 03:46:09 +08:00 |
|
ZacharyZcR
|
c8687827ac
|
refacor: 结构化修改
|
2024-12-19 16:15:53 +08:00 |
|
ZacharyZcR
|
0eeda0879d
|
perf: 优化Parse.go的代码,添加注释,规范输出
|
2024-12-18 22:06:38 +08:00 |
|
ZacharyZcR
|
5d9bcaaadc
|
refactor: 规范化文件命名
|
2024-12-18 22:00:18 +08:00 |
|