Commit Graph
49 Commits
Author SHA1 Message Date
ZacharyZcR 5a8583a195 fix csv web title output (#575)
测试构建 / 代码检查 (push) Has been cancelled
测试构建 / 单元测试和构建 (push) Has been cancelled
测试构建 / 构建验证 (push) Has been cancelled
2026-05-09 14:00:06 +08:00
ZacharyZcR f0db5d48ad fix ms17010 legacy packet decoding (#574) 2026-05-09 14:00:06 +08:00
ZacharyZcR a6db455b7b restore ms17010 legacy detection and exploit (#574) 2026-05-09 14:00:06 +08:00
ZacharyZcR b80ed58408 fix rdp invalid random panic (#573) 2026-05-09 14:00:05 +08:00
ZacharyZcR 22039d3d21 feat: -silent 模式输出 NDJSON 到 stdout,支持 AI agent 管道消费
测试构建 / 代码检查 (push) Has been cancelled
测试构建 / 单元测试和构建 (push) Has been cancelled
测试构建 / 构建验证 (push) Has been cancelled
- 新增 StdoutNDJSONWriter,silent 模式下每条扫描结果实时输出一行 JSON
- LogWithProgress 层拦截人类可读日志,绕过 logger sync.Once 初始化时序问题
- 支持 fscan -h xxx -silent | jq 管道用法
2026-05-07 06:39:53 +08:00
ZacharyZcR 189e17d439 fix: golangci-lint 改用 go install 安装,绕过上游安装脚本 checksum 校验问题
测试构建 / 代码检查 (push) Has been cancelled
测试构建 / 单元测试和构建 (push) Has been cancelled
测试构建 / 构建验证 (push) Has been cancelled
2026-05-07 02:18:47 +08:00
ZacharyZcR 903f8f0ef0 fix: 锁定 golangci-lint 版本为 v2.12.1 修复 CI checksum 校验失败 2026-05-07 02:09:37 +08:00
ZacharyZcR 1ebe6964f0 chore: bump version to 2.1.3 2026-05-07 02:07:49 +08:00
ZacharyZcR b075c13a68 feat: Release 增加 armv5 架构支持
测试构建 / 代码检查 (push) Has been cancelled
测试构建 / 单元测试和构建 (push) Has been cancelled
测试构建 / 构建验证 (push) Has been cancelled
2026-04-30 19:16:36 +08:00
ZacharyZcR 533a4ed7f8 fix: MSSQL 连接加 encrypt=disable 修复无 TLS 环境扫描失败,Web API 参数校验负数
测试构建 / 代码检查 (push) Has been cancelled
测试构建 / 单元测试和构建 (push) Has been cancelled
测试构建 / 构建验证 (push) Has been cancelled
2026-04-28 15:24:01 +08:00
ZacharyZcR 4f98091fa3 perf: 网段预筛增加网关启发式,.1/.254 多端口优先探测,命中即跳过逐主机兜底 2026-04-28 13:42:05 +08:00
ZacharyZcR 5616cc180e fix: 网段预筛从抽样改全覆盖,每台主机发 1 个探测包,消除漏报 2026-04-28 13:24:51 +08:00
ZacharyZcR d96695e602 perf: 大规模扫描网段预筛,按 /24 探活跳过空子网,B 段扫描从 2h+ 降至 2min 2026-04-28 13:01:45 +08:00
ZacharyZcR 655c35d495 fix: 凭据测试连续网络错误短路、resultChan 缓冲防阻塞、timer 泄漏修复 2026-04-28 12:30:19 +08:00
ZacharyZcR d41a595195 fix: 修复凭据测试清理 goroutine 无限阻塞导致的 goroutine 泄漏 2026-04-28 12:24:21 +08:00
ZacharyZcR 5b9bcf3937 perf: 三阶段性能优化,ICMP 并发提升+TCP 并行探测,端口扫描退避调整,服务探测超时减半 2026-04-28 11:44:00 +08:00
ZacharyZcR b3d4434057 feat: 项目缓存系统,跨扫描合并资产,缓存 host:port 避免漏报 2026-04-28 11:17:21 +08:00
ZacharyZcR 0157e523ae perf: CVE-2026-24061 检测改并发执行,消除硬 sleep 用 deadline 替代 2026-04-28 11:06:22 +08:00
ZacharyZcR b2caf5e118 fix: 修复 pocDNSLog data race,穿透 ctx 到全链路,消除残余 net.DialTimeout 绕过 2026-04-28 10:02:49 +08:00
ZacharyZcR 08e2c4f74f fix: 修复 dialer timeout 锁死、CVE 检测绕过 session 和误报问题 2026-04-28 09:40:13 +08:00
ZacharyZcR 91a9a1a11b refactor: 清除 core/plugins 全局状态依赖,ProgressManager 缓存引用 (Phase 5)
测试构建 / 代码检查 (push) Has been cancelled
测试构建 / 单元测试和构建 (push) Has been cancelled
测试构建 / 构建验证 (push) Has been cancelled
- core/alive_scanner.go: GetFlagVars() → session.Params
- core/service_scanner.go: GetFlagVars() → session.Params 和 config.Target.Ports
- common/progress_manager.go: 缓存 State 和 NoColor 到字段,不再运行时读全局
- common/output_api.go: SaveResult 改用 GetGlobalConfig().Output.DisableSave
- common/network.go: WrapperTcpWithTimeout 标记 Deprecated
- core/ 和 plugins/ 下已无全局状态调用残留
2026-04-27 23:31:56 +08:00
ZacharyZcR c98805e85a refactor: 全量替换 WrapperTcpWithTimeout 为 session.DialTCP (Phase 4)
- core/port_scan.go: EnhancedPortScan/connectWithRetry/scanSinglePort 接入 session
- core/service_probe.go: SmartPortInfoScanner 持有 session,重连走 session.DialTCP
- core/icmp.go: CheckLive/tcpProbeAlive 接入 session
- 17 个 service 插件: 内部 helper 函数全部穿透 ctx+session
- 移除插件中冗余的手动 TCP 计数(DialTCP 内部已处理)
- plugins/core 下已无 WrapperTcpWithTimeout/SafeTCPDial 调用残留
2026-04-27 23:27:21 +08:00
ZacharyZcR a865e5d45e refactor: 引入 ScanSession,替代全局状态穿透扫描管道 (Phase 1-3)
- 新增 common/session.go: ScanSession 结构体封装 Config/State/Params/Dialer
- RunScan/Strategy/ExecuteScanTasks/executeScanTask 全部接收 session
- Plugin 接口从 Scan(ctx, info, config, state) 改为 Scan(ctx, info, session)
- 48 个插件实现统一更新签名
- Web API 构建 ScanSession 传给 RunScan
- CLI 模式通过 Initialize() 创建 session
2026-04-27 23:00:06 +08:00
ZacharyZcR 3d7cdcbe5f fix: Web 全局状态同步、字典文件错误提示、长驻插件连接可取消
- scan.go: Web API 构建 config/state 后同步到全局实例
- config_builder.go: 用户名/密码/URL 文件读取失败时输出错误日志
- reverseshell.go: 读命令设 1s 超时,超时后检查 ctx 实现可取消
- forwardshell.go: handleClient 接受 ctx,取消时关闭连接解除阻塞
- socks5proxy.go: handleClient 接受 ctx,取消时关闭连接解除 IO 阻塞
2026-04-27 21:45:16 +08:00
ZacharyZcR 653f11295a fix: 补全 HTTP/TLS proxy stats 加锁,修复 RPC/SMB 解析越界和 POC 加载逻辑
- httpdialer.go/tlsdialer.go: LastError/LastConnectTime/AverageConnectTime 加 mutex
- findnet.go: RPC 响应结束标记位置 < 4 时跳过截断,防止负数切片 panic
- ms17010.go: SMB 会话响应最小长度改为 45,sessionSetupResponse 加长度校验
- web_scan.go: POC 加载失败时不标记 pocLoaded,允许后续重试
- Eval.go: DNSLog 配置去掉 sync.Once,允许多次扫描更新配置
2026-04-27 21:34:42 +08:00
ZacharyZcR bd0986216b fix: 修复 ProxyStats 含 mutex 导致的 copylocks 告警
Stats() 方法改为手动构造副本,避免值拷贝复制 sync.Mutex
2026-04-27 20:06:20 +08:00
ZacharyZcR 9b8ed55eab fix: POC 扫描接入调用方 context,修复 cachedPocPath 竞争和 ProxyStats data race
- webscan/web_scan.go: WebScan 接受 ctx 参数,替换 context.Background();
  sync.Once 改为 sync.Mutex 保护 POC 加载,消除 cachedPocPath 并发写竞争
- webtitle.go: ctx 从 Scan 穿透到 identifyFingerprintsMulti → triggerPocScan → WebScan
- webpoc.go: 传递 ctx 到 WebScan
- proxy/types.go: ProxyStats 增加 sync.Mutex
- proxy/manager.go: LastConnectTime/LastError/AverageConnectTime 读写加锁
2026-04-27 19:24:59 +08:00
ZacharyZcR 3bf1cb0376 fix: 修复 Web Stop 信号等待阻塞和 SMB 响应解析越界 panic
- scanner.go: 长驻插件等待信号时同时监听 ctx.Done(),Web Stop 可正常返回
- smb_protocol.go: 响应长度检查修正为 47,远端偏移量全部做边界校验
2026-04-27 19:19:53 +08:00
ZacharyZcR d7749c4766 refactor: context 穿透扫描生命周期,修复长驻插件阻塞和 Web Stop 无效
- RunScan 接受 context.Context,创建可取消上下文并穿透到所有策略和插件
- 长驻插件(forwardshell/socks5proxy/reverseshell)不再进入 scan WaitGroup,
  通过 ctx.Done() 管理生命周期,解除 wg.Wait() 死锁
- Web Stop API 从 stopChan 改为 context.CancelFunc,取消信号真正传播到扫描链路
- ExecuteScanTasks 和 executeScanTask 支持 context 取消检查,停止分发新任务
- CLI 模式传 context.Background(),行为完全不变
2026-04-27 19:04:26 +08:00
ZacharyZcR 1fe8bb5182 fix: 修复 Hub 广播 data race 和端口扫描潜在死锁,清理死代码
- hub.go: broadcast 路径 RLock 改 Lock,修复并发 delete/close 竞争
- port_scan.go: pool.Invoke 失败时释放 wg 和 semaphore,防止死锁
- web_scanner.go: 删除只写不读的 fingerprintCache
- webtitle.go: 移除对已删除 SetFingerprints 的调用
- keylogger.go: 删除未使用的 stopChan 和 isRunning 字段
2026-04-27 19:04:26 +08:00
ZacharyZcR db0b53b139 fix(ci): 扩展 UPX 压缩范围覆盖 ARM/MIPS/FreeBSD 架构 2026-04-25 18:13:52 +08:00
ZacharyZcR 4c58843033 chore: 版本号更新为 2.1.2 2026-04-25 17:43:53 +08:00
ZacharyZcR 6b13b2e84f feat: 添加 GitHub Issue 模板
- bug_report.yml: Bug 报告模板
- feature_request.yml: 功能请求模板
- plugin_request.yml: 新插件/协议支持请求模板
- false_positive.yml: 误报/漏报报告模板
- config.yml: 禁用空白 issue,添加文档链接
2025-12-20 10:31:39 +08:00
ZacharyZcR 03b21f92f1 docs: 测试构建 2025-07-17 23:08:06 +08:00
ZacharyZcR 2674e469b8 docs: 测试构建 2025-07-17 23:00:28 +08:00
ZacharyZcR d4a486763b docs: 测试构建 2025-07-17 22:45:05 +08:00
ZacharyZcR 6fe1f11e36 docs: 测试构建 2025-07-17 22:36:51 +08:00
ZacharyZcR 6f17deb963 docs: 测试构建 2025-07-17 22:26:42 +08:00
ZacharyZcR 820ba6a35b docs: 测试构建 2025-07-17 22:19:25 +08:00
ZacharyZcR 5bdfd769f2 docs: 测试构建 2025-07-17 22:14:53 +08:00
ZacharyZcR b6b898532b docs: 测试构建 2025-07-17 22:10:56 +08:00
ZacharyZcR 5dd74269a8 docs: 测试构建 2025-07-17 22:07:13 +08:00
ZacharyZcR 26d0955ec6 docs: 测试构建 2025-07-17 21:59:39 +08:00
ZacharyZcR a198aeabe5 docs: 测试构建 2025-07-17 21:52:06 +08:00
ZacharyZcR f182732a8b docs: 测试构建 2025-07-17 21:42:49 +08:00
ZacharyZcR b49228a07b docs: 测试构建 2025-07-17 21:37:01 +08:00
ZacharyZcR 3af09b7d8a docs: 测试构建 2025-07-17 21:33:36 +08:00
ZacharyZcR 379117b07a docs: 测试构建 2025-07-17 21:26:49 +08:00
ZacharyZcR 4adb4222dd docs: 测试构建 2025-07-17 21:23:29 +08:00