Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
71b92d4
feat: v2.1.0 核心重构与功能增强
ZacharyZcR Jan 11, 2026
fc4a231
fix(ci): 移除 PR 对 Project 自动化的触发
ZacharyZcR Jan 11, 2026
98c6ec3
fix: Elasticsearch未授权检测优先于爆破 (#554)
ZacharyZcR Jan 13, 2026
90c7f9c
fix: 修复RDP爆破高误报率问题 (#555)
ZacharyZcR Jan 14, 2026
e504c22
fix: 修复-user/-pwd凭据参数不生效的问题
ZacharyZcR Jan 14, 2026
25a9776
feat: RDP使用NLA仅验证模式,避免挤掉已登录用户
ZacharyZcR Jan 14, 2026
c3bff84
fix: 修复进度条在Windows终端满屏重复输出的问题
ZacharyZcR Jan 17, 2026
5ebdbd3
feat: 优化日志颜色方案,区分漏洞和普通信息
ZacharyZcR Jan 17, 2026
b17061c
refactor: 精简化输出,移除冗余启动信息
ZacharyZcR Jan 17, 2026
0492182
chore: 版本号更新为2.1.1
ZacharyZcR Jan 17, 2026
6031e65
fix: 降级依赖版本以保持Go 1.20兼容性
ZacharyZcR Jan 17, 2026
6fb6f85
feat(ldap): 添加NTLM Hash认证支持 (#433)
ZacharyZcR Jan 17, 2026
e5a1f6a
chore: 清理无用的 replace 指令
ZacharyZcR Jan 17, 2026
334159d
fix(ping): 修复 TTL expired 导致主机误判为存活的问题
ZacharyZcR Jan 17, 2026
e65211e
fix(proxy): 修复透明代理导致输出全端口的问题
ZacharyZcR Jan 17, 2026
6d7fea3
refactor: 移动debug模块到common/debug子包
ZacharyZcR Jan 19, 2026
490cdbf
fix(web): 修复-u模式下Web插件未执行的问题
ZacharyZcR Jan 19, 2026
411467d
fix: 优化输出格式和颜色显示
ZacharyZcR Jan 19, 2026
af3c6a9
fix: URL解析自动补全协议头
ZacharyZcR Jan 19, 2026
e9e6387
fix: 修复-u/-uf模式下URLs丢失导致0目标扫描的问题
ZacharyZcR Jan 19, 2026
732cb6d
fix: 智能检测HTTP/HTTPS协议并优化URL显示
ZacharyZcR Jan 19, 2026
e23d89d
refactor: 精简parsers包,统一配置构建入口
ZacharyZcR Jan 20, 2026
e86dd1a
test: 扩展parsers单元测试覆盖边缘情况
ZacharyZcR Jan 20, 2026
4ef21f3
refactor: 优化控制台输出格式
ZacharyZcR Jan 20, 2026
eec3941
feat: 添加凭据测试未发现弱密码的提示
ZacharyZcR Jan 20, 2026
7c53a1c
refactor(logging): 重构日志级别为层级过滤设计
ZacharyZcR Jan 20, 2026
20ac62b
style(logging): Error级别日志改为黄色显示
ZacharyZcR Jan 20, 2026
35a9056
style(findnet): NetInfo输出改为每行一个IP
ZacharyZcR Jan 20, 2026
2839a14
refactor(ms17010): 优化错误提示,明确指出SMBv1不支持等情况
ZacharyZcR Jan 20, 2026
b86f39d
fix(credential): 修复凭据测试结果不一致的问题
ZacharyZcR Jan 20, 2026
d624d84
fix(portfinger): 修复SMB2服务指纹识别和NetInfo输出问题
ZacharyZcR Jan 20, 2026
b4d14fc
fix(config): 从默认端口移除9100,避免触发打印机打印 (#517)
ZacharyZcR Jan 20, 2026
0e70cf6
feat(proxy): 增强代理端口扫描的深度验证机制
ZacharyZcR Jan 20, 2026
26ed83b
fix(proxy): 修复代理深度验证的若干问题
ZacharyZcR Jan 20, 2026
1de3adb
refactor: 统一 common 包文件命名风格
ZacharyZcR Jan 21, 2026
80f16fe
refactor(proxy): 删除自定义 contains() 函数,改用标准库
ZacharyZcR Jan 21, 2026
98641d4
fix(parsers): 修复带横杠域名被误识别为IP范围的问题
ZacharyZcR Jan 21, 2026
927bdba
fix(proxy): 修复代理模式下服务识别错误和端口漏扫问题
ZacharyZcR Jan 21, 2026
5e04ad9
fix(pool): 移除线程池预分配,优化大规模扫描内存占用
ZacharyZcR Jan 21, 2026
8312808
refactor(logging): 统一日志前缀,删除废弃的 LogBase
ZacharyZcR Jan 21, 2026
5ecd3cf
perf(icmp): 实现自适应等待算法优化存活检测性能
ZacharyZcR Jan 21, 2026
849c28e
perf(scan): 实现启发式优化提升扫描体验
ZacharyZcR Jan 21, 2026
26cf7db
refactor(grdp): 精简RDP库,删除认证检测不需要的代码
ZacharyZcR Jan 21, 2026
df72419
refactor(common): 删除死代码,优化代码风格
ZacharyZcR Jan 21, 2026
8260bee
refactor(services): 统一数据库插件的DBWrapper
ZacharyZcR Jan 21, 2026
713c86d
refactor(core,grdp): 删除未使用的死代码
ZacharyZcR Jan 21, 2026
f18b51c
refactor: 删除 deadcode 检测出的未使用函数
ZacharyZcR Jan 21, 2026
be76e27
refactor: 删除更多未使用的死代码
ZacharyZcR Jan 21, 2026
5a66529
fix(test): 修复 TestParseIP_InvalidIPRange 测试用例
ZacharyZcR Jan 21, 2026
09d2d73
fix(scan): 移除域名预解析,保留原始域名进行扫描
ZacharyZcR Jan 22, 2026
f49a121
fix(scan): 修复 -hf 参数无法单独使用的问题
ZacharyZcR Jan 23, 2026
1bfd5ac
fix(proxy): 修复透明代理环境下 SOCKS5 代理全端口误报问题
ZacharyZcR Jan 23, 2026
43f0d32
feat(telnet): 新增 telnetd RCE 命令执行验证,修复未授权访问日志级别
ZacharyZcR Jan 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
56 changes: 45 additions & 11 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: 🐛 Bug 报告
description: 报告扫描异常、崩溃或错误行为
title: "[Bug] "
title: "[Bug] 简要描述问题"
labels: ["bug"]

body:
Expand Down Expand Up @@ -70,21 +70,55 @@ body:
description: 粘贴相关的错误信息或日志(请脱敏敏感信息)
render: shell

- type: textarea
id: environment
- type: dropdown
id: version
attributes:
label: 环境信息
description: 请提供运行环境信息
value: |
- fscan 版本: [如 1.8.4]
- 操作系统: [如 Windows 11 / Ubuntu 22.04 / macOS 14]
- 架构: [如 amd64 / arm64]
- Go 版本 (如自编译): [如 go1.20.10]
label: fscan 版本
options:
- 2.1.0
- 2.0.1
- 2.0.0
- 1.8.4
- 其他/自编译
validations:
required: true

- type: dropdown
id: os
attributes:
label: 操作系统
options:
- Windows 11
- Windows 10
- Windows Server 2022
- Windows Server 2019
- Ubuntu 22.04
- Ubuntu 20.04
- CentOS 7
- CentOS 8/Stream
- Debian 11/12
- Kali Linux
- macOS 14 (Sonoma)
- macOS 13 (Ventura)
- 其他 Linux
- 其他
validations:
required: true

- type: dropdown
id: arch
attributes:
label: 系统架构
options:
- amd64 (x86_64)
- arm64 (aarch64)
- 386 (x86)
- arm
validations:
required: true

- type: textarea
id: additional
attributes:
label: 补充信息
description: 其他可能有助于排查问题的信息
description: 其他可能有助于排查问题的信息(如自编译请注明 Go 版本)
45 changes: 34 additions & 11 deletions .github/ISSUE_TEMPLATE/false_positive.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: 🎯 误报/漏报
description: 报告扫描结果不准确的问题
title: "[Accuracy] "
title: "[Accuracy] 服务名 - 误报/漏报描述"
labels: ["accuracy"]

body:
Expand Down Expand Up @@ -54,15 +54,33 @@ body:
validations:
required: true

- type: textarea
id: environment
- type: dropdown
id: target-os
attributes:
label: 目标环境
description: 描述目标的环境信息(请脱敏)
placeholder: |
- 目标系统: Windows Server 2019 / Ubuntu 22.04
- 服务版本: MySQL 8.0 / Redis 7.0
- 网络环境: 直连 / 通过代理 / VPN
label: 目标操作系统
options:
- Windows Server 2022
- Windows Server 2019
- Windows Server 2016
- Windows 10/11
- Ubuntu
- CentOS/RHEL
- Debian
- 其他 Linux
- 网络设备
- 未知
validations:
required: true

- type: dropdown
id: network
attributes:
label: 网络环境
options:
- 直连
- 通过代理
- VPN
- 跨网段
validations:
required: true

Expand All @@ -76,11 +94,16 @@ body:
validations:
required: true

- type: input
- type: dropdown
id: version
attributes:
label: fscan 版本
placeholder: "如: 1.8.4"
options:
- 2.1.0
- 2.0.1
- 2.0.0
- 1.8.4
- 其他/自编译
validations:
required: true

Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: ✨ 功能请求
description: 提议新功能或改进现有功能
title: "[Feature] "
title: "[Feature] 一句话描述功能"
labels: ["enhancement"]

body:
Expand Down
4 changes: 3 additions & 1 deletion .github/ISSUE_TEMPLATE/plugin_request.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: 🔌 新插件/协议支持
description: 请求支持新的服务、协议或漏洞检测
title: "[Plugin] "
title: "[Plugin] 协议/服务名称"
labels: ["plugin", "enhancement"]

body:
Expand Down Expand Up @@ -76,6 +76,8 @@ body:
- 较为常见 (经常遇到)
- 偶尔遇到
- 较少见但重要
validations:
required: true

- type: checkboxes
id: contribution
Expand Down
103 changes: 103 additions & 0 deletions .github/actions/build-release/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
name: '构建和发布'
description: 'fscan 可复用构建动作'

inputs:
mode:
description: '构建模式: release 或 snapshot'
required: true
default: 'snapshot'
go-version:
description: 'Go 版本'
required: false
default: '1.20'
retention-days:
description: '产物保留天数'
required: false
default: '7'
release-args:
description: '额外的 goreleaser 参数'
required: false
default: ''

runs:
using: 'composite'
steps:
- name: 设置 Go 环境
uses: actions/setup-go@v5
with:
go-version: ${{ inputs.go-version }}
cache: true

- name: 安装 C 编译工具
shell: bash
run: |
sudo apt-get update -qq
sudo apt-get install -y gcc make mingw-w64 gcc-multilib g++-multilib

- name: 下载依赖
shell: bash
run: |
go mod download
go mod verify

- name: 安装 UPX
uses: crazy-max/ghaction-upx@v3
with:
install-only: true

- name: 使用 GoReleaser 构建
uses: goreleaser/goreleaser-action@v6
with:
distribution: goreleaser
version: latest
args: release ${{ inputs.mode == 'snapshot' && '--snapshot' || '' }} --clean -f .github/conf/.goreleaser.yml ${{ inputs.release-args }}
env:
GITHUB_TOKEN: ${{ github.token }}
GITHUB_OWNER: ${{ github.repository_owner }}
GITHUB_REPO: ${{ github.event.repository.name }}
PROJECT_NAME: ${{ github.event.repository.name }}

- name: 上传产物
uses: actions/upload-artifact@v4
if: always()
with:
name: build-${{ inputs.mode }}-${{ github.run_id }}
path: |
dist/
dist-lite/
retention-days: ${{ inputs.retention-days }}

- name: 生成报告
shell: bash
if: always()
run: |
cat >> $GITHUB_STEP_SUMMARY << EOF
# 构建报告

| 项目 | 值 |
|------|-----|
| 模式 | \`${{ inputs.mode }}\` |
| 版本 | \`${GITHUB_REF_NAME}\` |
| 提交 | \`${GITHUB_SHA:0:7}\` |
| Go | \`$(go version | awk '{print $3}')\` |

## 构建产物

### fscan (Go 版本)
$(if [ -d "dist" ]; then
echo "- 文件数: $(find dist -type f 2>/dev/null | wc -l)"
echo "- 大小: $(du -sh dist 2>/dev/null | cut -f1)"
else
echo "- 无产物"
fi)

### fscan-lite (C 版本)
$(if [ -d "dist-lite" ]; then
echo "- 文件数: $(find dist-lite -type f 2>/dev/null | wc -l)"
echo "- 大小: $(du -sh dist-lite 2>/dev/null | cut -f1)"
else
echo "- 无产物"
fi)

[查看产物](https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }})
EOF
Loading
Loading