blitzstrike 1.0.25 → 1.0.26
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/dist/index.js +5 -5
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -30473,7 +30473,7 @@ function loadJson(name) {
|
|
|
30473
30473
|
function detectWaf(headers, body = "") {
|
|
30474
30474
|
const sigs = loadJson("waf_signatures");
|
|
30475
30475
|
if (!sigs)
|
|
30476
|
-
return { error: "waf_signatures.json not loaded" };
|
|
30476
|
+
return { detected: false, wafs: [], error: "waf_signatures.json not loaded" };
|
|
30477
30477
|
const headerSigs = sigs.header_signatures ?? [];
|
|
30478
30478
|
const bodySigs = sigs.body_signatures ?? [];
|
|
30479
30479
|
const matches = [];
|
|
@@ -30484,7 +30484,7 @@ function detectWaf(headers, body = "") {
|
|
|
30484
30484
|
if (!h)
|
|
30485
30485
|
continue;
|
|
30486
30486
|
if (pattern) {
|
|
30487
|
-
const val = (headers[h] ?? headers[s.header] ?? "").toLowerCase();
|
|
30487
|
+
const val = (headers[h] ?? headers[s.header ?? ""] ?? "").toLowerCase();
|
|
30488
30488
|
if (val.includes(pattern)) {
|
|
30489
30489
|
matches.push({ waf: s.waf, header: s.header, pattern: s.pattern, confidence: s.confidence, via: "header-value" });
|
|
30490
30490
|
}
|
|
@@ -30517,14 +30517,14 @@ function detectWaf(headers, body = "") {
|
|
|
30517
30517
|
function techCorrelation(tech) {
|
|
30518
30518
|
const data = loadJson("tech_correlations");
|
|
30519
30519
|
if (!data)
|
|
30520
|
-
return { error: "tech_correlations.json not loaded" };
|
|
30520
|
+
return { found: false, error: "tech_correlations.json not loaded" };
|
|
30521
30521
|
const key = tech.toLowerCase();
|
|
30522
30522
|
const entry = data[key];
|
|
30523
30523
|
if (!entry) {
|
|
30524
30524
|
const matches = Object.keys(data).filter((k) => k.includes(key) || key.includes(k)).slice(0, 5);
|
|
30525
30525
|
return { found: false, tech, suggestions: matches };
|
|
30526
30526
|
}
|
|
30527
|
-
return { found: true, tech: key, vulns: entry.vulns ?? [], paths: entry.paths ?? [], detection: entry.detection ?? entry };
|
|
30527
|
+
return { found: true, tech: key, vulns: entry.vulns ?? [], paths: entry.paths ?? [], detection: entry.detection ?? { vulns: entry.vulns, paths: entry.paths } };
|
|
30528
30528
|
}
|
|
30529
30529
|
function cveCorrelation(cveId) {
|
|
30530
30530
|
const data = loadJson("cve_correlations");
|
|
@@ -51384,7 +51384,7 @@ function createServer() {
|
|
|
51384
51384
|
inputSchema: { path: string2().describe("Source file path") }
|
|
51385
51385
|
}, async ({ path }) => {
|
|
51386
51386
|
const r = traceDataFlow(path);
|
|
51387
|
-
const taintedSinks = [...new Set(r.candidates.map((c) => c.
|
|
51387
|
+
const taintedSinks = [...new Set(r.candidates.map((c) => c.sink?.id ?? "unknown"))];
|
|
51388
51388
|
const guidance = nextSteps({
|
|
51389
51389
|
tier: "eagle-eye",
|
|
51390
51390
|
hasFindings: r.candidates.length > 0,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "blitzstrike",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.26",
|
|
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": {
|