blitzstrike 2.4.96 → 2.4.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,21 @@ All notable changes to Blitz Strike are documented here.
5
5
  The format follows [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/).
7
7
 
8
+ ## [2.4.97] — 2026-09-17
9
+
10
+ ### Added — bugbounty-lab101 knowledge extraction (watchlist upgrade + dedup doctrine)
11
+
12
+ - Upgraded `watchlist()` CVE data from a generic 9-CVE list to the 18
13
+ Hacktivity-ranked CVEs with EPSS, report counts, and per-CVE fingerprint
14
+ hints (Confluence OGNL RCE, Next.js middleware/RSC auth-bypass/RCE, Kibana
15
+ SSRF/authz, Langflow RCE, PAN-OS GlobalProtect, Grafana, Keycloak, Jira).
16
+ `watchlist()` now emits a "fingerprint-first" recommendation: if the target
17
+ stack matches a watchlist product, test that specific CVE instead of relying
18
+ on generic scanning.
19
+ - Added a `dedup_before_report` doctrine rule — search Hacktivity (and prior
20
+ public reports) for the same endpoint/tech/vuln class before writing the
21
+ report; the #1 cause of "Duplicate"/"N/A" rejections is not searching first.
22
+
8
23
  ## [2.4.96] — 2026-09-17
9
24
 
10
25
  ### Security — self-audit (command injection + path traversal fixed)
package/README.md CHANGED
@@ -52,6 +52,13 @@ source analysis, and validation — into three tool tiers executed server-side.
52
52
  Reconnaissance → analysis → validation. Nothing is reported until STRIKE
53
53
  confirms it.
54
54
 
55
+ Beyond the three tiers, Blitz Strike also ships **Web3 audit** (deterministic
56
+ Solidity + executable Foundry proof), a **live logic-bug prober** (sibling
57
+ enumeration + differential IDOR), **hunting intel** (CWE/CVE watchlist + DNS
58
+ sinkhole detection), and **out-of-band proof** — so IDOR/auth logic bugs, blind
59
+ injection, and smart-contract findings are all caught and proven, not just
60
+ pattern-matched.
61
+
55
62
  ---
56
63
 
57
64
  ## Autonomous, LLM-driven
@@ -220,7 +227,7 @@ MCP servers. With no client detected, it prints the snippet for manual paste.
220
227
  | `dedup_findings(findings)` | Collapse findings that share a root cause (sink × source × CWE) into one group per root cause. |
221
228
  | `generate_report(findings, format)` | Emit a reproducible markdown/JSON report with summary + SHA-256 integrity hash. |
222
229
  | `run_enterprise_benchmark()` | Run the labelled enterprise corpus and report detection rate, false-positive rate, and precision. |
223
- | `coverage_matrix()` | Enumerate language × sink-class coverage (4 languages × 15 sink classes) + coverage ratio. |
230
+ | `coverage_matrix()` | Enumerate language × sink-class coverage (5 languages) + coverage ratio. |
224
231
 
225
232
  ### EAGLE-EYE — taint + data-flow
226
233
 
@@ -263,6 +270,26 @@ decoration — they are wired into the flow:
263
270
  - `tool_lookup(name)` auto-attaches the tool's full manual.
264
271
  - `run_engagement()` attaches the relevant manual per matched chain's `tools` field.
265
272
 
