blitzstrike 2.4.53 → 2.4.54
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 +12 -0
- package/dist/index.js +2 -2
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,18 @@ 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.54] — 2026-09-14
|
|
9
|
+
|
|
10
|
+
### Changed — file-upload scope widened + antiscript-not-a-defense regression
|
|
11
|
+
|
|
12
|
+
- Widened the file-upload defense scope from 6 to 30 lines so a nearby
|
|
13
|
+
extension whitelist / wp_check_filetype is still seen.
|
|
14
|
+
- Regression test: `wpcf7_antiscript_file_name` (extension-strip) is NOT a
|
|
15
|
+
defense signal — CF7 CVE-2020-35489 was a filename special-char issue and the
|
|
16
|
+
vulnerable 5.3.1 also calls it; treating antiscript as a defense caused a
|
|
17
|
+
false negative. Remaining file-upload FPs (2/19 clean plugins) are cross-file
|
|
18
|
+
validation or admin-only context — inherent to per-file detection.
|
|
19
|
+
|
|
8
20
|
## [2.4.53] — 2026-09-14
|
|
9
21
|
|
|
10
22
|
### Changed — file-upload precision (FP-reduction from a 19-plugin clean corpus)
|
package/dist/index.js
CHANGED
|
@@ -56945,9 +56945,9 @@ function detectFileUploadRce(code, file, out) {
|
|
|
56945
56945
|
while ((m = re.exec(code)) !== null) {
|
|
56946
56946
|
const ln = lineNo2(code, m.index);
|
|
56947
56947
|
const l = ls[ln - 1] ?? "";
|
|
56948
|
-
const scope = ls.slice(Math.max(0, ln -
|
|
56948
|
+
const scope = ls.slice(Math.max(0, ln - 30), ln + 3).join(`
|
|
56949
56949
|
`);
|
|
56950
|
-
if (!/\$_FILES\b|tmp_name|getUploadedFile|uploadedFile|\[
|
|
56950
|
+
if (!/\$_FILES\b|tmp_name|getUploadedFile|uploadedFile|\['name'\]/i.test(scope))
|
|
56951
56951
|
continue;
|
|
56952
56952
|
if (/(wp_check_filetype|PATHINFO_EXTENSION|wp_get_mime_types|allowed_?(types|extensions|exts)|mime_?(types|extensions)|in_array\s*\([^)]*\$(?:allowed|whitelist|ext)|wp_handle_upload\s*\(\s*[^)]*test_form\s*=>\s*true)/i.test(scope))
|
|
56953
56953
|
continue;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "blitzstrike",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.54",
|
|
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": {
|