blitzstrike 2.4.163 → 2.4.164

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,17 @@ 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.164] — 2026-10-11
9
+
10
+ ### Fixed — binary-search case regression on case-insensitive DBMS
11
+
12
+ - The binary-search charset is now DBMS-aware: MySQL/MSSQL (case-insensitive
13
+ default collation) use a lowercase-only set, so `> ` ordering isn't ambiguous
14
+ and extraction no longer returns wrong case (was "SECURITy"/"ROOT@LOCALHOST";
15
+ now "security"/"root@localhost"). Case-sensitive DBMS keep the full ASCII set.
16
+ - Verified end-to-end on sqli-labs Less-8 (blind boolean): oracle 5 SQL signals →
17
+ confirm both channels → extract version/database/user all correct case.
18
+
8
19
  ## [2.4.163] — 2026-10-11
9
20
 
10
21
  ### Added — cookie discovery in live_recon (hint-free injection surface)
package/dist/index.js CHANGED
@@ -62659,7 +62659,8 @@ async function blindSqliExtract(baseUrl, param, value, dbms, target, opts = {})
62659
62659
  }
62660
62660
  }
62661
62661
  const charset = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789{}_/.-:@";
62662
- const bsCharset = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
62662
+ const caseInsensitive = p.dbms === "mysql" || p.dbms === "mssql";
62663
+ const bsCharset = caseInsensitive ? "0123456789abcdefghijklmnopqrstuvwxyz" : "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
62663
62664
  const baseTpl = (channel === "time" ? p.extraction.time : p.extraction.boolean).replace(/^'/, ctx);
62664
62665
  const render = (tpl, pos, ch) => `${value}${tpl.replace(/\{query\}/g, queryExpr).replace(/\{pos\}/g, String(pos)).replace(/\{char\}/g, ch).replace(/\{sec\}/g, "1")}`;
62665
62666
  const isTrue = async (tpl, pos, ch) => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "blitzstrike",
3
- "version": "2.4.163",
3
+ "version": "2.4.164",
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": {