273
+ ### WEB3 — smart-contract audit + proof
274
+
275
+ | Tool | Purpose |
276
+ |---|---|
277
+ | `web3_audit(code, path)` | Deterministic Solidity audit — 13 bug classes (reentrancy incl. ERC721/ERC1155 callbacks, unchecked return/arithmetic, tx.origin auth, signature replay, selfdestruct, delegatecall, missing access control, timestamp dependence, spot-price oracle, unbounded loop, encodePacked collision, missing address(0) check) with CWE + severity + line refs. |
278
+ | `foundry_poc(class, contract)` | Generate an executable Foundry test that PROVES a Web3 finding. |
279
+ | `foundry_run(contract_code, poc_code, class_)` | Actually run the Foundry PoC (`forge test`) — a PASSING test = exploit reproduced (deterministic: forge's own verdict). |
280
+
281
+ ### HUNTING — doctrine + live logic-bug prober + intel
282
+
283
+ | Tool | Purpose |
284
+ |---|---|
285
+ | `hunting_doctrine()` | High-ROI heuristics — sibling rule, A→B signal, two-account IDOR, PoC escalation, follow-the-money + the always-rejected kill-list. |
286
+ | `kill_list(type)` | Deterministic always-rejected check — missing headers, self-XSS, open-redirect-alone, SSRF-DNS-only, GraphQL-introspection-alone are N/A standalone. |
287
+ | `sibling_scan(base_url, endpoint, token_a, token_b)` | Deterministic LIVE logic-bug prober — sibling enumeration + differential IDOR + auth matrix + mass assignment + rate limit (closes the static-analysis gap on IDOR/auth logic bugs). |
288
+ | `auto_poc(type, base_url, endpoint, param)` | Turn a finding into a copy-paste-ready reproduction recipe (marker + negative control + expected differential + Patchstack-style title). |
289
+ | `watchlist()` | Ranked CWE frequency + high-value CVE watchlist with payout + saturated flag — "what to hunt next". |
290
+ | `resolve_check(host)` | Detect an ISP/country DNS sinkhole (blocking page) before auditing a sensitive-niche domain. |
291
+ | `oob_start()` / `oob_poll(id)` / `oob_stop(id)` | Out-of-band proof — interactsh listener for blind SSRF/XXE/SQLi/command-injection (the canary must actually arrive). |
292
+
266
293
  ### MEMORY — long-term knowledge (self-growing)
267
294
 
268
295
  | Tool | Purpose |
@@ -325,7 +352,7 @@ See `ATTRIBUTION.md` for full license/copyright notices.
325
352
 
326
353
  ## Escalation Chains (chains.json)
327
354
 
328
- 57 data-driven escalation chains, each with ordered steps carrying:
355
+ 58 data-driven escalation chains, each with ordered steps carrying:
329
356
 
330
357
  - `tool_hint` — which Blitz Strike tool to use
331
358
  - `success_criteria` — binary observable for the step
@@ -361,7 +388,7 @@ All other tools need no credentials.
361
388
  bun install # deps
362
389
  bun run typecheck # tsc --noEmit
363
390
  bun run build # ESM bundle → dist/index.js
364
- bun run test # regression + benchmark suite (183 checks)
391
+ bun run test # regression + benchmark suite (453 checks)
365
392
  bun run compile # single static binary → dist/blitzstrike
366
393
  ```
367
394
 
@@ -375,14 +402,14 @@ number you can re-run, not a claim.
375
402
  - **Benchmark** (`run_enterprise_benchmark`) — a labelled corpus of vulnerable +
376
403
  safe fixtures across PHP, JavaScript, Python, and Java. Current result:
377
404
  detection rate **1.0**, false-positive rate **0**, precision **1.0**.
378
- - **Coverage matrix** (`coverage_matrix`) — 4 languages × 15 sink classes =
379
- 56/60 pairs covered. The four uncovered pairs are legitimately absent from
380
- the language (e.g. Java has no `eval`, Python/Java no PHP-style file
381
- inclusion, JS no deserialization sink).
405
+ - **Coverage matrix** (`coverage_matrix`) — 5 languages × sink classes = 84%
406
+ coverage (php, javascript, python, java, rust). Uncovered pairs are
407
+ legitimately absent from the language (e.g. Java has no `eval`, Python/Java no
408
+ PHP-style file inclusion, JS no deserialization sink).
382
409
  - **Attack-vector taxonomy** (`list_attack_vectors` / `attack_vectors`) — a
383
410
  master reference of 34 attack-vector categories (588 vectors) so a driving
384
411
  agent can map the *entire* attack surface, not just the obvious sinks.
385
- - **Regression suite** — `bun run test` runs 183 checks covering finding
412
+ - **Regression suite** — `bun run test` runs 453 checks covering finding
386
413
  lifecycle, evidence integrity, CVSS math, taint tracing, dedup, report
387
414
  integrity, and benchmark invariants. CI runs it on every push.
388
415
 
package/dist/index.js CHANGED
@@ -60943,6 +60943,11 @@ var HUNTING_DOCTRINE = [
60943
60943
  id: "rotation",
60944
60944
  title: "20-Minute Rotation",
60945
60945
  rule: "Every 20 minutes ask 'am I making progress?'. No → rotate to the next endpoint / subdomain / class. Fresh context finds more bugs than brute force."
60946
+ },
60947
+ {
60948
+ id: "dedup_before_report",
60949
+ title: "Search for Duplicates Before Reporting",
60950
+ rule: "The #1 cause of 'Duplicate'/'N/A' rejections is not searching first. Before writing the report, search Hacktivity (and the program's prior public reports) for the same endpoint/tech/vuln class; an already-reported open S3 bucket, CORS misconfig, or XSS param is not worth a second report. Only submit what is genuinely new."
60946
60951
  }
60947
60952
  ];
60948
60953
  function huntingDoctrine() {
@@ -61567,7 +61572,8 @@ function watchlist() {
61567
61572
  };
61568
61573
  }).sort((a, b) => a.rank - b.rank);
61569
61574
  const unsaturated = entries.filter((e) => !e.saturated);
61570
- const recommendation = `Prioritize the ${unsaturated.length} non-saturated classes (top: ${unsaturated.slice(0, 3).map((e) => e.cwe).join(", ")}) — high frequency + high payout + not yet saturated. Skip saturated/low-value classes (XSS/CSRF/open-redirect standalone) unless they chain into account takeover.`;
61575
+ const topCve = cve_watchlist.filter((c) => (c.epss ?? 0) >= 0.8 || (c.reports ?? 0) >= 100).slice(0, 4).map((c) => c.cve).join(", ");
61576
+ const recommendation = `Prioritize the ${unsaturated.length} non-saturated classes (top: ${unsaturated.slice(0, 3).map((e) => e.cwe).join(", ")}) — high frequency + high payout + not yet saturated. Skip saturated/low-value classes (XSS/CSRF/open-redirect standalone) unless they chain into account takeover. FINGERPRINT FIRST: if the target stack matches a watchlist product (Next.js, Kibana, Langflow, Confluence/Jira, PAN-OS, Grafana), test that specific CVE — top EPSS/report CVEs: ${topCve}.`;
61571
61577
  return { cwe_frequency: entries, cve_watchlist, recommendation };
61572
61578
  }
61573
61579
 
@@ -1,33 +1,339 @@
1
1
  {
2
- "_comment": "Bug-bounty disclosure frequency + payout watchlist. Derived from public disclosure statistics (HackerOne Hacktivity / CWE Top 25) and typical bounty ranges — a 'what to hunt next' signal, not a vulnerability database. Each CWE entry links to a Blitz Strike detector pattern when one exists (grounding via pattern_lookup).",
2
+ "_comment": "Bug-bounty disclosure frequency + payout watchlist. Derived from public disclosure statistics (HackerOne Hacktivity / CWE Top 25) and typical bounty ranges \u2014 a 'what to hunt next' signal, not a vulnerability database. Each CWE entry links to a Blitz Strike detector pattern when one exists (grounding via pattern_lookup).",
3
3
  "cwe_frequency": [
4
- { "cwe": "CWE-79", "name": "Cross-site Scripting (XSS)", "rank": 1, "saturated": true, "pattern": "xss", "payout_min": 100, "payout_max": 2500, "notes": "Most-reported class; heavily automated and low-paying — hunt only for high-impact variants (stored/account-takeover)." },
5
- { "cwe": "CWE-862", "name": "Missing Authorization / IDOR", "rank": 2, "saturated": false, "pattern": "missing_authz", "payout_min": 1000, "payout_max": 10000, "notes": "~30% of paid access-control bugs; sibling rule + two-account test are the highest-ROI moves." },
6
- { "cwe": "CWE-284", "name": "Improper Access Control (priv-esc)", "rank": 3, "saturated": false, "pattern": "priv_esc", "payout_min": 1000, "payout_max": 15000, "notes": "Role/privilege escalation; mass assignment + forced membership are under-hunted." },
7
- { "cwe": "CWE-89", "name": "SQL Injection", "rank": 4, "saturated": false, "pattern": "sql_injection", "payout_min": 1000, "payout_max": 15000, "notes": "Still high-value where it reaches a real query; WAF bypass + second-order matter." },
8
- { "cwe": "CWE-918", "name": "Server-Side Request Forgery (SSRF)", "rank": 5, "saturated": false, "pattern": "ssrf", "payout_min": 1000, "payout_max": 15000, "notes": "P1 when it hits cloud metadata; proof = internal response or OOB callback." },
9
- { "cwe": "CWE-78", "name": "OS Command Injection", "rank": 6, "saturated": false, "pattern": "command_injection", "payout_min": 1000, "payout_max": 15000, "notes": "Critical class; less common than XSS/SQLi but very high impact." },
10
- { "cwe": "CWE-502", "name": "Insecure Deserialization", "rank": 7, "saturated": false, "pattern": "deserialization", "payout_min": 5000, "payout_max": 30000, "notes": "Highest per-finding payout; needs a gadget chain but very rewarded." },
11
- { "cwe": "CWE-94", "name": "Code Injection / eval", "rank": 8, "saturated": false, "pattern": "command_injection", "payout_min": 1000, "payout_max": 15000, "notes": "eval/exec with user input; folds into RCE umbrella." },
12
- { "cwe": "CWE-434", "name": "Unrestricted File Upload", "rank": 9, "saturated": false, "pattern": "file_upload", "payout_min": 1000, "payout_max": 10000, "notes": "Upload → RCE chains pay well; confirm the file actually executes." },
13
- { "cwe": "CWE-611", "name": "XML External Entity (XXE)", "rank": 10, "saturated": false, "pattern": "xxe", "payout_min": 1000, "payout_max": 10000, "notes": "Less common post-2020 but still found in SOAP/XML upload flows." },
14
- { "cwe": "CWE-287", "name": "Authentication Bypass", "rank": 11, "saturated": false, "pattern": "type_juggling", "payout_min": 1000, "payout_max": 15000, "notes": "Loose comparison / JWT confusion / OAuth misconfig — account takeover class." },
15
- { "cwe": "CWE-798", "name": "Hardcoded Credentials", "rank": 12, "saturated": false, "pattern": "hardcoded_secret", "payout_min": 500, "payout_max": 10000, "notes": "Committed keys are common in JS bundles + .git history; prove the key is ACTIVE." },
16
- { "cwe": "CWE-22", "name": "Path Traversal / LFI", "rank": 13, "saturated": true, "pattern": "path_confusion", "payout_min": 500, "payout_max": 5000, "notes": "Saturated; value only when it chains to RCE (log poisoning, session files)." },
17
- { "cwe": "CWE-601", "name": "Open Redirect", "rank": 14, "saturated": true, "pattern": "oauth_misconfig", "payout_min": 100, "payout_max": 1500, "notes": "Standalone is usually N/A; value only chained into OAuth/token theft." },
18
- { "cwe": "CWE-352", "name": "Cross-Site Request Forgery (CSRF)", "rank": 15, "saturated": true, "pattern": "missing_nonce", "payout_min": 100, "payout_max": 2000, "notes": "Saturated + low; only for high-impact state changes (password/email/transfer)." },
19
- { "cwe": "CWE-200", "name": "Information Exposure", "rank": 16, "saturated": true, "pattern": "hardcoded_secret", "payout_min": 100, "payout_max": 2000, "notes": "Excessive data exposure / verbose errors; usually a chain enabler, not a standalone bounty." },
20
- { "cwe": "CWE-400", "name": "Denial of Service / rate-limit", "rank": 17, "saturated": true, "pattern": null, "payout_min": 100, "payout_max": 1000, "notes": "Usually out of scope standalone; relevant only for business-critical flows." }
4
+ {
5
+ "cwe": "CWE-79",
6
+ "name": "Cross-site Scripting (XSS)",
7
+ "rank": 1,
8
+ "saturated": true,
9
+ "pattern": "xss",
10
+ "payout_min": 100,
11
+ "payout_max": 2500,
12
+ "notes": "Most-reported class; heavily automated and low-paying \u2014 hunt only for high-impact variants (stored/account-takeover)."
13
+ },
14
+ {
15
+ "cwe": "CWE-862",
16
+ "name": "Missing Authorization / IDOR",
17
+ "rank": 2,
18
+ "saturated": false,
19
+ "pattern": "missing_authz",
20
+ "payout_min": 1000,
21
+ "payout_max": 10000,
22
+ "notes": "~30% of paid access-control bugs; sibling rule + two-account test are the highest-ROI moves."
23
+ },
24
+ {
25
+ "cwe": "CWE-284",
26
+ "name": "Improper Access Control (priv-esc)",
27
+ "rank": 3,
28
+ "saturated": false,
29
+ "pattern": "priv_esc",
30
+ "payout_min": 1000,
31
+ "payout_max": 15000,
32
+ "notes": "Role/privilege escalation; mass assignment + forced membership are under-hunted."
33
+ },
34
+ {
35
+ "cwe": "CWE-89",
36
+ "name": "SQL Injection",
37
+ "rank": 4,
38
+ "saturated": false,
39
+ "pattern": "sql_injection",
40
+ "payout_min": 1000,
41
+ "payout_max": 15000,
42
+ "notes": "Still high-value where it reaches a real query; WAF bypass + second-order matter."
43
+ },
44
+ {
45
+ "cwe": "CWE-918",
46
+ "name": "Server-Side Request Forgery (SSRF)",
47
+ "rank": 5,
48
+ "saturated": false,
49
+ "pattern": "ssrf",
50
+ "payout_min": 1000,
51
+ "payout_max": 15000,
52
+ "notes": "P1 when it hits cloud metadata; proof = internal response or OOB callback."
53
+ },
54
+ {
55
+ "cwe": "CWE-78",
56
+ "name": "OS Command Injection",
57
+ "rank": 6,
58
+ "saturated": false,
59
+ "pattern": "command_injection",
60
+ "payout_min": 1000,
61
+ "payout_max": 15000,
62
+ "notes": "Critical class; less common than XSS/SQLi but very high impact."
63
+ },
64
+ {
65
+ "cwe": "CWE-502",
66
+ "name": "Insecure Deserialization",
67
+ "rank": 7,
68
+ "saturated": false,
69
+ "pattern": "deserialization",
70
+ "payout_min": 5000,
71
+ "payout_max": 30000,
72
+ "notes": "Highest per-finding payout; needs a gadget chain but very rewarded."
73
+ },
74
+ {
75
+ "cwe": "CWE-94",
76
+ "name": "Code Injection / eval",
77
+ "rank": 8,
78
+ "saturated": false,
79
+ "pattern": "command_injection",
80
+ "payout_min": 1000,
81
+ "payout_max": 15000,
82
+ "notes": "eval/exec with user input; folds into RCE umbrella."
83
+ },
84
+ {
85
+ "cwe": "CWE-434",
86
+ "name": "Unrestricted File Upload",
87
+ "rank": 9,
88
+ "saturated": false,
89
+ "pattern": "file_upload",
90
+ "payout_min": 1000,
91
+ "payout_max": 10000,
92
+ "notes": "Upload \u2192 RCE chains pay well; confirm the file actually executes."
93
+ },
94
+ {
95
+ "cwe": "CWE-611",
96
+ "name": "XML External Entity (XXE)",
97
+ "rank": 10,
98
+ "saturated": false,
99
+ "pattern": "xxe",
100
+ "payout_min": 1000,
101
+ "payout_max": 10000,
102
+ "notes": "Less common post-2020 but still found in SOAP/XML upload flows."
103
+ },
104
+ {
105
+ "cwe": "CWE-287",
106
+ "name": "Authentication Bypass",
107
+ "rank": 11,
108
+ "saturated": false,
109
+ "pattern": "type_juggling",
110
+ "payout_min": 1000,
111
+ "payout_max": 15000,
112
+ "notes": "Loose comparison / JWT confusion / OAuth misconfig \u2014 account takeover class."
113
+ },
114
+ {
115
+ "cwe": "CWE-798",
116
+ "name": "Hardcoded Credentials",
117
+ "rank": 12,
118
+ "saturated": false,
119
+ "pattern": "hardcoded_secret",
120
+ "payout_min": 500,
121
+ "payout_max": 10000,
122
+ "notes": "Committed keys are common in JS bundles + .git history; prove the key is ACTIVE."
123
+ },
124
+ {
125
+ "cwe": "CWE-22",
126
+ "name": "Path Traversal / LFI",
127
+ "rank": 13,
128
+ "saturated": true,
129
+ "pattern": "path_confusion",
130
+ "payout_min": 500,
131
+ "payout_max": 5000,
132
+ "notes": "Saturated; value only when it chains to RCE (log poisoning, session files)."
133
+ },
134
+ {
135
+ "cwe": "CWE-601",
136
+ "name": "Open Redirect",
137
+ "rank": 14,
138
+ "saturated": true,
139
+ "pattern": "oauth_misconfig",
140
+ "payout_min": 100,
141
+ "payout_max": 1500,
142
+ "notes": "Standalone is usually N/A; value only chained into OAuth/token theft."
143
+ },
144
+ {
145
+ "cwe": "CWE-352",
146
+ "name": "Cross-Site Request Forgery (CSRF)",
147
+ "rank": 15,
148
+ "saturated": true,
149
+ "pattern": "missing_nonce",
150
+ "payout_min": 100,
151
+ "payout_max": 2000,
152
+ "notes": "Saturated + low; only for high-impact state changes (password/email/transfer)."
153
+ },
154
+ {
155
+ "cwe": "CWE-200",
156
+ "name": "Information Exposure",
157
+ "rank": 16,
158
+ "saturated": true,
159
+ "pattern": "hardcoded_secret",
160
+ "payout_min": 100,
161
+ "payout_max": 2000,
162
+ "notes": "Excessive data exposure / verbose errors; usually a chain enabler, not a standalone bounty."
163
+ },
164
+ {
165
+ "cwe": "CWE-400",
166
+ "name": "Denial of Service / rate-limit",
167
+ "rank": 17,
168
+ "saturated": true,
169
+ "pattern": null,
170
+ "payout_min": 100,
171
+ "payout_max": 1000,
172
+ "notes": "Usually out of scope standalone; relevant only for business-critical flows."
173
+ }
21
174
  ],
22
175
  "cve_watchlist": [
23
- { "cve": "CVE-2021-44228", "name": "Log4Shell", "product": "Apache Log4j 2", "class": "RCE", "payout_hint": "critical" },
24
- { "cve": "CVE-2022-22965", "name": "Spring4Shell", "product": "Spring Framework", "class": "RCE", "payout_hint": "critical" },
25
- { "cve": "CVE-2021-41773", "name": "Apache path traversal", "product": "Apache httpd 2.4.49", "class": "Path traversal / RCE", "payout_hint": "high" },
26
- { "cve": "CVE-2023-22518", "name": "Confluence auth bypass", "product": "Atlassian Confluence", "class": "Auth bypass", "payout_hint": "high" },
27
- { "cve": "CVE-2024-27198", "name": "TeamCity auth bypass", "product": "JetBrains TeamCity", "class": "Auth bypass / RCE", "payout_hint": "high" },
28
- { "cve": "CVE-2023-34362", "name": "MOVEit SQLi", "product": "Progress MOVEit", "class": "SQL injection", "payout_hint": "critical" },
29
- { "cve": "CVE-2022-42475", "name": "Fortinet SSL-VPN", "product": "FortiOS", "class": "RCE", "payout_hint": "critical" },
30
- { "cve": "CVE-2023-27997", "name": "Fortinet SSL-VPN pre-auth", "product": "FortiOS", "class": "RCE", "payout_hint": "critical" },
31
- { "cve": "CVE-2024-6387", "name": "regreSSHion", "product": "OpenSSH", "class": "RCE (race)", "payout_hint": "critical" }
176
+ {
177
+ "cve": "CVE-2021-26084",
178
+ "name": "Confluence OGNL injection RCE",
179
+ "product": "Atlassian Confluence",
180
+ "class": "rce",
181
+ "epss": 1.0,
182
+ "reports": 2669,
183
+ "fingerprint": "Confluence (Server/Data Center) \u2014 /login.action, confluence headers"
184
+ },
185
+ {
186
+ "cve": "CVE-2025-29927",
187
+ "name": "Next.js middleware auth bypass",
188
+ "product": "Next.js",
189
+ "class": "auth_bypass",
190
+ "epss": 0.9962,
191
+ "reports": 132,
192
+ "fingerprint": "_next/static/chunks/ bundles; x-middleware-subrequest header"
193
+ },
194
+ {
195
+ "cve": "CVE-2025-55182",
196
+ "name": "Next.js RSC pre-auth RCE (deserialization)",
197
+ "product": "Next.js / React Server Components",
198
+ "class": "rce",
199
+ "epss": 0.9956,
200
+ "reports": 415,
201
+ "fingerprint": "_next/ + Server Function / flight endpoints"
202
+ },
203
+ {
204
+ "cve": "CVE-2025-3248",
205
+ "name": "Langflow unauth code injection",
206
+ "product": "Langflow",
207
+ "class": "rce",
208
+ "epss": 0.9997,
209
+ "reports": 29,
210
+ "fingerprint": "/api/v1/validate/code \u2014 AI/agent tooling"
211
+ },
212
+ {
213
+ "cve": "CVE-2024-34351",
214
+ "name": "Next.js Server Actions SSRF",
215
+ "product": "Next.js",
216
+ "class": "ssrf",
217
+ "epss": 0.0545,
218
+ "reports": 50,
219
+ "fingerprint": "Next.js Server Actions (Host header + relative redirect)"
220
+ },
221
+ {
222
+ "cve": "CVE-2025-0133",
223
+ "name": "PAN-OS GlobalProtect portal XSS",
224
+ "product": "Palo Alto PAN-OS",
225
+ "class": "xss",
226
+ "epss": 0.4352,
227
+ "reports": 1990,
228
+ "fingerprint": "GlobalProtect captive portal"
229
+ },
230
+ {
231
+ "cve": "CVE-2026-0257",
232
+ "name": "PAN-OS GlobalProtect auth bypass",
233
+ "product": "Palo Alto PAN-OS / Prisma",
234
+ "class": "auth_bypass",
235
+ "epss": 0.8668,
236
+ "reports": 27,
237
+ "fingerprint": "GlobalProtect portal/gateway"
238
+ },
239
+ {
240
+ "cve": "CVE-2025-4123",
241
+ "name": "Grafana XSS \u2192 SSRF chain",
242
+ "product": "Grafana",
243
+ "class": "xss",
244
+ "epss": 0.9781,
245
+ "reports": 220,
246
+ "fingerprint": "Grafana path traversal + open redirect (Image Renderer)"
247
+ },
248
+ {
249
+ "cve": "CVE-2021-20323",
250
+ "name": "Keycloak reflected XSS (POST)",
251
+ "product": "Keycloak (Red Hat)",
252
+ "class": "xss",
253
+ "epss": 0.3725,
254
+ "reports": 107,
255
+ "fingerprint": "Keycloak auth flows"
256
+ },
257
+ {
258
+ "cve": "CVE-2018-5230",
259
+ "name": "Jira issue collector XSS",
260
+ "product": "Atlassian Jira",
261
+ "class": "xss",
262
+ "epss": 0.3761,
263
+ "reports": 4694,
264
+ "fingerprint": "Jira /issuecollector custom fields"
265
+ },
266
+ {
267
+ "cve": "CVE-2026-33461",
268
+ "name": "Kibana Fleet endpoint authz (key/token leak)",
269
+ "product": "Elastic Kibana",
270
+ "class": "auth_bypass",
271
+ "epss": 0.0028,
272
+ "reports": 8,
273
+ "fingerprint": "Kibana internal Fleet endpoints"
274
+ },
275
+ {
276
+ "cve": "CVE-2026-49093",
277
+ "name": "Kibana egress connector SSRF",
278
+ "product": "Elastic Kibana",
279
+ "class": "ssrf",
280
+ "epss": 0.002,
281
+ "reports": 5,
282
+ "fingerprint": "Kibana connectors / allowlist bypass"
283
+ },
284
+ {
285
+ "cve": "CVE-2026-26938",
286
+ "name": "Kibana Workflows template injection \u2192 file read/SSRF",
287
+ "product": "Elastic Kibana",
288
+ "class": "ssti",
289
+ "epss": 0.0025,
290
+ "reports": 5,
291
+ "fingerprint": "Kibana Workflows"
292
+ },
293
+ {
294
+ "cve": "CVE-2026-33068",
295
+ "name": "Claude Code bypassPermissions via .claude/settings.json",
296
+ "product": "Claude Code",
297
+ "class": "priv_esc",
298
+ "epss": 0.0034,
299
+ "reports": 5,
300
+ "fingerprint": "repo .claude/settings.json"
301
+ },
302
+ {
303
+ "cve": "CVE-2025-25297",
304
+ "name": "Label Studio S3 endpoint SSRF",
305
+ "product": "Label Studio",
306
+ "class": "ssrf",
307
+ "epss": 0.0062,
308
+ "reports": 2,
309
+ "fingerprint": "Label Studio S3 integration"
310
+ },
311
+ {
312
+ "cve": "CVE-2026-33309",
313
+ "name": "Langflow arbitrary file write \u2192 RCE",
314
+ "product": "Langflow",
315
+ "class": "file_upload",
316
+ "epss": 0.0142,
317
+ "reports": 6,
318
+ "fingerprint": "Langflow multipart upload filename"
319
+ },
320
+ {
321
+ "cve": "CVE-2026-45543",
322
+ "name": "Nextcloud Forms collaborator read retention",
323
+ "product": "Nextcloud Forms",
324
+ "class": "missing_authz",
325
+ "epss": 0.0027,
326
+ "reports": 5,
327
+ "fingerprint": "Nextcloud Forms collaborator removal"
328
+ },
329
+ {
330
+ "cve": "CVE-2017-15277",
331
+ "name": "ImageMagick GIF palette memory leak",
332
+ "product": "ImageMagick / GraphicsMagick",
333
+ "class": "infoleak",
334
+ "epss": 0.1919,
335
+ "reports": 5914,
336
+ "fingerprint": "image processing (GIF upload)"
337
+ }
32
338
  ]
33
- }
339
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blitzstrike",
3
- "version": "2.4.96",
3
+ "version": "2.4.97",
4
4
  "description": "Blitz Strike — a universal MCP security-audit toolbelt. BLITZ sweeps the attack surface, EAGLE-EYE traces source-to-sink, STRIKE verifies live. 57 attack chains, 130-tool catalog, intelligence data layer. One server, every agent.",
5
5
  "type": "module",
6
6
  "bin": {