github.com/chainreactors/spray
v1.3.2
#2106 most downloaded on Go modules
chainreactors/spray
What this package is like to depend on
Last release 1 months ago
16 Jul 2026
Ships unpredictably
gaps range from 8 days to 6 months
Rarely documented
notes for 10 of 57 stable releases
Nothing withdrawn
no release was ever pulled
4 years old
95 releases · first in 2022
28 releases in the last 12 months
see the full history below
Release timeline
95 releases · Nov 2022 to Jul 2026Releases
latest 60 of 95-
v1.3.3-0.20260716153121-05f6082324e716 Jul 2026 pre-releaseNothing published for this version
-
v1.3.3-0.20260704194611-7ce7b850d44704 Jul 2026 pre-releaseNothing published for this version
-
v1.3.3-0.20260703125243-3bbfb5d1983a03 Jul 2026 pre-releaseNothing published for this version
-
v1.3.3-0.20260629055610-b618acf15bb629 Jun 2026 pre-releaseNothing published for this version
-
v1.3.227 Jun 2026Release notes
Open source →Changelog
Bug Fixes
- [fix] 修复
-q/--quiet未完全静默的问题:在配合--no-bar --no-stat使用时,不再继续向控制台打印[check]、[common]等结果输出,文件输出不受影响 - [fix] 修复
--crawl未遵守--max-length的问题:默认按配置限制读取响应体,避免爬取大页面时额外放大内存占用;如需完整读取可显式使用--read-all - [fix] 修复 Init 失败后仍继续运行爆破池的问题,避免初始化异常时继续发起无效请求
Dependencies & CI
- [deps] 升级 logs 依赖,获取 concurrent writer 修复
- [chore] 新增 issue bug report 模板,便于收集复现信息
Notes
- 本版本主要面向稳定性、内存控制和静默输出行为修复
Full Changelog: v1.3.1...v1.3.2
- [fix] 修复
-
v1.3.2-0.20260624034433-890630649b2b24 Jun 2026 pre-releaseNothing published for this version
-
v1.3.2-0.20260623181722-d98bed583cd723 Jun 2026 pre-releaseNothing published for this version
-
v1.3.123 Jun 2026Release notes
Open source →Changelog
Features
- [feat] 支持在所有请求字段中直接嵌入 mask 表达式(
{?...}/{$...}),包括-uURL、-HHeader、--host、--cookie、--path,自动提取 mask 生成字典并在请求构建时替换{{FUZZ}}占位符;同时支持显式-w搭配{{FUZZ}}占位符在任意字段中引用同一字典 - [feat] 新增
--keys插件,内嵌 156 条 proton found/keys 模板(覆盖 AWS/GCP/Azure/OpenAI/Slack/GitHub/Stripe 等),-a自动启用 - [feat] 增强 extract 系统:新增 severity 分级、上下文捕获(
--extract-context)、word matchers 预过滤,新增 9 条 HaE 规则(lfi-indicator/upload-form/url-as-value 等),模板总数 35→45 - [feat] 新增 ResourceLoader 机制,SDK 场景可控制资源加载行为,避免重复初始化
Bug Fixes
- [fix] 修复 Handler 处理中 wg 计数不完整导致 crawl-only 模式下提前 drain 的问题
- [fix] 修复 invalid baseline 跳过 extract 导致敏感数据(keys/recon)丢失的问题
- [fix] 修复 crawl source baseline 被 BaseCompare 误判为 invalid,导致递归爬虫中断
- [fix] 修复
--crawl在带 base path 的 SPA URL 中二次拼接路径,导致/base/base/...和 recon 漏提取的问题 - [fix] 修复 RunWithCheck 中 OutputCh 在 pool goroutine 结束前被关闭导致 panic
Dependencies & CI
- [deps] 升级 proxyclient 至 v1.1.0,更新 chainreactors 全系依赖
- [ci] 新增 dependabot 自动依赖更新配置
使用示例
# URL 内嵌 mask(等价于 -u http://example.com -w '{$l#3}') spray -u 'http://example.com/{$l#3}' # Header 内嵌 spray -u http://example.com -H 'Token: {$d#6}' # Host 内嵌 spray -u http://example.com --host '{$l#3}.internal.com' # Cookie 内嵌 spray -u http://example.com --cookie 'sid={$hex#16}' # 显式 -w + {{FUZZ}} 占位符(多字段同时替换) spray -u 'http://example.com/{{FUZZ}}' -w '{$d#6}' -H 'Token: {{FUZZ}}' # 敏感信息检测 spray -u http://example.com --keys spray -u http://example.com -a # advance 模式自动启用 keys
Full Changelog: v1.3.0...v1.3.1
- [feat] 支持在所有请求字段中直接嵌入 mask 表达式(
-
v1.3.1-0.20260622112616-712e89f9615822 Jun 2026 pre-releaseNothing published for this version
-
v1.3.1-0.20260616101714-a52580bd904016 Jun 2026 pre-releaseNothing published for this version
-
v1.3.1-0.20260608085629-66dafe7eab4f08 Jun 2026 pre-releaseNothing published for this version
-
v1.3.1-0.20260601084448-7faa2de1516a01 Jun 2026 pre-releaseNothing published for this version
-
v1.3.1-0.20260529172359-9caf4ee3567c29 May 2026 pre-releaseNothing published for this version
-
v1.3.026 May 2026Release notes
Open source →Changelog
- [feat] 新增
--poc插件,基于 neutron 引擎在指纹识别后自动进行漏洞验证,支持 check 模式(exploit 验证)和 brute 模式(默认口令测试),仅对匹配指纹的目标执行 POC,避免盲扫 - [feat] 模板资源从 base64 编码切换为
go:embed,源码体积从 125KB 降至 ~1KB + 93KB bin,二进制减小约 28KB,启动更快 - [feat] 新增 SDK 集成入口:暴露可复用的
RunWithArgs入口点,支持BeforePrepare/AfterPrepare生命周期回调与Help()函数,便于 aiscan 等外部项目集成 - [feat] 新增 resource provider 机制,允许外部覆盖内置资源加载
- [feat] 默认使用 core fingers 引擎
- [fix] 修复 Handler-reqPool 死锁:
doCheck()在 Handler goroutine 中调用reqPool.Invoke()导致循环等待,改为通过addAddition()提交请求打破循环依赖 - [fix] 修复并发安全与优雅关闭:
reqCount/failedCount改为atomic.Int64,done改为atomic.Bool,rand.Source加锁,Invoke失败正确回退 wg 计数 - [fix] 修复自适应过滤与统计逻辑,优化 BrutePool/CheckPool 过滤行为
- [fix] 修复 pool 关闭时
additionCh未排空导致wg.Wait挂起的问题 - [fix] 修复 monitor goroutine 竞态条件,简化并发模型
- [fix] 修复 pool 关闭时输出丢失的问题,确保 close 期间保留 pool outputs
- [fix] 增加
FingerEnginenil 检查与各初始化组件幂等性保护,防止 SDK 嵌入场景下 panic 或重复设置 - [fix] 新增 proton 模板加载器与嵌入资源
proton_rules.bin - [refactor] 强化 BrutePool 隔离性,统一 Runner channel 生命周期管理
- [chore] 更新 fingers/proton/utils 依赖,规范行尾符(CRLF → LF)
- [ci] 新增 CIDR E2E 测试与 pool 关闭回归测试,覆盖死锁、goroutine 泄漏等场景
Full Changelog: v1.2.6...v1.3.0
- [feat] 新增
-
v1.2.606 Mar 2026Release notes
Open source →Changelog
- [fix] 彻底修复生产环境
panic: send on closed channel崩溃,使用 ctx 作为统一关闭信号,所有 channel 发送均通过
select+ctx.Done()保护 - [fix] 修复
addAdditiondefault 分支 wg 泄漏,移除 async goroutine 改为同步阻塞发送 - [fix] 修复
BrutePool.Close()中analyzeDone条件写反导致忙等永不执行,替换为handlerDone chan机制 - [fix] 修复
processCh从未关闭导致 Handler goroutine 永久泄漏,Close()中正确关闭并等待 Handler 退出 - [fix] 修复
OutputCh/FuzzyCh/checkCh裸发送在关闭时可能永久阻塞的问题 - [fix] 修复
doCrawl孤儿wg.Add(1)无对应wg.Done()导致 wg 计数泄漏 - [fix] 修复
baseline.NewBaseline中 raw response 重解析失败导致 baseline 被错误标记为无效的问题,Location 改从 live
response 读取 - [ci] 新增 GitHub Actions CI,PR 时自动运行
go build+go test -race,覆盖 ubuntu 与 windows - [test] 新增 19 个 pool 关闭回归测试,覆盖死锁、goroutine 泄漏、wg 不平衡、并发关闭等场景
Full Changelog: v1.2.5...v1.2.6
- [fix] 彻底修复生产环境
-
v1.2.6-0.20260523083907-546e8ab7756a23 May 2026 pre-releaseNothing published for this version
-
v1.2.6-0.20260520032431-e945556997b520 May 2026 pre-releaseNothing published for this version
-
v1.2.6-0.20260520030531-482ea7dea1f320 May 2026 pre-releaseNothing published for this version
-
v1.2.6-0.20260518120729-f3f41e015ff518 May 2026 pre-releaseNothing published for this version
-
v1.2.6-0.20260516033251-c7466ebfc40616 May 2026 pre-releaseNothing published for this version
-
v1.2.6-0.20260508171256-e55ab50be33e08 May 2026 pre-releaseNothing published for this version
-
v1.2.512 Feb 2026Release notes
Open source →Changelog
- [feat] 支持
-o tree树形输出,便于按 Host/路径查看结果结构 - [feat] check 模式支持
--host/--path/-X/--body请求参数,定制化探测更灵活(相关场景: #120 ) - [fix] 修复
--recon在 v1.2.2+ 仅提取 pentest 标签导致 phone/mail/idcard 等信息缺失的问题,恢复信息提取能力,#132 - [fix] 修复 Host 爆破在部分场景不可用问题,
--host/host 模式下强制使用 standard client 避免错误 DNS 解析 - [fix] 修复 addAddition 死锁与 pool waitgroup negative count 并发问题,提升任务稳定性
- [fix] 修复请求 URL 安全拼接与 check 模式 redirect 路径处理,避免路径被错误覆盖
- [fix] 优化 Content-Type 解析逻辑,支持 vendor/structured 类型(例如
application/*+json) - [fix] 修复 statistor 初始化与统计写入逻辑,避免统计字段缺失并在结束后正确关闭输出通道
- [improve] 更新 fingers / neutron 依赖并补充
send_data主动探测路径加载,提升指纹覆盖 - [improve] 清理 Runner 与参数构建逻辑,FunctionOptions 在 Check 模式下增加显式校验提示
Full Changelog: v1.2.3...v1.2.5
- [feat] 支持
-
v1.2.5-0.20260128172729-c3971bea682728 Jan 2026 pre-releaseNothing published for this version
-
v1.2.421 Jan 2026 -
v1.2.4-0.20260121025911-4f08ee9640d721 Jan 2026 pre-releaseNothing published for this version
-
v1.2.4-0.20251205170859-986158c72a4905 Dec 2025 pre-releaseNothing published for this version
-
v1.2.304 Dec 2025Release notes
Open source →Changelog
- [feat] support --finger-file to dynamically load finger configurations from local file or remote URL,
simplifying finger database management - [feat] add --host flag to customize Host header for virtual host testing,
#120 - [fix] fix request body not being sent in HTTP requests, #113
- [fix] fix frameworks fingerprint matching panic caused by incorrect method call,
#117 - [fix] fix raw query parameters causing panic in URL parsing, #125
- [fix] fix stat file not being created and saved correctly in check mode
- [fix] fix checkpool deadlock issue by increasing channel buffer sizes and optimizing redirect handling
- [improve] refactor config table display using lipgloss table for better readability and formatting
- [improve] optimize HTTP request building with new RequestConfig structure supporting custom host and body
Full Changelog: v1.2.2...v1.2.3
- [feat] support --finger-file to dynamically load finger configurations from local file or remote URL,
-
v1.2.3-0.20250606053001-dfa3b2da56c406 Jun 2025 pre-releaseNothing published for this version
-
v1.2.205 Jun 2025Release notes
Open source →Changelog
- [feat] 支持通配符状态码, example:
--black-status +40*,51*,3*, #38 - [feat] support unique when format result, #104
- [feat] 新增插件fuzzuli generate algorithm 生成备份文件字典, example:
--fuzziluor-a中包含此插件 - [fix] null word not continue, #108
- [fix] fix log not print when exit
- [fix] csv format , #97
- [fix] crawl and url not print
- [fix] cicd releaser
- [fix] addition word not safe join path, #106
- [fix] -e not expect , #108
- [fix] extractor not save to file, #81
- [improve] add black,white,unique short flag
- [improve]
append-ruleadd short flag-R
Full Changelog: v1.2.1...v1.2.2
- [feat] 支持通配符状态码, example:
-
v1.2.2-0.20250410113021-fb63ed010c3110 Apr 2025 pre-releaseNothing published for this version
-
v1.2.2-0.20250304071037-0d700f8ea08204 Mar 2025 pre-releaseNothing published for this version
-
v1.2.104 Mar 2025Release notes
Open source →Changelog
- b13903e fix: map panic, #93
- 08ce95b fix: check pool not set headers
- c746c26 fix: brute init not set header, #94
Full Changelog: v1.2.0...v1.2.1
-
v1.2.1-0.20250222160833-e951b68e759b22 Feb 2025 pre-releaseNothing published for this version
-
v1.2.022 Feb 2025Nothing published for this version
-
v1.1.7-0.20241101055413-7621514bd96501 Nov 2024 pre-releaseNothing published for this version
-
v1.1.601 Nov 2024Nothing published for this version
-
v1.1.530 Oct 2024Nothing published for this version
-
v1.1.413 Oct 2024Nothing published for this version
-
v1.1.4-0.20240928025807-2a68d0b49b7c28 Sep 2024 pre-releaseNothing published for this version
-
v1.1.323 Sep 2024Nothing published for this version
-
v1.1.3-0.20240910100359-2f28b0ec3c7410 Sep 2024 pre-releaseNothing published for this version
-
v1.1.210 Sep 2024Nothing published for this version
-
v1.1.128 Aug 2024Nothing published for this version
-
v1.1.1-0.20240827063040-f6037d7a1e9f27 Aug 2024 pre-releaseNothing published for this version
-
v1.1.025 Aug 2024Nothing published for this version
-
v1.0.3-0.20240820085355-bf6d1c5f0ba520 Aug 2024 pre-releaseNothing published for this version
-
v1.0.220 Aug 2024Nothing published for this version
-
v1.0.2-0.20240806085300-8bf4b374ac3206 Aug 2024 pre-releaseNothing published for this version
-
v1.0.106 Aug 2024Nothing published for this version
-
v1.0.1-0.20240806085300-8bf4b374ac3206 Aug 2024 pre-releaseNothing published for this version
-
v1.0.024 Jul 2024Nothing published for this version
-
v0.9.10-0.20240704074023-bb981102923804 Jul 2024 pre-releaseNothing published for this version
-
v0.9.904 Jul 2024Nothing published for this version
-
v0.9.823 Jun 2024Nothing published for this version
-
v0.9.721 May 2024Nothing published for this version
-
v0.9.607 Mar 2024Nothing published for this version
-
v0.9.6-0.20240304120557-c4d4efe6b74c04 Mar 2024 pre-releaseNothing published for this version
-
v0.9.504 Mar 2024Nothing published for this version
-
v0.9.420 Feb 2024Nothing published for this version
-
v0.9.4-0.20240220111756-4e28fb59b44720 Feb 2024 pre-releaseNothing published for this version