blitzstrike 2.4.167 → 2.4.168

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,20 @@ 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.168] — 2026-10-11
9
+
10
+ ### Fixed — blind_sqli_extract: space extraction + drift-proof time fallback
11
+
12
+ - Added SPACE (+ parens/comma) to the extraction linear-fallback charset, so
13
+ version/database strings with embedded spaces (e.g. "Microsoft SQL Server 2012")
14
+ extract fully instead of stopping at the first space.
15
+ - Auto-fall back to the TIME oracle when a marker-less byte-count boolean oracle
16
+ extracts nothing — the time oracle is deterministic and immune to page-size
17
+ drift on dynamic remote pages.
18
+ - Excluded WAF-sensitive chars (#, =, <, >, quotes, %, &, ;, |, *) from the
19
+ charset: a WAF that strips one of them turns the comparison into `= ''`
20
+ (always-true past the string end), which previously produced a false trailing run.
21
+
8
22
  ## [2.4.167] — 2026-10-11
9
23
 
10
24
  ### Fixed — blind_oracle detection false-negative + false-positive (real target)
package/dist/index.js CHANGED
@@ -62729,7 +62729,7 @@ async function blindSqliExtract(baseUrl, param, value, dbms, target, opts = {})
62729
62729
  }
62730
62730
  }
62731
62731
  }
62732
- const charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789{}_/.-:@";
62732
+ const charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789{}_/.-:@(), ";
62733
62733
  const caseInsensitive = p.dbms === "mysql" || p.dbms === "mssql";
62734
62734
  const bsCharset = caseInsensitive ? "0123456789abcdefghijklmnopqrstuvwxyz" : "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
62735
62735
  const baseTpl = (channel === "time" ? p.extraction.time : p.extraction.boolean).replace(/^'/, ctx);
@@ -62792,6 +62792,9 @@ async function blindSqliExtract(baseUrl, param, value, dbms, target, opts = {})
62792
62792
  out += ch;
62793
62793
  }
62794
62794
  out = out.trimEnd();
62795
+ if (out.length === 0 && channel === "boolean" && !marker) {
62796
+ return await blindSqliExtract(baseUrl, param, value, dbms, target, { ...opts, channel: "time" });
62797
+ }
62795
62798
  return {
62796
62799
  dbms,
62797
62800
  target,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blitzstrike",
3
- "version": "2.4.167",
3
+ "version": "2.4.168",
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": {