blitzstrike 2.4.96 → 2.4.98
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 +26 -0
- package/README.md +35 -8
- package/dist/index.js +227 -202
- package/intelligence/watchlist.json +352 -28
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,32 @@ 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.98] — 2026-09-17
|
|
9
|
+
|
|
10
|
+
### Added — fingerprint-first CVE matching wired into live_recon
|
|
11
|
+
|
|
12
|
+
- `live_recon()` now cross-references the detected stack (tech + headers +
|
|
13
|
+
body) against the CVE watchlist and returns `suggested_cves` + a
|
|
14
|
+
"FINGERPRINT MATCH" next-step: when the target matches a high-value
|
|
15
|
+
watchlist product (Next.js, Kibana, Langflow, Confluence/Jira, PAN-OS,
|
|
16
|
+
Grafana, Keycloak, …) it names the specific CVEs to test first (with EPSS)
|
|
17
|
+
instead of relying on generic scanning.
|
|
18
|
+
|
|
19
|
+
## [2.4.97] — 2026-09-17
|
|
20
|
+
|
|
21
|
+
### Added — hunting-intel upgrade (Hacktivity-ranked CVE watchlist + dedup doctrine)
|
|
22
|
+
|
|
23
|
+
- Upgraded `watchlist()` CVE data from a generic 9-CVE list to the 18
|
|
24
|
+
Hacktivity-ranked CVEs with EPSS, report counts, and per-CVE fingerprint
|
|
25
|
+
hints (Confluence OGNL RCE, Next.js middleware/RSC auth-bypass/RCE, Kibana
|
|
26
|
+
SSRF/authz, Langflow RCE, PAN-OS GlobalProtect, Grafana, Keycloak, Jira).
|
|
27
|
+
`watchlist()` now emits a "fingerprint-first" recommendation: if the target
|
|
28
|
+
stack matches a watchlist product, test that specific CVE instead of relying
|
|
29
|
+
on generic scanning.
|
|
30
|
+
- Added a `dedup_before_report` doctrine rule — search Hacktivity (and prior
|
|
31
|
+
public reports) for the same endpoint/tech/vuln class before writing the
|
|
32
|
+
report; the #1 cause of "Duplicate"/"N/A" rejections is not searching first.
|
|
33
|
+
|
|
8
34
|
## [2.4.96] — 2026-09-17
|
|
9
35
|
|
|
10
36
|
### 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 (
|
|
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
|
-
|
|
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 (
|
|
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`) —
|
|
379
|
-
|
|
380
|
-
the language (e.g. Java has no `eval`, Python/Java no
|
|
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
|
|
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
|
|