@blamejs/exceptd-skills 0.13.100 → 0.13.102
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 +9 -9
- package/data/_indexes/activity-feed.json +2 -2
- package/data/_indexes/catalog-summaries.json +2 -2
- package/data/_indexes/chains.json +1667 -1
- package/data/atlas-ttps.json +12 -3
- package/data/attack-techniques.json +7 -0
- package/data/cve-catalog.json +427 -1
- package/data/cwe-catalog.json +5 -0
- package/data/framework-control-gaps.json +40 -2
- package/data/zeroday-lessons.json +200 -0
- package/manifest.json +44 -44
- package/package.json +2 -2
- package/sbom.cdx.json +25 -25
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
"CVE-2024-11392",
|
|
46
46
|
"CVE-2024-11393",
|
|
47
47
|
"CVE-2024-11394",
|
|
48
|
+
"CVE-2024-12366",
|
|
48
49
|
"CVE-2024-13059",
|
|
49
50
|
"CVE-2024-1561",
|
|
50
51
|
"CVE-2024-21575",
|
|
@@ -56,6 +57,7 @@
|
|
|
56
57
|
"CVE-2024-42479",
|
|
57
58
|
"CVE-2024-4889",
|
|
58
59
|
"CVE-2024-50050",
|
|
60
|
+
"CVE-2024-5565",
|
|
59
61
|
"CVE-2024-6587",
|
|
60
62
|
"CVE-2025-1550",
|
|
61
63
|
"CVE-2025-1753",
|
|
@@ -72,6 +74,7 @@
|
|
|
72
74
|
"CVE-2025-60455",
|
|
73
75
|
"CVE-2025-64496",
|
|
74
76
|
"CVE-2025-64513",
|
|
77
|
+
"CVE-2025-67818",
|
|
75
78
|
"CVE-2025-8747",
|
|
76
79
|
"CVE-2026-0766",
|
|
77
80
|
"CVE-2026-22252",
|
|
@@ -88,7 +91,8 @@
|
|
|
88
91
|
"CVE-2026-30624",
|
|
89
92
|
"CVE-2026-30625",
|
|
90
93
|
"CVE-2026-34159",
|
|
91
|
-
"CVE-2026-40933"
|
|
94
|
+
"CVE-2026-40933",
|
|
95
|
+
"CVE-2026-45829"
|
|
92
96
|
],
|
|
93
97
|
"atlas_refs": [
|
|
94
98
|
"AML.T0018",
|
|
@@ -157,7 +161,9 @@
|
|
|
157
161
|
"opened_date": "2026-01-01",
|
|
158
162
|
"evidence_cves": [
|
|
159
163
|
"CVE-2023-44467",
|
|
164
|
+
"CVE-2024-12366",
|
|
160
165
|
"CVE-2024-21513",
|
|
166
|
+
"CVE-2024-5565",
|
|
161
167
|
"CVE-2026-25592"
|
|
162
168
|
],
|
|
163
169
|
"atlas_refs": [
|
|
@@ -1257,6 +1263,8 @@
|
|
|
1257
1263
|
"opened_date": "2026-01-01",
|
|
1258
1264
|
"evidence_cves": [
|
|
1259
1265
|
"CVE-2023-43472",
|
|
1266
|
+
"CVE-2024-12366",
|
|
1267
|
+
"CVE-2024-5565",
|
|
1260
1268
|
"CVE-2025-0133",
|
|
1261
1269
|
"CVE-2025-1094",
|
|
1262
1270
|
"CVE-2025-6965",
|
|
@@ -1569,6 +1577,7 @@
|
|
|
1569
1577
|
"CVE-2025-6558",
|
|
1570
1578
|
"CVE-2025-66376",
|
|
1571
1579
|
"CVE-2025-66644",
|
|
1580
|
+
"CVE-2025-67818",
|
|
1572
1581
|
"CVE-2025-68461",
|
|
1573
1582
|
"CVE-2025-68613",
|
|
1574
1583
|
"CVE-2025-68645",
|
|
@@ -1643,6 +1652,7 @@
|
|
|
1643
1652
|
"CVE-2026-41940",
|
|
1644
1653
|
"CVE-2026-42945",
|
|
1645
1654
|
"CVE-2026-45498",
|
|
1655
|
+
"CVE-2026-45829",
|
|
1646
1656
|
"CVE-2026-46300",
|
|
1647
1657
|
"CVE-2026-46333",
|
|
1648
1658
|
"CVE-2026-5281",
|
|
@@ -1872,6 +1882,7 @@
|
|
|
1872
1882
|
"CVE-2025-60455",
|
|
1873
1883
|
"CVE-2025-64496",
|
|
1874
1884
|
"CVE-2025-64513",
|
|
1885
|
+
"CVE-2025-67818",
|
|
1875
1886
|
"CVE-2025-8747",
|
|
1876
1887
|
"CVE-2026-0766",
|
|
1877
1888
|
"CVE-2026-22252",
|
|
@@ -1896,6 +1907,7 @@
|
|
|
1896
1907
|
"CVE-2026-41091",
|
|
1897
1908
|
"CVE-2026-45321",
|
|
1898
1909
|
"CVE-2026-45498",
|
|
1910
|
+
"CVE-2026-45829",
|
|
1899
1911
|
"CVE-2026-46300",
|
|
1900
1912
|
"CVE-2026-46333",
|
|
1901
1913
|
"CVE-2026-9082",
|
|
@@ -2082,7 +2094,9 @@
|
|
|
2082
2094
|
"opened_date": "2026-04-01",
|
|
2083
2095
|
"evidence_cves": [
|
|
2084
2096
|
"BUG-2026-NIGHTMARE-ECLIPSE-GREENPLASMA",
|
|
2097
|
+
"CVE-2024-12366",
|
|
2085
2098
|
"CVE-2024-3154",
|
|
2099
|
+
"CVE-2024-5565",
|
|
2086
2100
|
"CVE-2025-49844",
|
|
2087
2101
|
"CVE-2025-53773",
|
|
2088
2102
|
"CVE-2026-30615"
|
|
@@ -2308,12 +2322,14 @@
|
|
|
2308
2322
|
"CVE-2024-11392",
|
|
2309
2323
|
"CVE-2024-11393",
|
|
2310
2324
|
"CVE-2024-11394",
|
|
2325
|
+
"CVE-2024-12366",
|
|
2311
2326
|
"CVE-2024-13059",
|
|
2312
2327
|
"CVE-2024-21513",
|
|
2313
2328
|
"CVE-2024-27132",
|
|
2314
2329
|
"CVE-2024-37032",
|
|
2315
2330
|
"CVE-2024-39722",
|
|
2316
2331
|
"CVE-2024-50050",
|
|
2332
|
+
"CVE-2024-5565",
|
|
2317
2333
|
"CVE-2025-0133",
|
|
2318
2334
|
"CVE-2025-1094",
|
|
2319
2335
|
"CVE-2025-1550",
|
|
@@ -2324,6 +2340,7 @@
|
|
|
2324
2340
|
"CVE-2025-33236",
|
|
2325
2341
|
"CVE-2025-60455",
|
|
2326
2342
|
"CVE-2025-64496",
|
|
2343
|
+
"CVE-2025-67818",
|
|
2327
2344
|
"CVE-2025-6965",
|
|
2328
2345
|
"CVE-2025-8747",
|
|
2329
2346
|
"CVE-2026-0766",
|
|
@@ -2332,6 +2349,7 @@
|
|
|
2332
2349
|
"CVE-2026-24215",
|
|
2333
2350
|
"CVE-2026-39884",
|
|
2334
2351
|
"CVE-2026-42208",
|
|
2352
|
+
"CVE-2026-45829",
|
|
2335
2353
|
"CVE-2026-9082"
|
|
2336
2354
|
],
|
|
2337
2355
|
"atlas_refs": [
|
|
@@ -2649,6 +2667,7 @@
|
|
|
2649
2667
|
"CVE-2025-6558",
|
|
2650
2668
|
"CVE-2025-66376",
|
|
2651
2669
|
"CVE-2025-66644",
|
|
2670
|
+
"CVE-2025-67818",
|
|
2652
2671
|
"CVE-2025-68461",
|
|
2653
2672
|
"CVE-2025-68613",
|
|
2654
2673
|
"CVE-2025-68645",
|
|
@@ -2730,6 +2749,7 @@
|
|
|
2730
2749
|
"CVE-2026-43284",
|
|
2731
2750
|
"CVE-2026-43500",
|
|
2732
2751
|
"CVE-2026-45498",
|
|
2752
|
+
"CVE-2026-45829",
|
|
2733
2753
|
"CVE-2026-46300",
|
|
2734
2754
|
"CVE-2026-46333",
|
|
2735
2755
|
"CVE-2026-5281",
|
|
@@ -2766,6 +2786,8 @@
|
|
|
2766
2786
|
"opened_date": "2026-02-01",
|
|
2767
2787
|
"evidence_cves": [
|
|
2768
2788
|
"BUG-2026-NIGHTMARE-ECLIPSE-UNDEFEND",
|
|
2789
|
+
"CVE-2024-12366",
|
|
2790
|
+
"CVE-2024-5565",
|
|
2769
2791
|
"CVE-2025-11837",
|
|
2770
2792
|
"CVE-2026-22778",
|
|
2771
2793
|
"CVE-2026-32202",
|
|
@@ -4948,6 +4970,8 @@
|
|
|
4948
4970
|
"opened_date": "2026-05-15",
|
|
4949
4971
|
"evidence_cves": [
|
|
4950
4972
|
"CVE-2023-3519",
|
|
4973
|
+
"CVE-2024-12366",
|
|
4974
|
+
"CVE-2024-5565",
|
|
4951
4975
|
"CVE-2026-0300",
|
|
4952
4976
|
"CVE-2026-42945"
|
|
4953
4977
|
],
|
|
@@ -4995,6 +5019,7 @@
|
|
|
4995
5019
|
"CVE-2024-11392",
|
|
4996
5020
|
"CVE-2024-11393",
|
|
4997
5021
|
"CVE-2024-11394",
|
|
5022
|
+
"CVE-2024-12366",
|
|
4998
5023
|
"CVE-2024-13059",
|
|
4999
5024
|
"CVE-2024-1561",
|
|
5000
5025
|
"CVE-2024-21513",
|
|
@@ -5008,6 +5033,7 @@
|
|
|
5008
5033
|
"CVE-2024-42479",
|
|
5009
5034
|
"CVE-2024-4889",
|
|
5010
5035
|
"CVE-2024-50050",
|
|
5036
|
+
"CVE-2024-5565",
|
|
5011
5037
|
"CVE-2024-6587",
|
|
5012
5038
|
"CVE-2025-1550",
|
|
5013
5039
|
"CVE-2025-1753",
|
|
@@ -5024,6 +5050,7 @@
|
|
|
5024
5050
|
"CVE-2025-60455",
|
|
5025
5051
|
"CVE-2025-64496",
|
|
5026
5052
|
"CVE-2025-64513",
|
|
5053
|
+
"CVE-2025-67818",
|
|
5027
5054
|
"CVE-2025-8747",
|
|
5028
5055
|
"CVE-2026-0300",
|
|
5029
5056
|
"CVE-2026-0766",
|
|
@@ -5049,6 +5076,7 @@
|
|
|
5049
5076
|
"CVE-2026-42897",
|
|
5050
5077
|
"CVE-2026-42945",
|
|
5051
5078
|
"CVE-2026-45498",
|
|
5079
|
+
"CVE-2026-45829",
|
|
5052
5080
|
"CVE-2026-46300",
|
|
5053
5081
|
"CVE-2026-46333",
|
|
5054
5082
|
"CVE-2026-9082"
|
|
@@ -5544,6 +5572,7 @@
|
|
|
5544
5572
|
"CVE-2024-11392",
|
|
5545
5573
|
"CVE-2024-11393",
|
|
5546
5574
|
"CVE-2024-11394",
|
|
5575
|
+
"CVE-2024-12366",
|
|
5547
5576
|
"CVE-2024-13059",
|
|
5548
5577
|
"CVE-2024-1561",
|
|
5549
5578
|
"CVE-2024-21513",
|
|
@@ -5556,6 +5585,7 @@
|
|
|
5556
5585
|
"CVE-2024-42478",
|
|
5557
5586
|
"CVE-2024-42479",
|
|
5558
5587
|
"CVE-2024-50050",
|
|
5588
|
+
"CVE-2024-5565",
|
|
5559
5589
|
"CVE-2025-1550",
|
|
5560
5590
|
"CVE-2025-1753",
|
|
5561
5591
|
"CVE-2025-23254",
|
|
@@ -5570,6 +5600,7 @@
|
|
|
5570
5600
|
"CVE-2025-54136",
|
|
5571
5601
|
"CVE-2025-60455",
|
|
5572
5602
|
"CVE-2025-64496",
|
|
5603
|
+
"CVE-2025-67818",
|
|
5573
5604
|
"CVE-2025-8747",
|
|
5574
5605
|
"CVE-2026-0766",
|
|
5575
5606
|
"CVE-2026-22252",
|
|
@@ -5588,6 +5619,7 @@
|
|
|
5588
5619
|
"CVE-2026-40933",
|
|
5589
5620
|
"CVE-2026-41091",
|
|
5590
5621
|
"CVE-2026-45498",
|
|
5622
|
+
"CVE-2026-45829",
|
|
5591
5623
|
"CVE-2026-46300",
|
|
5592
5624
|
"CVE-2026-46333",
|
|
5593
5625
|
"CVE-2026-9082",
|
|
@@ -5634,6 +5666,7 @@
|
|
|
5634
5666
|
"CVE-2024-11392",
|
|
5635
5667
|
"CVE-2024-11393",
|
|
5636
5668
|
"CVE-2024-11394",
|
|
5669
|
+
"CVE-2024-12366",
|
|
5637
5670
|
"CVE-2024-13059",
|
|
5638
5671
|
"CVE-2024-1561",
|
|
5639
5672
|
"CVE-2024-21513",
|
|
@@ -5647,6 +5680,7 @@
|
|
|
5647
5680
|
"CVE-2024-42479",
|
|
5648
5681
|
"CVE-2024-4889",
|
|
5649
5682
|
"CVE-2024-50050",
|
|
5683
|
+
"CVE-2024-5565",
|
|
5650
5684
|
"CVE-2024-6587",
|
|
5651
5685
|
"CVE-2025-1550",
|
|
5652
5686
|
"CVE-2025-1753",
|
|
@@ -5663,6 +5697,7 @@
|
|
|
5663
5697
|
"CVE-2025-60455",
|
|
5664
5698
|
"CVE-2025-64496",
|
|
5665
5699
|
"CVE-2025-64513",
|
|
5700
|
+
"CVE-2025-67818",
|
|
5666
5701
|
"CVE-2025-8747",
|
|
5667
5702
|
"CVE-2026-0766",
|
|
5668
5703
|
"CVE-2026-22252",
|
|
@@ -5684,6 +5719,7 @@
|
|
|
5684
5719
|
"CVE-2026-40933",
|
|
5685
5720
|
"CVE-2026-41091",
|
|
5686
5721
|
"CVE-2026-45498",
|
|
5722
|
+
"CVE-2026-45829",
|
|
5687
5723
|
"CVE-2026-46300",
|
|
5688
5724
|
"CVE-2026-46333",
|
|
5689
5725
|
"CVE-2026-9082"
|
|
@@ -5966,10 +6002,12 @@
|
|
|
5966
6002
|
"CVE-2024-4889",
|
|
5967
6003
|
"CVE-2024-6587",
|
|
5968
6004
|
"CVE-2025-64513",
|
|
6005
|
+
"CVE-2025-67818",
|
|
5969
6006
|
"CVE-2026-20182",
|
|
5970
6007
|
"CVE-2026-24206",
|
|
5971
6008
|
"CVE-2026-24207",
|
|
5972
|
-
"CVE-2026-26190"
|
|
6009
|
+
"CVE-2026-26190",
|
|
6010
|
+
"CVE-2026-45829"
|
|
5973
6011
|
],
|
|
5974
6012
|
"atlas_refs": [],
|
|
5975
6013
|
"attack_refs": [
|
|
@@ -4211,6 +4211,206 @@
|
|
|
4211
4211
|
"_auto_imported": false,
|
|
4212
4212
|
"_intake_method": "manual-verified-curation"
|
|
4213
4213
|
},
|
|
4214
|
+
"CVE-2026-45829": {
|
|
4215
|
+
"name": "ChromaDB FastAPI Pre-Auth Remote Code Execution (ChromaToast)",
|
|
4216
|
+
"lesson_date": "2026-05-25",
|
|
4217
|
+
"attack_vector": {
|
|
4218
|
+
"description": "ChromaDB's Python FastAPI server processes a caller-supplied embedding-function config (model repo with trust_remote_code=true) on the collections endpoint before authenticating, giving unauthenticated RCE (CWE-94).",
|
|
4219
|
+
"privileges_required": "none (CVSS v4.0 PR:N) - unauthenticated, before any auth check",
|
|
4220
|
+
"complexity": "low",
|
|
4221
|
+
"ai_factor": "The abused surface is a widely used vector database - the RAG persistence layer that stores embeddings and source data behind LLM applications. The lesson: vector databases are sensitive, RCE-bearing data stores; they must authenticate before acting on caller config and never load remote model code on untrusted input."
|
|
4222
|
+
},
|
|
4223
|
+
"framework_coverage": {
|
|
4224
|
+
"NIST-800-53-SI-2": {
|
|
4225
|
+
"covered": true,
|
|
4226
|
+
"adequate": false,
|
|
4227
|
+
"gap": "Does not track the vector database (RAG persistence layer) as managed, RCE-bearing software."
|
|
4228
|
+
},
|
|
4229
|
+
"NIST-800-53-SI-10": {
|
|
4230
|
+
"covered": true,
|
|
4231
|
+
"adequate": false,
|
|
4232
|
+
"gap": "Input validation / auth is not applied before the vector DB processes attacker-controlled collection/embedding config."
|
|
4233
|
+
},
|
|
4234
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
4235
|
+
"covered": false,
|
|
4236
|
+
"adequate": false,
|
|
4237
|
+
"gap": "No framework treats the vector database as a sensitive RAG store whose request path must authenticate before code execution."
|
|
4238
|
+
}
|
|
4239
|
+
},
|
|
4240
|
+
"compliance_exposure_score": {
|
|
4241
|
+
"percent_audit_passing_orgs_still_exposed": 74,
|
|
4242
|
+
"basis": "Vector databases are deployed as convenience RAG infrastructure on trusted-network assumptions; their request and backup paths are not hardened.",
|
|
4243
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
4244
|
+
},
|
|
4245
|
+
"ai_discovered_zeroday": false,
|
|
4246
|
+
"ai_discovery_source": "human_researcher",
|
|
4247
|
+
"ai_assist_factor": "none",
|
|
4248
|
+
"new_control_requirements": [
|
|
4249
|
+
{
|
|
4250
|
+
"id": "NEW-CTRL-101",
|
|
4251
|
+
"name": "VECTOR-DB-AUTHENTICATION-ENFORCEMENT",
|
|
4252
|
+
"description": "A vector database must authenticate callers BEFORE processing any caller-supplied configuration (collection/embedding-function config, model repositories), must not load remote model code (trust_remote_code) on untrusted input, and must never be exposed to untrusted networks. For ChromaDB, restrict the FastAPI port, use the Rust 'chroma run' / official Docker deployment, and disable trust_remote_code. The distinguishing test: send an unauthenticated collection-create request with a malicious embedding-function model repo to a staging instance and confirm it is refused before any code loads.",
|
|
4253
|
+
"evidence": "https://www.securityweek.com/unpatched-chromadb-vulnerability-can-lead-to-server-takeover/",
|
|
4254
|
+
"gap_closes": [
|
|
4255
|
+
"NIST-800-53-SI-2",
|
|
4256
|
+
"NIST-800-53-SI-10",
|
|
4257
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
4258
|
+
]
|
|
4259
|
+
}
|
|
4260
|
+
],
|
|
4261
|
+
"_auto_imported": false,
|
|
4262
|
+
"_intake_method": "manual-verified-curation"
|
|
4263
|
+
},
|
|
4264
|
+
"CVE-2024-5565": {
|
|
4265
|
+
"name": "Vanna.AI Prompt Injection to Remote Code Execution",
|
|
4266
|
+
"lesson_date": "2026-05-25",
|
|
4267
|
+
"attack_vector": {
|
|
4268
|
+
"description": "Vanna's text-to-SQL ask method turns a natural-language question into Python and runs it to render a Plotly visualization (default-on), so prompt injection in the question overrides the visualization code and executes arbitrary Python on the host.",
|
|
4269
|
+
"privileges_required": "none (unauthenticated; AC:H - visualization enabled + injected question)",
|
|
4270
|
+
"complexity": "high",
|
|
4271
|
+
"ai_factor": "The flaw is intrinsic to the AI pipeline: the agent's purpose is to turn natural language into executed code, so prompt injection is the exploit primitive. The lesson - LLM-generated code is attacker-controllable code and must be sandboxed, never run with host privileges."
|
|
4272
|
+
},
|
|
4273
|
+
"framework_coverage": {
|
|
4274
|
+
"NIST-800-53-SI-3": {
|
|
4275
|
+
"covered": true,
|
|
4276
|
+
"adequate": false,
|
|
4277
|
+
"gap": "Malicious-code protection does not treat an LLM agent's generate-and-run-code path as a code-execution channel."
|
|
4278
|
+
},
|
|
4279
|
+
"NIST-800-53-CM-7": {
|
|
4280
|
+
"covered": true,
|
|
4281
|
+
"adequate": false,
|
|
4282
|
+
"gap": "Least-functionality is not enforced - the code-execution / visualization path is on by default rather than sandboxed or disabled for untrusted input."
|
|
4283
|
+
},
|
|
4284
|
+
"ALL-PROMPT-INJECTION-ACCESS-CONTROL": {
|
|
4285
|
+
"covered": false,
|
|
4286
|
+
"adequate": false,
|
|
4287
|
+
"gap": "No framework requires that prompt-injectable natural-language input be denied a path to code execution in NL-to-code/SQL agents."
|
|
4288
|
+
}
|
|
4289
|
+
},
|
|
4290
|
+
"compliance_exposure_score": {
|
|
4291
|
+
"percent_audit_passing_orgs_still_exposed": 80,
|
|
4292
|
+
"basis": "NL-to-code/SQL agents are adopted for analyst productivity and run model-generated code by design; their codegen path is rarely sandboxed and the natural-language input is not treated as untrusted.",
|
|
4293
|
+
"theater_pattern": "ai_agent_codegen_trust"
|
|
4294
|
+
},
|
|
4295
|
+
"ai_discovered_zeroday": false,
|
|
4296
|
+
"ai_discovery_source": "human_researcher",
|
|
4297
|
+
"ai_assist_factor": "none",
|
|
4298
|
+
"new_control_requirements": [
|
|
4299
|
+
{
|
|
4300
|
+
"id": "NEW-CTRL-102",
|
|
4301
|
+
"name": "AI-NL-TO-CODE-AGENT-EXECUTION-ISOLATION",
|
|
4302
|
+
"description": "An LLM data-analysis agent that generates and executes code or SQL from natural language (text-to-SQL, text-to-Python, charting agents) must treat BOTH the natural-language question and any analyzed data as untrusted, prompt-injectable input, and must never run model-generated code with host or network privileges. Disable code-execution/visualization paths by default for untrusted input, run generated code only in a hardened sandbox (no filesystem/network/process access beyond the dataset), enforce least functionality, and validate or constrain the generated artifact before execution. The distinguishing test: send an analytical question containing an injected instruction to emit non-analytical code (e.g. a shell/file/network call) on a staging agent and confirm the agent refuses to execute it - paper 'AI security' policies that do not sandbox the generate-and-run path still permit RCE.",
|
|
4303
|
+
"evidence": "https://jfrog.com/blog/prompt-injection-attack-code-execution-in-vanna-ai-cve-2024-5565/",
|
|
4304
|
+
"gap_closes": [
|
|
4305
|
+
"NIST-800-53-SI-3",
|
|
4306
|
+
"NIST-800-53-CM-7",
|
|
4307
|
+
"ALL-PROMPT-INJECTION-ACCESS-CONTROL"
|
|
4308
|
+
]
|
|
4309
|
+
}
|
|
4310
|
+
],
|
|
4311
|
+
"_auto_imported": false,
|
|
4312
|
+
"_intake_method": "manual-verified-curation"
|
|
4313
|
+
},
|
|
4314
|
+
"CVE-2024-12366": {
|
|
4315
|
+
"name": "PandasAI Prompt Injection to Remote Code Execution",
|
|
4316
|
+
"lesson_date": "2026-05-25",
|
|
4317
|
+
"attack_vector": {
|
|
4318
|
+
"description": "PandasAI's chat interface turns a natural-language question into Python and runs it against DataFrames; it does not separate analytical input from injected instructions, so prompt injection generates and executes arbitrary Python, escaping the intended sandbox (RCE).",
|
|
4319
|
+
"privileges_required": "none (unauthenticated, no user interaction)",
|
|
4320
|
+
"complexity": "low",
|
|
4321
|
+
"ai_factor": "The flaw is intrinsic to the AI pipeline: the agent's purpose is to turn natural language into executed code, so prompt injection is the exploit primitive. The lesson - LLM-generated code is attacker-controllable code and must be sandboxed, never run with host privileges."
|
|
4322
|
+
},
|
|
4323
|
+
"framework_coverage": {
|
|
4324
|
+
"NIST-800-53-SI-3": {
|
|
4325
|
+
"covered": true,
|
|
4326
|
+
"adequate": false,
|
|
4327
|
+
"gap": "Malicious-code protection does not treat an LLM agent's generate-and-run-code path as a code-execution channel."
|
|
4328
|
+
},
|
|
4329
|
+
"NIST-800-53-CM-7": {
|
|
4330
|
+
"covered": true,
|
|
4331
|
+
"adequate": false,
|
|
4332
|
+
"gap": "Least-functionality is not enforced - the code-execution / visualization path is on by default rather than sandboxed or disabled for untrusted input."
|
|
4333
|
+
},
|
|
4334
|
+
"ALL-PROMPT-INJECTION-ACCESS-CONTROL": {
|
|
4335
|
+
"covered": false,
|
|
4336
|
+
"adequate": false,
|
|
4337
|
+
"gap": "No framework requires that prompt-injectable natural-language input be denied a path to code execution in NL-to-code/SQL agents."
|
|
4338
|
+
}
|
|
4339
|
+
},
|
|
4340
|
+
"compliance_exposure_score": {
|
|
4341
|
+
"percent_audit_passing_orgs_still_exposed": 82,
|
|
4342
|
+
"basis": "NL-to-code/SQL agents are adopted for analyst productivity and run model-generated code by design; their codegen path is rarely sandboxed and the natural-language input is not treated as untrusted.",
|
|
4343
|
+
"theater_pattern": "ai_agent_codegen_trust"
|
|
4344
|
+
},
|
|
4345
|
+
"ai_discovered_zeroday": false,
|
|
4346
|
+
"ai_discovery_source": "human_researcher",
|
|
4347
|
+
"ai_assist_factor": "none",
|
|
4348
|
+
"new_control_requirements": [
|
|
4349
|
+
{
|
|
4350
|
+
"id": "NEW-CTRL-102",
|
|
4351
|
+
"name": "AI-NL-TO-CODE-AGENT-EXECUTION-ISOLATION",
|
|
4352
|
+
"description": "An LLM data-analysis agent that generates and executes code or SQL from natural language (text-to-SQL, text-to-Python, charting agents) must treat BOTH the natural-language question and any analyzed data as untrusted, prompt-injectable input, and must never run model-generated code with host or network privileges. Disable code-execution/visualization paths by default for untrusted input, run generated code only in a hardened sandbox (no filesystem/network/process access beyond the dataset), enforce least functionality, and validate or constrain the generated artifact before execution. The distinguishing test: send an analytical question containing an injected instruction to emit non-analytical code (e.g. a shell/file/network call) on a staging agent and confirm the agent refuses to execute it - paper 'AI security' policies that do not sandbox the generate-and-run path still permit RCE.",
|
|
4353
|
+
"evidence": "https://www.kb.cert.org/vuls/id/148244",
|
|
4354
|
+
"gap_closes": [
|
|
4355
|
+
"NIST-800-53-SI-3",
|
|
4356
|
+
"NIST-800-53-CM-7",
|
|
4357
|
+
"ALL-PROMPT-INJECTION-ACCESS-CONTROL"
|
|
4358
|
+
]
|
|
4359
|
+
}
|
|
4360
|
+
],
|
|
4361
|
+
"_auto_imported": false,
|
|
4362
|
+
"_intake_method": "manual-verified-curation"
|
|
4363
|
+
},
|
|
4364
|
+
"CVE-2025-67818": {
|
|
4365
|
+
"name": "Weaviate Backup Restore ZipSlip Path Traversal",
|
|
4366
|
+
"lesson_date": "2026-05-25",
|
|
4367
|
+
"attack_vector": {
|
|
4368
|
+
"description": "Weaviate OSS does not constrain backup entry paths on restore, so a write-capable attacker uses absolute / ../ paths to escape the restore root (CWE-22 ZipSlip) and create or overwrite arbitrary host files.",
|
|
4369
|
+
"privileges_required": "data-write access (NVD PR:H)",
|
|
4370
|
+
"complexity": "low",
|
|
4371
|
+
"ai_factor": "The abused surface is a widely used vector database - the RAG persistence layer that stores embeddings and source data behind LLM applications. The lesson: vector databases are sensitive, RCE-bearing data stores; their file/archive-handling paths must be containment-checked."
|
|
4372
|
+
},
|
|
4373
|
+
"framework_coverage": {
|
|
4374
|
+
"NIST-800-53-SI-2": {
|
|
4375
|
+
"covered": true,
|
|
4376
|
+
"adequate": false,
|
|
4377
|
+
"gap": "Does not track the vector database (RAG persistence layer) as managed, RCE-bearing software."
|
|
4378
|
+
},
|
|
4379
|
+
"NIST-800-53-SI-10": {
|
|
4380
|
+
"covered": true,
|
|
4381
|
+
"adequate": false,
|
|
4382
|
+
"gap": "Path validation is not applied to backup entry paths on restore."
|
|
4383
|
+
},
|
|
4384
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
4385
|
+
"covered": false,
|
|
4386
|
+
"adequate": false,
|
|
4387
|
+
"gap": "No framework treats the vector database as a sensitive RAG store whose backup/file paths must be containment-checked."
|
|
4388
|
+
}
|
|
4389
|
+
},
|
|
4390
|
+
"compliance_exposure_score": {
|
|
4391
|
+
"percent_audit_passing_orgs_still_exposed": 64,
|
|
4392
|
+
"basis": "Vector databases are deployed as convenience RAG infrastructure on trusted-network assumptions; their request and backup paths are not hardened.",
|
|
4393
|
+
"theater_pattern": "ai_demo_framework_trust"
|
|
4394
|
+
},
|
|
4395
|
+
"ai_discovered_zeroday": false,
|
|
4396
|
+
"ai_discovery_source": "human_researcher",
|
|
4397
|
+
"ai_assist_factor": "none",
|
|
4398
|
+
"new_control_requirements": [
|
|
4399
|
+
{
|
|
4400
|
+
"id": "NEW-CTRL-094",
|
|
4401
|
+
"name": "AI-RUNTIME-API-PATH-TRAVERSAL-VALIDATION",
|
|
4402
|
+
"description": "An AI application's file/path-bearing inputs - including archive (backup) entry paths on extraction - must be canonicalized and constrained to the intended directory before any write (reject absolute paths and ../ traversal / ZipSlip). Upgrade Weaviate OSS to the fixed release on your maintained branch (1.30.20 / 1.31.19 / 1.32.16 / 1.33.4), restrict who can insert data or trigger restores, and run least-privilege. This is the same path-traversal class as the Ollama / AnythingLLM entries. The distinguishing test: restore a backup containing a ../ entry on a staging instance and confirm it is rejected, not written outside the restore root.",
|
|
4403
|
+
"evidence": "https://github.com/advisories/GHSA-7v39-2hx7-7c43",
|
|
4404
|
+
"gap_closes": [
|
|
4405
|
+
"NIST-800-53-SI-2",
|
|
4406
|
+
"NIST-800-53-SI-10",
|
|
4407
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
4408
|
+
]
|
|
4409
|
+
}
|
|
4410
|
+
],
|
|
4411
|
+
"_auto_imported": false,
|
|
4412
|
+
"_intake_method": "manual-verified-curation"
|
|
4413
|
+
},
|
|
4214
4414
|
"CVE-2026-26190": {
|
|
4215
4415
|
"name": "Milvus Port 9091 Missing Authentication / Weak Default Token",
|
|
4216
4416
|
"lesson_date": "2026-05-25",
|