@blamejs/exceptd-skills 0.13.76 → 0.13.78
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 +8 -0
- package/data/_indexes/_meta.json +8 -8
- package/data/_indexes/activity-feed.json +2 -2
- package/data/_indexes/catalog-summaries.json +2 -2
- package/data/_indexes/chains.json +2199 -0
- package/data/attack-techniques.json +9 -0
- package/data/cve-catalog.json +610 -0
- package/data/cwe-catalog.json +8 -1
- package/data/framework-control-gaps.json +51 -5
- package/data/zeroday-lessons.json +300 -0
- package/manifest.json +44 -44
- package/package.json +2 -2
- package/sbom.cdx.json +23 -23
package/data/cwe-catalog.json
CHANGED
|
@@ -148,6 +148,7 @@
|
|
|
148
148
|
"CVE-2025-59689",
|
|
149
149
|
"CVE-2026-22688",
|
|
150
150
|
"CVE-2026-22719",
|
|
151
|
+
"CVE-2026-26015",
|
|
151
152
|
"CVE-2026-30616",
|
|
152
153
|
"CVE-2026-30617",
|
|
153
154
|
"CVE-2026-30624",
|
|
@@ -203,6 +204,7 @@
|
|
|
203
204
|
"CVE-2026-22252",
|
|
204
205
|
"CVE-2026-22688",
|
|
205
206
|
"CVE-2026-25108",
|
|
207
|
+
"CVE-2026-26015",
|
|
206
208
|
"CVE-2026-30616",
|
|
207
209
|
"CVE-2026-30617",
|
|
208
210
|
"CVE-2026-30623",
|
|
@@ -319,7 +321,8 @@
|
|
|
319
321
|
"CVE-2025-25257",
|
|
320
322
|
"CVE-2025-57819",
|
|
321
323
|
"CVE-2026-21643",
|
|
322
|
-
"CVE-2026-42208"
|
|
324
|
+
"CVE-2026-42208",
|
|
325
|
+
"CVE-2026-9082"
|
|
323
326
|
],
|
|
324
327
|
"framework_controls_partially_addressing": [
|
|
325
328
|
"NIST-800-53-SI-10",
|
|
@@ -1296,10 +1299,13 @@
|
|
|
1296
1299
|
],
|
|
1297
1300
|
"evidence_cves": [
|
|
1298
1301
|
"CVE-2023-21529",
|
|
1302
|
+
"CVE-2024-50050",
|
|
1299
1303
|
"CVE-2024-8069",
|
|
1300
1304
|
"CVE-2025-10035",
|
|
1305
|
+
"CVE-2025-23254",
|
|
1301
1306
|
"CVE-2025-24016",
|
|
1302
1307
|
"CVE-2025-26399",
|
|
1308
|
+
"CVE-2025-30165",
|
|
1303
1309
|
"CVE-2025-40551",
|
|
1304
1310
|
"CVE-2025-42999",
|
|
1305
1311
|
"CVE-2025-49113",
|
|
@@ -1307,6 +1313,7 @@
|
|
|
1307
1313
|
"CVE-2025-53690",
|
|
1308
1314
|
"CVE-2025-53770",
|
|
1309
1315
|
"CVE-2025-59287",
|
|
1316
|
+
"CVE-2025-60455",
|
|
1310
1317
|
"CVE-2025-68664",
|
|
1311
1318
|
"CVE-2026-20131",
|
|
1312
1319
|
"CVE-2026-20963"
|
|
@@ -34,11 +34,16 @@
|
|
|
34
34
|
"status": "open",
|
|
35
35
|
"opened_date": "2026-01-01",
|
|
36
36
|
"evidence_cves": [
|
|
37
|
+
"CVE-2024-50050",
|
|
38
|
+
"CVE-2025-23254",
|
|
39
|
+
"CVE-2025-30165",
|
|
37
40
|
"CVE-2025-34291",
|
|
38
41
|
"CVE-2025-49596",
|
|
39
42
|
"CVE-2025-54136",
|
|
43
|
+
"CVE-2025-60455",
|
|
40
44
|
"CVE-2026-22252",
|
|
41
45
|
"CVE-2026-22688",
|
|
46
|
+
"CVE-2026-26015",
|
|
42
47
|
"CVE-2026-30616",
|
|
43
48
|
"CVE-2026-30617",
|
|
44
49
|
"CVE-2026-30624",
|
|
@@ -1353,6 +1358,7 @@
|
|
|
1353
1358
|
"CVE-2024-37079",
|
|
1354
1359
|
"CVE-2024-42009",
|
|
1355
1360
|
"CVE-2024-43468",
|
|
1361
|
+
"CVE-2024-50050",
|
|
1356
1362
|
"CVE-2024-54085",
|
|
1357
1363
|
"CVE-2024-56145",
|
|
1358
1364
|
"CVE-2024-57726",
|
|
@@ -1381,6 +1387,7 @@
|
|
|
1381
1387
|
"CVE-2025-21043",
|
|
1382
1388
|
"CVE-2025-21479",
|
|
1383
1389
|
"CVE-2025-21480",
|
|
1390
|
+
"CVE-2025-23254",
|
|
1384
1391
|
"CVE-2025-24016",
|
|
1385
1392
|
"CVE-2025-24201",
|
|
1386
1393
|
"CVE-2025-24893",
|
|
@@ -1396,6 +1403,7 @@
|
|
|
1396
1403
|
"CVE-2025-27915",
|
|
1397
1404
|
"CVE-2025-27920",
|
|
1398
1405
|
"CVE-2025-29635",
|
|
1406
|
+
"CVE-2025-30165",
|
|
1399
1407
|
"CVE-2025-30397",
|
|
1400
1408
|
"CVE-2025-31125",
|
|
1401
1409
|
"CVE-2025-31277",
|
|
@@ -1469,6 +1477,7 @@
|
|
|
1469
1477
|
"CVE-2025-59374",
|
|
1470
1478
|
"CVE-2025-59689",
|
|
1471
1479
|
"CVE-2025-59718",
|
|
1480
|
+
"CVE-2025-60455",
|
|
1472
1481
|
"CVE-2025-60710",
|
|
1473
1482
|
"CVE-2025-61757",
|
|
1474
1483
|
"CVE-2025-61882",
|
|
@@ -1530,6 +1539,7 @@
|
|
|
1530
1539
|
"CVE-2026-24858",
|
|
1531
1540
|
"CVE-2026-25108",
|
|
1532
1541
|
"CVE-2026-25592",
|
|
1542
|
+
"CVE-2026-26015",
|
|
1533
1543
|
"CVE-2026-3055",
|
|
1534
1544
|
"CVE-2026-30616",
|
|
1535
1545
|
"CVE-2026-30617",
|
|
@@ -1554,7 +1564,8 @@
|
|
|
1554
1564
|
"CVE-2026-45498",
|
|
1555
1565
|
"CVE-2026-46300",
|
|
1556
1566
|
"CVE-2026-46333",
|
|
1557
|
-
"CVE-2026-5281"
|
|
1567
|
+
"CVE-2026-5281",
|
|
1568
|
+
"CVE-2026-9082"
|
|
1558
1569
|
],
|
|
1559
1570
|
"atlas_refs": [],
|
|
1560
1571
|
"attack_refs": [
|
|
@@ -1735,17 +1746,22 @@
|
|
|
1735
1746
|
"status": "open",
|
|
1736
1747
|
"opened_date": "2026-03-15",
|
|
1737
1748
|
"evidence_cves": [
|
|
1749
|
+
"CVE-2024-50050",
|
|
1738
1750
|
"CVE-2025-10585",
|
|
1739
1751
|
"CVE-2025-1094",
|
|
1740
1752
|
"CVE-2025-14174",
|
|
1753
|
+
"CVE-2025-23254",
|
|
1754
|
+
"CVE-2025-30165",
|
|
1741
1755
|
"CVE-2025-34291",
|
|
1742
1756
|
"CVE-2025-38352",
|
|
1743
1757
|
"CVE-2025-43300",
|
|
1744
1758
|
"CVE-2025-49596",
|
|
1745
1759
|
"CVE-2025-54136",
|
|
1760
|
+
"CVE-2025-60455",
|
|
1746
1761
|
"CVE-2026-22252",
|
|
1747
1762
|
"CVE-2026-22688",
|
|
1748
1763
|
"CVE-2026-25592",
|
|
1764
|
+
"CVE-2026-26015",
|
|
1749
1765
|
"CVE-2026-30616",
|
|
1750
1766
|
"CVE-2026-30617",
|
|
1751
1767
|
"CVE-2026-30624",
|
|
@@ -1759,6 +1775,7 @@
|
|
|
1759
1775
|
"CVE-2026-45498",
|
|
1760
1776
|
"CVE-2026-46300",
|
|
1761
1777
|
"CVE-2026-46333",
|
|
1778
|
+
"CVE-2026-9082",
|
|
1762
1779
|
"MAL-2026-3083"
|
|
1763
1780
|
],
|
|
1764
1781
|
"atlas_refs": [],
|
|
@@ -2151,11 +2168,16 @@
|
|
|
2151
2168
|
"status": "open",
|
|
2152
2169
|
"opened_date": "2026-05-13",
|
|
2153
2170
|
"evidence_cves": [
|
|
2171
|
+
"CVE-2024-50050",
|
|
2154
2172
|
"CVE-2025-0133",
|
|
2155
2173
|
"CVE-2025-1094",
|
|
2174
|
+
"CVE-2025-23254",
|
|
2175
|
+
"CVE-2025-30165",
|
|
2176
|
+
"CVE-2025-60455",
|
|
2156
2177
|
"CVE-2025-6965",
|
|
2157
2178
|
"CVE-2026-39884",
|
|
2158
|
-
"CVE-2026-42208"
|
|
2179
|
+
"CVE-2026-42208",
|
|
2180
|
+
"CVE-2026-9082"
|
|
2159
2181
|
],
|
|
2160
2182
|
"atlas_refs": [
|
|
2161
2183
|
"AML.T0053"
|
|
@@ -2298,6 +2320,7 @@
|
|
|
2298
2320
|
"CVE-2024-37079",
|
|
2299
2321
|
"CVE-2024-42009",
|
|
2300
2322
|
"CVE-2024-43468",
|
|
2323
|
+
"CVE-2024-50050",
|
|
2301
2324
|
"CVE-2024-54085",
|
|
2302
2325
|
"CVE-2024-56145",
|
|
2303
2326
|
"CVE-2024-57726",
|
|
@@ -2327,6 +2350,7 @@
|
|
|
2327
2350
|
"CVE-2025-21043",
|
|
2328
2351
|
"CVE-2025-21479",
|
|
2329
2352
|
"CVE-2025-21480",
|
|
2353
|
+
"CVE-2025-23254",
|
|
2330
2354
|
"CVE-2025-24016",
|
|
2331
2355
|
"CVE-2025-24201",
|
|
2332
2356
|
"CVE-2025-24893",
|
|
@@ -2342,6 +2366,7 @@
|
|
|
2342
2366
|
"CVE-2025-27915",
|
|
2343
2367
|
"CVE-2025-27920",
|
|
2344
2368
|
"CVE-2025-29635",
|
|
2369
|
+
"CVE-2025-30165",
|
|
2345
2370
|
"CVE-2025-30397",
|
|
2346
2371
|
"CVE-2025-31125",
|
|
2347
2372
|
"CVE-2025-31277",
|
|
@@ -2416,6 +2441,7 @@
|
|
|
2416
2441
|
"CVE-2025-59389",
|
|
2417
2442
|
"CVE-2025-59689",
|
|
2418
2443
|
"CVE-2025-59718",
|
|
2444
|
+
"CVE-2025-60455",
|
|
2419
2445
|
"CVE-2025-60710",
|
|
2420
2446
|
"CVE-2025-61757",
|
|
2421
2447
|
"CVE-2025-61882",
|
|
@@ -2480,6 +2506,7 @@
|
|
|
2480
2506
|
"CVE-2026-24858",
|
|
2481
2507
|
"CVE-2026-25108",
|
|
2482
2508
|
"CVE-2026-25592",
|
|
2509
|
+
"CVE-2026-26015",
|
|
2483
2510
|
"CVE-2026-3055",
|
|
2484
2511
|
"CVE-2026-30616",
|
|
2485
2512
|
"CVE-2026-30617",
|
|
@@ -2510,7 +2537,8 @@
|
|
|
2510
2537
|
"CVE-2026-46300",
|
|
2511
2538
|
"CVE-2026-46333",
|
|
2512
2539
|
"CVE-2026-5281",
|
|
2513
|
-
"CVE-2026-6973"
|
|
2540
|
+
"CVE-2026-6973",
|
|
2541
|
+
"CVE-2026-9082"
|
|
2514
2542
|
],
|
|
2515
2543
|
"atlas_refs": [],
|
|
2516
2544
|
"attack_refs": [
|
|
@@ -4748,14 +4776,19 @@
|
|
|
4748
4776
|
"opened_date": "2026-05-15",
|
|
4749
4777
|
"evidence_cves": [
|
|
4750
4778
|
"CVE-2024-21762",
|
|
4779
|
+
"CVE-2024-50050",
|
|
4780
|
+
"CVE-2025-23254",
|
|
4781
|
+
"CVE-2025-30165",
|
|
4751
4782
|
"CVE-2025-34291",
|
|
4752
4783
|
"CVE-2025-49596",
|
|
4753
4784
|
"CVE-2025-54136",
|
|
4785
|
+
"CVE-2025-60455",
|
|
4754
4786
|
"CVE-2026-0300",
|
|
4755
4787
|
"CVE-2026-20182",
|
|
4756
4788
|
"CVE-2026-22252",
|
|
4757
4789
|
"CVE-2026-22688",
|
|
4758
4790
|
"CVE-2026-25592",
|
|
4791
|
+
"CVE-2026-26015",
|
|
4759
4792
|
"CVE-2026-30616",
|
|
4760
4793
|
"CVE-2026-30617",
|
|
4761
4794
|
"CVE-2026-30624",
|
|
@@ -4767,7 +4800,8 @@
|
|
|
4767
4800
|
"CVE-2026-42945",
|
|
4768
4801
|
"CVE-2026-45498",
|
|
4769
4802
|
"CVE-2026-46300",
|
|
4770
|
-
"CVE-2026-46333"
|
|
4803
|
+
"CVE-2026-46333",
|
|
4804
|
+
"CVE-2026-9082"
|
|
4771
4805
|
],
|
|
4772
4806
|
"atlas_refs": [],
|
|
4773
4807
|
"attack_refs": [
|
|
@@ -5254,12 +5288,17 @@
|
|
|
5254
5288
|
"opened_date": "2026-05-17",
|
|
5255
5289
|
"evidence_cves": [
|
|
5256
5290
|
"CVE-2024-21762",
|
|
5291
|
+
"CVE-2024-50050",
|
|
5292
|
+
"CVE-2025-23254",
|
|
5293
|
+
"CVE-2025-30165",
|
|
5257
5294
|
"CVE-2025-34291",
|
|
5258
5295
|
"CVE-2025-49596",
|
|
5259
5296
|
"CVE-2025-54136",
|
|
5297
|
+
"CVE-2025-60455",
|
|
5260
5298
|
"CVE-2026-22252",
|
|
5261
5299
|
"CVE-2026-22688",
|
|
5262
5300
|
"CVE-2026-25592",
|
|
5301
|
+
"CVE-2026-26015",
|
|
5263
5302
|
"CVE-2026-30616",
|
|
5264
5303
|
"CVE-2026-30617",
|
|
5265
5304
|
"CVE-2026-30624",
|
|
@@ -5270,6 +5309,7 @@
|
|
|
5270
5309
|
"CVE-2026-45498",
|
|
5271
5310
|
"CVE-2026-46300",
|
|
5272
5311
|
"CVE-2026-46333",
|
|
5312
|
+
"CVE-2026-9082",
|
|
5273
5313
|
"MAL-2026-SHAI-HULUD-OSS"
|
|
5274
5314
|
],
|
|
5275
5315
|
"atlas_refs": [],
|
|
@@ -5302,12 +5342,17 @@
|
|
|
5302
5342
|
"opened_date": "2026-05-17",
|
|
5303
5343
|
"evidence_cves": [
|
|
5304
5344
|
"CVE-2024-21762",
|
|
5345
|
+
"CVE-2024-50050",
|
|
5346
|
+
"CVE-2025-23254",
|
|
5347
|
+
"CVE-2025-30165",
|
|
5305
5348
|
"CVE-2025-34291",
|
|
5306
5349
|
"CVE-2025-49596",
|
|
5307
5350
|
"CVE-2025-54136",
|
|
5351
|
+
"CVE-2025-60455",
|
|
5308
5352
|
"CVE-2026-22252",
|
|
5309
5353
|
"CVE-2026-22688",
|
|
5310
5354
|
"CVE-2026-25592",
|
|
5355
|
+
"CVE-2026-26015",
|
|
5311
5356
|
"CVE-2026-30616",
|
|
5312
5357
|
"CVE-2026-30617",
|
|
5313
5358
|
"CVE-2026-30624",
|
|
@@ -5317,7 +5362,8 @@
|
|
|
5317
5362
|
"CVE-2026-41091",
|
|
5318
5363
|
"CVE-2026-45498",
|
|
5319
5364
|
"CVE-2026-46300",
|
|
5320
|
-
"CVE-2026-46333"
|
|
5365
|
+
"CVE-2026-46333",
|
|
5366
|
+
"CVE-2026-9082"
|
|
5321
5367
|
],
|
|
5322
5368
|
"atlas_refs": [],
|
|
5323
5369
|
"attack_refs": [
|
|
@@ -6433,6 +6433,306 @@
|
|
|
6433
6433
|
"_auto_imported": false,
|
|
6434
6434
|
"_intake_method": "manual-verified-curation"
|
|
6435
6435
|
},
|
|
6436
|
+
"CVE-2026-26015": {
|
|
6437
|
+
"name": "DocsGPT MCP stdio Unauthenticated Remote Code Execution",
|
|
6438
|
+
"lesson_date": "2026-05-25",
|
|
6439
|
+
"attack_vector": {
|
|
6440
|
+
"description": "DocsGPT executes an MCP server configuration's stdio shell command after a validation step that a crafted payload bypasses, so an unauthenticated attacker runs commands on the host (CWE-77).",
|
|
6441
|
+
"privileges_required": "none (NVD PR:N) — unauthenticated, on hosted and self-hosted instances",
|
|
6442
|
+
"complexity": "low (NVD AC:L); one crafted MCP configuration payload",
|
|
6443
|
+
"ai_factor": "The abused surface is the MCP stdio configuration of a documentation/RAG assistant. The lesson sharpens the LibreChat (CVE-2026-22252) and WeKnora (CVE-2026-22688) cases: a bypassable validation step is not an authorization boundary — the MCP transport must authenticate the caller AND neutralize the command, because its by-design command execution turns injection into unauthenticated RCE. Surfaced via the 2026 MCP supply-chain advisory + GHSA feeds."
|
|
6444
|
+
},
|
|
6445
|
+
"framework_coverage": {
|
|
6446
|
+
"NIST-800-53-SI-2": {
|
|
6447
|
+
"covered": true,
|
|
6448
|
+
"adequate": false,
|
|
6449
|
+
"gap": "Does not track self-hosted documentation/RAG assistants and their MCP transports as managed, RCE-bearing software."
|
|
6450
|
+
},
|
|
6451
|
+
"ISO-27001-2022-A.8.8": {
|
|
6452
|
+
"covered": true,
|
|
6453
|
+
"adequate": false,
|
|
6454
|
+
"gap": "Does not enumerate the MCP stdio configuration as an unauthenticated command-execution surface, nor recognize a bypassable validation step as a non-boundary."
|
|
6455
|
+
},
|
|
6456
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
6457
|
+
"covered": false,
|
|
6458
|
+
"adequate": false,
|
|
6459
|
+
"gap": "No framework requires the MCP transport to authenticate callers and neutralize the stdio command; a validation step that can be bypassed is not authorization."
|
|
6460
|
+
}
|
|
6461
|
+
},
|
|
6462
|
+
"compliance_exposure_score": {
|
|
6463
|
+
"percent_audit_passing_orgs_still_exposed": 72,
|
|
6464
|
+
"basis": "Documentation/RAG assistants are rarely in the managed vulnerability program, and an MCP 'test' step is mistaken for an authorization control.",
|
|
6465
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
6466
|
+
},
|
|
6467
|
+
"ai_discovered_zeroday": false,
|
|
6468
|
+
"ai_discovery_source": "human_researcher",
|
|
6469
|
+
"ai_assist_factor": "none",
|
|
6470
|
+
"new_control_requirements": [
|
|
6471
|
+
{
|
|
6472
|
+
"id": "NEW-CTRL-084",
|
|
6473
|
+
"name": "MCP-STDIO-CONFIG-INPUT-NEUTRALIZATION",
|
|
6474
|
+
"description": "MCP stdio configuration command/args must be authenticated and neutralized before execution; a 'test'/validation step that can be bypassed is not an authorization boundary. Upgrade DocsGPT to 0.16.0+, do not expose it to untrusted networks, and run least-privilege. Same governance as the LibreChat (CVE-2026-22252) and WeKnora (CVE-2026-22688) MCP transport flaws, here reachable without authentication.",
|
|
6475
|
+
"evidence": "https://nvd.nist.gov/vuln/detail/CVE-2026-26015",
|
|
6476
|
+
"gap_closes": [
|
|
6477
|
+
"NIST-800-53-SI-2",
|
|
6478
|
+
"ISO-27001-2022-A.8.8",
|
|
6479
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
6480
|
+
]
|
|
6481
|
+
}
|
|
6482
|
+
],
|
|
6483
|
+
"_auto_imported": false,
|
|
6484
|
+
"_intake_method": "manual-verified-curation"
|
|
6485
|
+
},
|
|
6486
|
+
"CVE-2026-9082": {
|
|
6487
|
+
"name": "Drupal Core Database API Unauthenticated SQL Injection (SA-CORE-2026-004)",
|
|
6488
|
+
"lesson_date": "2026-05-25",
|
|
6489
|
+
"attack_vector": {
|
|
6490
|
+
"description": "Drupal core's database abstraction layer fails to neutralize special elements in a PostgreSQL query condition handler reachable via JSON:API, allowing an unauthenticated attacker to inject SQL (CWE-89). Actively exploited; CISA KEV 2026-05-22, due 2026-05-27.",
|
|
6491
|
+
"privileges_required": "none (NVD PR:N) — unauthenticated, on PostgreSQL-backed sites",
|
|
6492
|
+
"complexity": "low (NVD AC:L); JSON:API request with crafted condition",
|
|
6493
|
+
"ai_factor": "Not an AI-specific flaw, but a current actively-exploited CMS-core SQLi the catalog tracks for KEV currency. The lesson: input validation asserted at the application layer is not the same as parameterization verified at the database abstraction layer where the query is built — the two must be separately evidenced."
|
|
6494
|
+
},
|
|
6495
|
+
"framework_coverage": {
|
|
6496
|
+
"NIST-800-53-SI-2": {
|
|
6497
|
+
"covered": true,
|
|
6498
|
+
"adequate": false,
|
|
6499
|
+
"gap": "Flaw-remediation cadence frequently misses the sub-week window between KEV listing and the due date for an actively-exploited CMS-core SQLi."
|
|
6500
|
+
},
|
|
6501
|
+
"NIST-800-53-SI-10": {
|
|
6502
|
+
"covered": true,
|
|
6503
|
+
"adequate": false,
|
|
6504
|
+
"gap": "Input-validation control is asserted at the application layer but not verified at the database abstraction layer where the query condition handler builds SQL."
|
|
6505
|
+
},
|
|
6506
|
+
"ISO-27001-2022-A.8.8": {
|
|
6507
|
+
"covered": true,
|
|
6508
|
+
"adequate": false,
|
|
6509
|
+
"gap": "Does not treat the CMS database driver's query builder as an unauthenticated injection surface."
|
|
6510
|
+
}
|
|
6511
|
+
},
|
|
6512
|
+
"compliance_exposure_score": {
|
|
6513
|
+
"percent_audit_passing_orgs_still_exposed": 65,
|
|
6514
|
+
"basis": "Organizations assert WAF/input-validation coverage at the edge while the injection is in the database abstraction layer's PostgreSQL query builder, reachable via JSON:API.",
|
|
6515
|
+
"theater_pattern": "perimeter_control_substitution"
|
|
6516
|
+
},
|
|
6517
|
+
"ai_discovered_zeroday": false,
|
|
6518
|
+
"ai_discovery_source": "human_researcher",
|
|
6519
|
+
"ai_assist_factor": "none",
|
|
6520
|
+
"new_control_requirements": [
|
|
6521
|
+
{
|
|
6522
|
+
"id": "NEW-CTRL-085",
|
|
6523
|
+
"name": "DB-ABSTRACTION-LAYER-PARAMETERIZATION-VERIFICATION",
|
|
6524
|
+
"description": "Parameterization must be verified at the database abstraction layer / query builder, not assumed from application-layer input validation or a perimeter WAF. For Drupal, apply SA-CORE-2026-004 (10.4.10 / 10.5.10 / 10.6.9 / 11.1.10 / 11.2.12 / 11.3.10), prioritize PostgreSQL-backed sites, and meet the CISA KEV due date 2026-05-27. The distinguishing test: send a JSON:API request with a SQL metacharacter in a filter condition against a staging instance and confirm the query builder parameterizes rather than concatenates it.",
|
|
6525
|
+
"evidence": "https://www.drupal.org/sa-core-2026-004",
|
|
6526
|
+
"gap_closes": [
|
|
6527
|
+
"NIST-800-53-SI-2",
|
|
6528
|
+
"NIST-800-53-SI-10",
|
|
6529
|
+
"ISO-27001-2022-A.8.8"
|
|
6530
|
+
]
|
|
6531
|
+
}
|
|
6532
|
+
],
|
|
6533
|
+
"_auto_imported": false,
|
|
6534
|
+
"_intake_method": "manual-verified-curation"
|
|
6535
|
+
},
|
|
6536
|
+
"CVE-2025-23254": {
|
|
6537
|
+
"name": "NVIDIA TensorRT-LLM Python Executor Deserialization RCE (ShadowMQ)",
|
|
6538
|
+
"lesson_date": "2026-05-25",
|
|
6539
|
+
"attack_vector": {
|
|
6540
|
+
"description": "NVIDIA TensorRT-LLM deserializes untrusted pickle data received over a ZeroMQ / IPC socket without validation (CWE-502), so an attacker who reaches the channel executes code. The same insecure pattern spread across AI inference engines by copy-paste code reuse (Oligo ShadowMQ).",
|
|
6541
|
+
"privileges_required": "local access to the TRT-LLM server (NVD AV:L/PR:L)",
|
|
6542
|
+
"complexity": "low (NVD AC:L); a crafted serialized payload on the deserialization channel",
|
|
6543
|
+
"ai_factor": "The abused surface is the IPC/socket layer of an AI inference engine. The lesson is the supply-chain one: an insecure deserialization primitive was reused across vLLM, NVIDIA TensorRT-LLM, Meta Llama Stack and Modular Max, so one root cause became an ecosystem-wide exposure. Inference-engine sockets must use a safe serializer and be treated as untrusted input."
|
|
6544
|
+
},
|
|
6545
|
+
"framework_coverage": {
|
|
6546
|
+
"NIST-800-53-SI-2": {
|
|
6547
|
+
"covered": true,
|
|
6548
|
+
"adequate": false,
|
|
6549
|
+
"gap": "Does not track AI inference engines and their socket serialization layers as managed, RCE-bearing software, nor flag a flaw recurring across projects via code reuse."
|
|
6550
|
+
},
|
|
6551
|
+
"NIST-800-53-SI-10": {
|
|
6552
|
+
"covered": true,
|
|
6553
|
+
"adequate": false,
|
|
6554
|
+
"gap": "Input-validation control is not applied to data deserialized from an inference engine's internal socket; the serializer is treated as trusted."
|
|
6555
|
+
},
|
|
6556
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
6557
|
+
"covered": false,
|
|
6558
|
+
"adequate": false,
|
|
6559
|
+
"gap": "No framework requires an AI inference engine's socket serialization to use a safe format and validate peers; the unsafe primitive propagated by code reuse."
|
|
6560
|
+
}
|
|
6561
|
+
},
|
|
6562
|
+
"compliance_exposure_score": {
|
|
6563
|
+
"percent_audit_passing_orgs_still_exposed": 68,
|
|
6564
|
+
"basis": "AI inference engines are rarely in the managed vulnerability program, and their internal serialization sockets are assumed trusted; a reused insecure primitive is not tracked across the projects that copied it.",
|
|
6565
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
6566
|
+
},
|
|
6567
|
+
"ai_discovered_zeroday": false,
|
|
6568
|
+
"ai_discovery_source": "human_researcher",
|
|
6569
|
+
"ai_assist_factor": "none",
|
|
6570
|
+
"new_control_requirements": [
|
|
6571
|
+
{
|
|
6572
|
+
"id": "NEW-CTRL-086",
|
|
6573
|
+
"name": "AI-INFERENCE-IPC-DESERIALIZATION-SAFETY",
|
|
6574
|
+
"description": "AI inference engines must use a safe serializer (e.g. JSON) for IPC/socket communication, never deserialize untrusted serialized objects, authenticate socket peers, and isolate the channel on a trusted network segment. Because the insecure primitive spread by code reuse, the control must be applied across every inference engine in the estate, not one at a time. Apply the project fix (NVIDIA TensorRT-LLM), and for vLLM keep the legacy V0 engine disabled. The distinguishing test: send a crafted serialized object to the inference engine's socket from an unauthorized peer on a staging instance and confirm it is rejected, not deserialized.",
|
|
6575
|
+
"evidence": "https://nvidia.custhelp.com/app/answers/detail/a_id/5648",
|
|
6576
|
+
"gap_closes": [
|
|
6577
|
+
"NIST-800-53-SI-2",
|
|
6578
|
+
"NIST-800-53-SI-10",
|
|
6579
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
6580
|
+
]
|
|
6581
|
+
}
|
|
6582
|
+
],
|
|
6583
|
+
"_auto_imported": false,
|
|
6584
|
+
"_intake_method": "manual-verified-curation"
|
|
6585
|
+
},
|
|
6586
|
+
"CVE-2025-30165": {
|
|
6587
|
+
"name": "vLLM V0 Engine ZeroMQ Deserialization RCE (ShadowMQ)",
|
|
6588
|
+
"lesson_date": "2026-05-25",
|
|
6589
|
+
"attack_vector": {
|
|
6590
|
+
"description": "vLLM deserializes untrusted pickle data received over a ZeroMQ / IPC socket without validation (CWE-502), so an attacker who reaches the channel executes code. The same insecure pattern spread across AI inference engines by copy-paste code reuse (Oligo ShadowMQ).",
|
|
6591
|
+
"privileges_required": "adjacent-network reach to the ZeroMQ socket (NVD AV:A/PR:L)",
|
|
6592
|
+
"complexity": "low (NVD AC:L); a crafted serialized payload on the deserialization channel",
|
|
6593
|
+
"ai_factor": "The abused surface is the IPC/socket layer of an AI inference engine. The lesson is the supply-chain one: an insecure deserialization primitive was reused across vLLM, NVIDIA TensorRT-LLM, Meta Llama Stack and Modular Max, so one root cause became an ecosystem-wide exposure. Inference-engine sockets must use a safe serializer and be treated as untrusted input."
|
|
6594
|
+
},
|
|
6595
|
+
"framework_coverage": {
|
|
6596
|
+
"NIST-800-53-SI-2": {
|
|
6597
|
+
"covered": true,
|
|
6598
|
+
"adequate": false,
|
|
6599
|
+
"gap": "Does not track AI inference engines and their socket serialization layers as managed, RCE-bearing software, nor flag a flaw recurring across projects via code reuse."
|
|
6600
|
+
},
|
|
6601
|
+
"NIST-800-53-SI-10": {
|
|
6602
|
+
"covered": true,
|
|
6603
|
+
"adequate": false,
|
|
6604
|
+
"gap": "Input-validation control is not applied to data deserialized from an inference engine's internal socket; the serializer is treated as trusted."
|
|
6605
|
+
},
|
|
6606
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
6607
|
+
"covered": false,
|
|
6608
|
+
"adequate": false,
|
|
6609
|
+
"gap": "No framework requires an AI inference engine's socket serialization to use a safe format and validate peers; the unsafe primitive propagated by code reuse."
|
|
6610
|
+
}
|
|
6611
|
+
},
|
|
6612
|
+
"compliance_exposure_score": {
|
|
6613
|
+
"percent_audit_passing_orgs_still_exposed": 70,
|
|
6614
|
+
"basis": "AI inference engines are rarely in the managed vulnerability program, and their internal serialization sockets are assumed trusted; a reused insecure primitive is not tracked across the projects that copied it.",
|
|
6615
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
6616
|
+
},
|
|
6617
|
+
"ai_discovered_zeroday": false,
|
|
6618
|
+
"ai_discovery_source": "human_researcher",
|
|
6619
|
+
"ai_assist_factor": "none",
|
|
6620
|
+
"new_control_requirements": [
|
|
6621
|
+
{
|
|
6622
|
+
"id": "NEW-CTRL-086",
|
|
6623
|
+
"name": "AI-INFERENCE-IPC-DESERIALIZATION-SAFETY",
|
|
6624
|
+
"description": "AI inference engines must use a safe serializer (e.g. JSON) for IPC/socket communication, never deserialize untrusted serialized objects, authenticate socket peers, and isolate the channel on a trusted network segment. Because the insecure primitive spread by code reuse, the control must be applied across every inference engine in the estate, not one at a time. No code patch shipped for vLLM CVE-2025-30165; the mitigation is to keep the legacy V0 engine disabled (its default since 0.8.0) and isolate the ZeroMQ socket on a trusted network segment. The distinguishing test: send a crafted serialized object to the inference engine's socket from an unauthorized peer on a staging instance and confirm it is rejected, not deserialized.",
|
|
6625
|
+
"evidence": "https://github.com/vllm-project/vllm/security/advisories/GHSA-9pcc-gvx5-r5wm",
|
|
6626
|
+
"gap_closes": [
|
|
6627
|
+
"NIST-800-53-SI-2",
|
|
6628
|
+
"NIST-800-53-SI-10",
|
|
6629
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
6630
|
+
]
|
|
6631
|
+
}
|
|
6632
|
+
],
|
|
6633
|
+
"_auto_imported": false,
|
|
6634
|
+
"_intake_method": "manual-verified-curation"
|
|
6635
|
+
},
|
|
6636
|
+
"CVE-2024-50050": {
|
|
6637
|
+
"name": "Meta Llama Stack Socket Deserialization RCE (ShadowMQ)",
|
|
6638
|
+
"lesson_date": "2026-05-25",
|
|
6639
|
+
"attack_vector": {
|
|
6640
|
+
"description": "Meta Llama Stack deserializes untrusted pickle data received over a ZeroMQ / IPC socket without validation (CWE-502), so an attacker who reaches the channel executes code. The same insecure pattern spread across AI inference engines by copy-paste code reuse (Oligo ShadowMQ).",
|
|
6641
|
+
"privileges_required": "network reach to the inference socket (NVD AV:N/PR:L)",
|
|
6642
|
+
"complexity": "low (NVD AC:L); a crafted serialized payload on the deserialization channel",
|
|
6643
|
+
"ai_factor": "The abused surface is the IPC/socket layer of an AI inference engine. The lesson is the supply-chain one: an insecure deserialization primitive was reused across vLLM, NVIDIA TensorRT-LLM, Meta Llama Stack and Modular Max, so one root cause became an ecosystem-wide exposure. Inference-engine sockets must use a safe serializer and be treated as untrusted input."
|
|
6644
|
+
},
|
|
6645
|
+
"framework_coverage": {
|
|
6646
|
+
"NIST-800-53-SI-2": {
|
|
6647
|
+
"covered": true,
|
|
6648
|
+
"adequate": false,
|
|
6649
|
+
"gap": "Does not track AI inference engines and their socket serialization layers as managed, RCE-bearing software, nor flag a flaw recurring across projects via code reuse."
|
|
6650
|
+
},
|
|
6651
|
+
"NIST-800-53-SI-10": {
|
|
6652
|
+
"covered": true,
|
|
6653
|
+
"adequate": false,
|
|
6654
|
+
"gap": "Input-validation control is not applied to data deserialized from an inference engine's internal socket; the serializer is treated as trusted."
|
|
6655
|
+
},
|
|
6656
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
6657
|
+
"covered": false,
|
|
6658
|
+
"adequate": false,
|
|
6659
|
+
"gap": "No framework requires an AI inference engine's socket serialization to use a safe format and validate peers; the unsafe primitive propagated by code reuse."
|
|
6660
|
+
}
|
|
6661
|
+
},
|
|
6662
|
+
"compliance_exposure_score": {
|
|
6663
|
+
"percent_audit_passing_orgs_still_exposed": 70,
|
|
6664
|
+
"basis": "AI inference engines are rarely in the managed vulnerability program, and their internal serialization sockets are assumed trusted; a reused insecure primitive is not tracked across the projects that copied it.",
|
|
6665
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
6666
|
+
},
|
|
6667
|
+
"ai_discovered_zeroday": false,
|
|
6668
|
+
"ai_discovery_source": "human_researcher",
|
|
6669
|
+
"ai_assist_factor": "none",
|
|
6670
|
+
"new_control_requirements": [
|
|
6671
|
+
{
|
|
6672
|
+
"id": "NEW-CTRL-086",
|
|
6673
|
+
"name": "AI-INFERENCE-IPC-DESERIALIZATION-SAFETY",
|
|
6674
|
+
"description": "AI inference engines must use a safe serializer (e.g. JSON) for IPC/socket communication, never deserialize untrusted serialized objects, authenticate socket peers, and isolate the channel on a trusted network segment. Because the insecure primitive spread by code reuse, the control must be applied across every inference engine in the estate, not one at a time. Apply the project fix (Meta Llama Stack), and for vLLM keep the legacy V0 engine disabled. The distinguishing test: send a crafted serialized object to the inference engine's socket from an unauthorized peer on a staging instance and confirm it is rejected, not deserialized.",
|
|
6675
|
+
"evidence": "https://nvd.nist.gov/vuln/detail/CVE-2024-50050",
|
|
6676
|
+
"gap_closes": [
|
|
6677
|
+
"NIST-800-53-SI-2",
|
|
6678
|
+
"NIST-800-53-SI-10",
|
|
6679
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
6680
|
+
]
|
|
6681
|
+
}
|
|
6682
|
+
],
|
|
6683
|
+
"_auto_imported": false,
|
|
6684
|
+
"_intake_method": "manual-verified-curation"
|
|
6685
|
+
},
|
|
6686
|
+
"CVE-2025-60455": {
|
|
6687
|
+
"name": "Modular Max Server KVCache-Agent Deserialization RCE (ShadowMQ)",
|
|
6688
|
+
"lesson_date": "2026-05-25",
|
|
6689
|
+
"attack_vector": {
|
|
6690
|
+
"description": "Modular Max Server deserializes untrusted pickle data received over a ZeroMQ / IPC socket without validation (CWE-502), so an attacker who reaches the channel executes code. The same insecure pattern spread across AI inference engines by copy-paste code reuse (Oligo ShadowMQ).",
|
|
6691
|
+
"privileges_required": "local reach with the experimental KVCache agent enabled (NVD AV:L/PR:N)",
|
|
6692
|
+
"complexity": "low (NVD AC:L); a crafted serialized payload on the deserialization channel",
|
|
6693
|
+
"ai_factor": "The abused surface is the IPC/socket layer of an AI inference engine. The lesson is the supply-chain one: an insecure deserialization primitive was reused across vLLM, NVIDIA TensorRT-LLM, Meta Llama Stack and Modular Max, so one root cause became an ecosystem-wide exposure. Inference-engine sockets must use a safe serializer and be treated as untrusted input."
|
|
6694
|
+
},
|
|
6695
|
+
"framework_coverage": {
|
|
6696
|
+
"NIST-800-53-SI-2": {
|
|
6697
|
+
"covered": true,
|
|
6698
|
+
"adequate": false,
|
|
6699
|
+
"gap": "Does not track AI inference engines and their socket serialization layers as managed, RCE-bearing software, nor flag a flaw recurring across projects via code reuse."
|
|
6700
|
+
},
|
|
6701
|
+
"NIST-800-53-SI-10": {
|
|
6702
|
+
"covered": true,
|
|
6703
|
+
"adequate": false,
|
|
6704
|
+
"gap": "Input-validation control is not applied to data deserialized from an inference engine's internal socket; the serializer is treated as trusted."
|
|
6705
|
+
},
|
|
6706
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
6707
|
+
"covered": false,
|
|
6708
|
+
"adequate": false,
|
|
6709
|
+
"gap": "No framework requires an AI inference engine's socket serialization to use a safe format and validate peers; the unsafe primitive propagated by code reuse."
|
|
6710
|
+
}
|
|
6711
|
+
},
|
|
6712
|
+
"compliance_exposure_score": {
|
|
6713
|
+
"percent_audit_passing_orgs_still_exposed": 66,
|
|
6714
|
+
"basis": "AI inference engines are rarely in the managed vulnerability program, and their internal serialization sockets are assumed trusted; a reused insecure primitive is not tracked across the projects that copied it.",
|
|
6715
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
6716
|
+
},
|
|
6717
|
+
"ai_discovered_zeroday": false,
|
|
6718
|
+
"ai_discovery_source": "human_researcher",
|
|
6719
|
+
"ai_assist_factor": "none",
|
|
6720
|
+
"new_control_requirements": [
|
|
6721
|
+
{
|
|
6722
|
+
"id": "NEW-CTRL-086",
|
|
6723
|
+
"name": "AI-INFERENCE-IPC-DESERIALIZATION-SAFETY",
|
|
6724
|
+
"description": "AI inference engines must use a safe serializer (e.g. JSON) for IPC/socket communication, never deserialize untrusted serialized objects, authenticate socket peers, and isolate the channel on a trusted network segment. Because the insecure primitive spread by code reuse, the control must be applied across every inference engine in the estate, not one at a time. Apply the project fix (Modular Max Server), and for vLLM keep the legacy V0 engine disabled. The distinguishing test: send a crafted serialized object to the inference engine's socket from an unauthorized peer on a staging instance and confirm it is rejected, not deserialized.",
|
|
6725
|
+
"evidence": "https://nvd.nist.gov/vuln/detail/CVE-2025-60455",
|
|
6726
|
+
"gap_closes": [
|
|
6727
|
+
"NIST-800-53-SI-2",
|
|
6728
|
+
"NIST-800-53-SI-10",
|
|
6729
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
6730
|
+
]
|
|
6731
|
+
}
|
|
6732
|
+
],
|
|
6733
|
+
"_auto_imported": false,
|
|
6734
|
+
"_intake_method": "manual-verified-curation"
|
|
6735
|
+
},
|
|
6436
6736
|
"CVE-2025-34291": {
|
|
6437
6737
|
"name": "Langflow Account Takeover + RCE (CORS / refresh-token chain)",
|
|
6438
6738
|
"lesson_date": "2026-05-24",
|