@blamejs/exceptd-skills 0.13.95 → 0.13.97
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 +1540 -0
- package/data/atlas-ttps.json +9 -1
- package/data/attack-techniques.json +8 -0
- package/data/cve-catalog.json +419 -0
- package/data/cwe-catalog.json +4 -0
- package/data/framework-control-gaps.json +34 -2
- package/data/zeroday-lessons.json +200 -0
- package/manifest.json +44 -44
- package/package.json +2 -2
- package/sbom.cdx.json +25 -25
|
@@ -51,7 +51,9 @@
|
|
|
51
51
|
"CVE-2024-39722",
|
|
52
52
|
"CVE-2024-42478",
|
|
53
53
|
"CVE-2024-42479",
|
|
54
|
+
"CVE-2024-4889",
|
|
54
55
|
"CVE-2024-50050",
|
|
56
|
+
"CVE-2024-6587",
|
|
55
57
|
"CVE-2025-1550",
|
|
56
58
|
"CVE-2025-1753",
|
|
57
59
|
"CVE-2025-23254",
|
|
@@ -64,6 +66,7 @@
|
|
|
64
66
|
"CVE-2025-54136",
|
|
65
67
|
"CVE-2025-60455",
|
|
66
68
|
"CVE-2025-64496",
|
|
69
|
+
"CVE-2025-64513",
|
|
67
70
|
"CVE-2025-8747",
|
|
68
71
|
"CVE-2026-0766",
|
|
69
72
|
"CVE-2026-22252",
|
|
@@ -74,6 +77,7 @@
|
|
|
74
77
|
"CVE-2026-24214",
|
|
75
78
|
"CVE-2026-24215",
|
|
76
79
|
"CVE-2026-26015",
|
|
80
|
+
"CVE-2026-26190",
|
|
77
81
|
"CVE-2026-30616",
|
|
78
82
|
"CVE-2026-30617",
|
|
79
83
|
"CVE-2026-30624",
|
|
@@ -1410,11 +1414,13 @@
|
|
|
1410
1414
|
"CVE-2024-42478",
|
|
1411
1415
|
"CVE-2024-42479",
|
|
1412
1416
|
"CVE-2024-43468",
|
|
1417
|
+
"CVE-2024-4889",
|
|
1413
1418
|
"CVE-2024-50050",
|
|
1414
1419
|
"CVE-2024-54085",
|
|
1415
1420
|
"CVE-2024-56145",
|
|
1416
1421
|
"CVE-2024-57726",
|
|
1417
1422
|
"CVE-2024-57728",
|
|
1423
|
+
"CVE-2024-6587",
|
|
1418
1424
|
"CVE-2024-7399",
|
|
1419
1425
|
"CVE-2024-7694",
|
|
1420
1426
|
"CVE-2024-8068",
|
|
@@ -1547,6 +1553,7 @@
|
|
|
1547
1553
|
"CVE-2025-64328",
|
|
1548
1554
|
"CVE-2025-64446",
|
|
1549
1555
|
"CVE-2025-64496",
|
|
1556
|
+
"CVE-2025-64513",
|
|
1550
1557
|
"CVE-2025-6543",
|
|
1551
1558
|
"CVE-2025-6554",
|
|
1552
1559
|
"CVE-2025-6558",
|
|
@@ -1602,6 +1609,7 @@
|
|
|
1602
1609
|
"CVE-2026-25108",
|
|
1603
1610
|
"CVE-2026-25592",
|
|
1604
1611
|
"CVE-2026-26015",
|
|
1612
|
+
"CVE-2026-26190",
|
|
1605
1613
|
"CVE-2026-3055",
|
|
1606
1614
|
"CVE-2026-30616",
|
|
1607
1615
|
"CVE-2026-30617",
|
|
@@ -1828,7 +1836,9 @@
|
|
|
1828
1836
|
"CVE-2024-39722",
|
|
1829
1837
|
"CVE-2024-42478",
|
|
1830
1838
|
"CVE-2024-42479",
|
|
1839
|
+
"CVE-2024-4889",
|
|
1831
1840
|
"CVE-2024-50050",
|
|
1841
|
+
"CVE-2024-6587",
|
|
1832
1842
|
"CVE-2025-10585",
|
|
1833
1843
|
"CVE-2025-1094",
|
|
1834
1844
|
"CVE-2025-14174",
|
|
@@ -1846,6 +1856,7 @@
|
|
|
1846
1856
|
"CVE-2025-54136",
|
|
1847
1857
|
"CVE-2025-60455",
|
|
1848
1858
|
"CVE-2025-64496",
|
|
1859
|
+
"CVE-2025-64513",
|
|
1849
1860
|
"CVE-2025-8747",
|
|
1850
1861
|
"CVE-2026-0766",
|
|
1851
1862
|
"CVE-2026-22252",
|
|
@@ -1857,6 +1868,7 @@
|
|
|
1857
1868
|
"CVE-2026-24215",
|
|
1858
1869
|
"CVE-2026-25592",
|
|
1859
1870
|
"CVE-2026-26015",
|
|
1871
|
+
"CVE-2026-26190",
|
|
1860
1872
|
"CVE-2026-30616",
|
|
1861
1873
|
"CVE-2026-30617",
|
|
1862
1874
|
"CVE-2026-30624",
|
|
@@ -2463,11 +2475,13 @@
|
|
|
2463
2475
|
"CVE-2024-42478",
|
|
2464
2476
|
"CVE-2024-42479",
|
|
2465
2477
|
"CVE-2024-43468",
|
|
2478
|
+
"CVE-2024-4889",
|
|
2466
2479
|
"CVE-2024-50050",
|
|
2467
2480
|
"CVE-2024-54085",
|
|
2468
2481
|
"CVE-2024-56145",
|
|
2469
2482
|
"CVE-2024-57726",
|
|
2470
2483
|
"CVE-2024-57728",
|
|
2484
|
+
"CVE-2024-6587",
|
|
2471
2485
|
"CVE-2024-7399",
|
|
2472
2486
|
"CVE-2024-7694",
|
|
2473
2487
|
"CVE-2024-8068",
|
|
@@ -2606,6 +2620,7 @@
|
|
|
2606
2620
|
"CVE-2025-64328",
|
|
2607
2621
|
"CVE-2025-64446",
|
|
2608
2622
|
"CVE-2025-64496",
|
|
2623
|
+
"CVE-2025-64513",
|
|
2609
2624
|
"CVE-2025-6543",
|
|
2610
2625
|
"CVE-2025-6554",
|
|
2611
2626
|
"CVE-2025-6558",
|
|
@@ -2663,6 +2678,7 @@
|
|
|
2663
2678
|
"CVE-2026-25108",
|
|
2664
2679
|
"CVE-2026-25592",
|
|
2665
2680
|
"CVE-2026-26015",
|
|
2681
|
+
"CVE-2026-26190",
|
|
2666
2682
|
"CVE-2026-3055",
|
|
2667
2683
|
"CVE-2026-30616",
|
|
2668
2684
|
"CVE-2026-30617",
|
|
@@ -3729,8 +3745,12 @@
|
|
|
3729
3745
|
"CVE-2022-1471",
|
|
3730
3746
|
"CVE-2023-43654",
|
|
3731
3747
|
"CVE-2023-48022",
|
|
3748
|
+
"CVE-2024-4889",
|
|
3749
|
+
"CVE-2024-6587",
|
|
3750
|
+
"CVE-2025-64513",
|
|
3732
3751
|
"CVE-2026-24206",
|
|
3733
|
-
"CVE-2026-24207"
|
|
3752
|
+
"CVE-2026-24207",
|
|
3753
|
+
"CVE-2026-26190"
|
|
3734
3754
|
],
|
|
3735
3755
|
"atlas_refs": [
|
|
3736
3756
|
"AML.T0010",
|
|
@@ -4958,7 +4978,9 @@
|
|
|
4958
4978
|
"CVE-2024-39722",
|
|
4959
4979
|
"CVE-2024-42478",
|
|
4960
4980
|
"CVE-2024-42479",
|
|
4981
|
+
"CVE-2024-4889",
|
|
4961
4982
|
"CVE-2024-50050",
|
|
4983
|
+
"CVE-2024-6587",
|
|
4962
4984
|
"CVE-2025-1550",
|
|
4963
4985
|
"CVE-2025-1753",
|
|
4964
4986
|
"CVE-2025-23254",
|
|
@@ -4971,6 +4993,7 @@
|
|
|
4971
4993
|
"CVE-2025-54136",
|
|
4972
4994
|
"CVE-2025-60455",
|
|
4973
4995
|
"CVE-2025-64496",
|
|
4996
|
+
"CVE-2025-64513",
|
|
4974
4997
|
"CVE-2025-8747",
|
|
4975
4998
|
"CVE-2026-0300",
|
|
4976
4999
|
"CVE-2026-0766",
|
|
@@ -4984,6 +5007,7 @@
|
|
|
4984
5007
|
"CVE-2026-24215",
|
|
4985
5008
|
"CVE-2026-25592",
|
|
4986
5009
|
"CVE-2026-26015",
|
|
5010
|
+
"CVE-2026-26190",
|
|
4987
5011
|
"CVE-2026-30616",
|
|
4988
5012
|
"CVE-2026-30617",
|
|
4989
5013
|
"CVE-2026-30624",
|
|
@@ -5585,7 +5609,9 @@
|
|
|
5585
5609
|
"CVE-2024-39722",
|
|
5586
5610
|
"CVE-2024-42478",
|
|
5587
5611
|
"CVE-2024-42479",
|
|
5612
|
+
"CVE-2024-4889",
|
|
5588
5613
|
"CVE-2024-50050",
|
|
5614
|
+
"CVE-2024-6587",
|
|
5589
5615
|
"CVE-2025-1550",
|
|
5590
5616
|
"CVE-2025-1753",
|
|
5591
5617
|
"CVE-2025-23254",
|
|
@@ -5598,6 +5624,7 @@
|
|
|
5598
5624
|
"CVE-2025-54136",
|
|
5599
5625
|
"CVE-2025-60455",
|
|
5600
5626
|
"CVE-2025-64496",
|
|
5627
|
+
"CVE-2025-64513",
|
|
5601
5628
|
"CVE-2025-8747",
|
|
5602
5629
|
"CVE-2026-0766",
|
|
5603
5630
|
"CVE-2026-22252",
|
|
@@ -5609,6 +5636,7 @@
|
|
|
5609
5636
|
"CVE-2026-24215",
|
|
5610
5637
|
"CVE-2026-25592",
|
|
5611
5638
|
"CVE-2026-26015",
|
|
5639
|
+
"CVE-2026-26190",
|
|
5612
5640
|
"CVE-2026-30616",
|
|
5613
5641
|
"CVE-2026-30617",
|
|
5614
5642
|
"CVE-2026-30624",
|
|
@@ -5895,9 +5923,13 @@
|
|
|
5895
5923
|
"CVE-2023-43654",
|
|
5896
5924
|
"CVE-2023-48022",
|
|
5897
5925
|
"CVE-2024-1709",
|
|
5926
|
+
"CVE-2024-4889",
|
|
5927
|
+
"CVE-2024-6587",
|
|
5928
|
+
"CVE-2025-64513",
|
|
5898
5929
|
"CVE-2026-20182",
|
|
5899
5930
|
"CVE-2026-24206",
|
|
5900
|
-
"CVE-2026-24207"
|
|
5931
|
+
"CVE-2026-24207",
|
|
5932
|
+
"CVE-2026-26190"
|
|
5901
5933
|
],
|
|
5902
5934
|
"atlas_refs": [],
|
|
5903
5935
|
"attack_refs": [
|
|
@@ -4111,6 +4111,206 @@
|
|
|
4111
4111
|
"_auto_imported": false,
|
|
4112
4112
|
"_intake_method": "manual-verified-curation"
|
|
4113
4113
|
},
|
|
4114
|
+
"CVE-2024-6587": {
|
|
4115
|
+
"name": "BerriAI LiteLLM api_base SSRF API-Key Interception",
|
|
4116
|
+
"lesson_date": "2026-05-25",
|
|
4117
|
+
"attack_vector": {
|
|
4118
|
+
"description": "BerriAI LiteLLM (CWE-918 SSRF via user-supplied api_base) on the LLM proxy/gateway forwards the gateway's configured provider API key to an attacker-supplied api_base, leaking the keys it holds.",
|
|
4119
|
+
"privileges_required": "none (NVD PR:N) - a request parameter",
|
|
4120
|
+
"complexity": "low (NVD AC:L)",
|
|
4121
|
+
"ai_factor": "The abused surface is the LLM proxy/gateway - the shared chokepoint that holds provider API keys for many models and teams. The lesson: an LLM gateway is a high-value credential store, so its request and config planes must be isolated from the secrets (allow-list egress, no dynamic evaluation of config), or a single SSRF / config flaw becomes mass key theft or proxy RCE. CVE-2024-6587 was the SSRF link of a Pwn2Own full-chain RCE against LiteLLM."
|
|
4122
|
+
},
|
|
4123
|
+
"framework_coverage": {
|
|
4124
|
+
"NIST-800-53-IA-2": {
|
|
4125
|
+
"covered": true,
|
|
4126
|
+
"adequate": false,
|
|
4127
|
+
"gap": "Authenticator (API key) management does not isolate the gateway's stored provider keys from request-controlled egress."
|
|
4128
|
+
},
|
|
4129
|
+
"NIST-800-53-SI-2": {
|
|
4130
|
+
"covered": true,
|
|
4131
|
+
"adequate": false,
|
|
4132
|
+
"gap": "Does not track the LLM proxy/gateway as managed, credential-bearing software."
|
|
4133
|
+
},
|
|
4134
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
4135
|
+
"covered": false,
|
|
4136
|
+
"adequate": false,
|
|
4137
|
+
"gap": "No framework treats the LLM gateway as a high-value credential store whose request/config plane must be isolated from the secrets."
|
|
4138
|
+
}
|
|
4139
|
+
},
|
|
4140
|
+
"compliance_exposure_score": {
|
|
4141
|
+
"percent_audit_passing_orgs_still_exposed": 70,
|
|
4142
|
+
"basis": "LLM gateways concentrate provider keys but are deployed as convenience infrastructure; their request/config planes are not isolated from the credential store.",
|
|
4143
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
4144
|
+
},
|
|
4145
|
+
"ai_discovered_zeroday": false,
|
|
4146
|
+
"ai_discovery_source": "human_researcher",
|
|
4147
|
+
"ai_assist_factor": "none",
|
|
4148
|
+
"new_control_requirements": [
|
|
4149
|
+
{
|
|
4150
|
+
"id": "NEW-CTRL-013",
|
|
4151
|
+
"name": "AI-GATEWAY-CREDENTIAL-STORE-ISOLATION",
|
|
4152
|
+
"description": "The LLM proxy/gateway must isolate its stored provider credentials from request- and config-controlled flows: allow-list permitted provider endpoints (reject attacker-supplied api_base), never forward stored keys to unvalidated destinations, disable dynamic evaluation of configuration, and keep the admin/config surface off untrusted networks. Upgrade BerriAI LiteLLM to a patched release (1.44.8+). The distinguishing test: send a /chat/completions request with an attacker api_base, and an admin config with a remote UI_LOGO_PATH, to a staging gateway and confirm no key egress and no code execution.",
|
|
4153
|
+
"evidence": "https://github.com/advisories/GHSA-g26j-5385-hhw3",
|
|
4154
|
+
"gap_closes": [
|
|
4155
|
+
"NIST-800-53-IA-2",
|
|
4156
|
+
"NIST-800-53-SI-2",
|
|
4157
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
4158
|
+
]
|
|
4159
|
+
}
|
|
4160
|
+
],
|
|
4161
|
+
"_auto_imported": false,
|
|
4162
|
+
"_intake_method": "manual-verified-curation"
|
|
4163
|
+
},
|
|
4164
|
+
"CVE-2025-64513": {
|
|
4165
|
+
"name": "Milvus Proxy Authentication Bypass via Forged Headers",
|
|
4166
|
+
"lesson_date": "2026-05-25",
|
|
4167
|
+
"attack_vector": {
|
|
4168
|
+
"description": "Milvus (CWE-287 forged-header auth bypass in the Proxy) lets an unauthenticated network attacker reach the vector database's operations and data, bypassing authentication.",
|
|
4169
|
+
"privileges_required": "none (NVD/CNA AV:N / PR:N) - unauthenticated",
|
|
4170
|
+
"complexity": "low (AC:L)",
|
|
4171
|
+
"ai_factor": "The abused surface is the vector database - the RAG persistence layer that stores embeddings and the source documents (often PII) behind LLM applications. The lesson: vector databases are sensitive data stores, not caches; every API/management port (including metrics ports like 9091) must authenticate, default tokens must be replaced, and the DB must not be network-exposed. An auth bypass here exposes RAG data and enables retrieval poisoning."
|
|
4172
|
+
},
|
|
4173
|
+
"framework_coverage": {
|
|
4174
|
+
"NIST-800-53-IA-2": {
|
|
4175
|
+
"covered": true,
|
|
4176
|
+
"adequate": false,
|
|
4177
|
+
"gap": "Authentication is not enforced on the vector database's API/management surface."
|
|
4178
|
+
},
|
|
4179
|
+
"NIST-800-53-SI-2": {
|
|
4180
|
+
"covered": true,
|
|
4181
|
+
"adequate": false,
|
|
4182
|
+
"gap": "Does not track the vector database (RAG persistence layer) as managed, auth-bypass-bearing software."
|
|
4183
|
+
},
|
|
4184
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
4185
|
+
"covered": false,
|
|
4186
|
+
"adequate": false,
|
|
4187
|
+
"gap": "No framework treats the vector database as a sensitive RAG data store whose API/management ports must authenticate."
|
|
4188
|
+
}
|
|
4189
|
+
},
|
|
4190
|
+
"compliance_exposure_score": {
|
|
4191
|
+
"percent_audit_passing_orgs_still_exposed": 70,
|
|
4192
|
+
"basis": "Vector databases are deployed as convenience RAG infrastructure on trusted-network assumptions, often with default tokens and exposed management ports.",
|
|
4193
|
+
"theater_pattern": "ai_supply_chain_trust"
|
|
4194
|
+
},
|
|
4195
|
+
"ai_discovered_zeroday": false,
|
|
4196
|
+
"ai_discovery_source": "human_researcher",
|
|
4197
|
+
"ai_assist_factor": "none",
|
|
4198
|
+
"new_control_requirements": [
|
|
4199
|
+
{
|
|
4200
|
+
"id": "NEW-CTRL-101",
|
|
4201
|
+
"name": "VECTOR-DB-AUTHENTICATION-ENFORCEMENT",
|
|
4202
|
+
"description": "A vector database storing RAG embeddings and source data must enforce authentication on every API and management/metrics port (including ports like Milvus 9091), reject forged/missing auth, replace default tokens, and never be exposed to untrusted networks. Upgrade Milvus to a patched release (2.4.24 / 2.5.21 / 2.6.5). The distinguishing test: from an unauthenticated client, attempt forged-header access to the Proxy and direct access to the metrics/management port on a staging instance and confirm both are refused.",
|
|
4203
|
+
"evidence": "https://github.com/milvus-io/milvus/security/advisories/GHSA-mhjq-8c7m-3f7p",
|
|
4204
|
+
"gap_closes": [
|
|
4205
|
+
"NIST-800-53-IA-2",
|
|
4206
|
+
"NIST-800-53-SI-2",
|
|
4207
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
4208
|
+
]
|
|
4209
|
+
}
|
|
4210
|
+
],
|
|
4211
|
+
"_auto_imported": false,
|
|
4212
|
+
"_intake_method": "manual-verified-curation"
|
|
4213
|
+
},
|
|
4214
|
+
"CVE-2026-26190": {
|
|
4215
|
+
"name": "Milvus Port 9091 Missing Authentication / Weak Default Token",
|
|
4216
|
+
"lesson_date": "2026-05-25",
|
|
4217
|
+
"attack_vector": {
|
|
4218
|
+
"description": "Milvus (CWE-306 missing authentication on port 9091 with weak default tokens) lets an unauthenticated network attacker reach the vector database's operations and data, bypassing authentication.",
|
|
4219
|
+
"privileges_required": "none (NVD/CNA AV:N / PR:N) - unauthenticated",
|
|
4220
|
+
"complexity": "low (AC:L)",
|
|
4221
|
+
"ai_factor": "The abused surface is the vector database - the RAG persistence layer that stores embeddings and the source documents (often PII) behind LLM applications. The lesson: vector databases are sensitive data stores, not caches; every API/management port (including metrics ports like 9091) must authenticate, default tokens must be replaced, and the DB must not be network-exposed. An auth bypass here exposes RAG data and enables retrieval poisoning."
|
|
4222
|
+
},
|
|
4223
|
+
"framework_coverage": {
|
|
4224
|
+
"NIST-800-53-IA-2": {
|
|
4225
|
+
"covered": true,
|
|
4226
|
+
"adequate": false,
|
|
4227
|
+
"gap": "Authentication is not enforced on the vector database's API/management surface."
|
|
4228
|
+
},
|
|
4229
|
+
"NIST-800-53-SI-2": {
|
|
4230
|
+
"covered": true,
|
|
4231
|
+
"adequate": false,
|
|
4232
|
+
"gap": "Does not track the vector database (RAG persistence layer) as managed, auth-bypass-bearing software."
|
|
4233
|
+
},
|
|
4234
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
4235
|
+
"covered": false,
|
|
4236
|
+
"adequate": false,
|
|
4237
|
+
"gap": "No framework treats the vector database as a sensitive RAG data store whose API/management ports must authenticate."
|
|
4238
|
+
}
|
|
4239
|
+
},
|
|
4240
|
+
"compliance_exposure_score": {
|
|
4241
|
+
"percent_audit_passing_orgs_still_exposed": 70,
|
|
4242
|
+
"basis": "Vector databases are deployed as convenience RAG infrastructure on trusted-network assumptions, often with default tokens and exposed management ports.",
|
|
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 storing RAG embeddings and source data must enforce authentication on every API and management/metrics port (including ports like Milvus 9091), reject forged/missing auth, replace default tokens, and never be exposed to untrusted networks. Upgrade Milvus to a patched release (2.5.27 / 2.6.10). The distinguishing test: from an unauthenticated client, attempt forged-header access to the Proxy and direct access to the metrics/management port on a staging instance and confirm both are refused.",
|
|
4253
|
+
"evidence": "https://github.com/milvus-io/milvus/security/advisories/GHSA-7ppg-37fh-vcr6",
|
|
4254
|
+
"gap_closes": [
|
|
4255
|
+
"NIST-800-53-IA-2",
|
|
4256
|
+
"NIST-800-53-SI-2",
|
|
4257
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
4258
|
+
]
|
|
4259
|
+
}
|
|
4260
|
+
],
|
|
4261
|
+
"_auto_imported": false,
|
|
4262
|
+
"_intake_method": "manual-verified-curation"
|
|
4263
|
+
},
|
|
4264
|
+
"CVE-2024-4889": {
|
|
4265
|
+
"name": "BerriAI LiteLLM Config Code Injection via UI_LOGO_PATH / KMS",
|
|
4266
|
+
"lesson_date": "2026-05-25",
|
|
4267
|
+
"attack_vector": {
|
|
4268
|
+
"description": "BerriAI LiteLLM (CWE-94 code injection via the secret-management config path) on the LLM proxy/gateway lets admin-influenced config reach a dynamic-evaluation path and execute code on the credential-bearing proxy.",
|
|
4269
|
+
"privileges_required": "admin-level config influence (NVD PR:H)",
|
|
4270
|
+
"complexity": "low (NVD AC:L)",
|
|
4271
|
+
"ai_factor": "The abused surface is the LLM proxy/gateway - the shared chokepoint that holds provider API keys for many models and teams. The lesson: an LLM gateway is a high-value credential store, so its request and config planes must be isolated from the secrets (allow-list egress, no dynamic evaluation of config), or a single SSRF / config flaw becomes mass key theft or proxy RCE. CVE-2024-6587 was the SSRF link of a Pwn2Own full-chain RCE against LiteLLM."
|
|
4272
|
+
},
|
|
4273
|
+
"framework_coverage": {
|
|
4274
|
+
"NIST-800-53-IA-2": {
|
|
4275
|
+
"covered": true,
|
|
4276
|
+
"adequate": false,
|
|
4277
|
+
"gap": "Authenticator (API key) management does not isolate the gateway's stored provider keys from request-controlled egress."
|
|
4278
|
+
},
|
|
4279
|
+
"NIST-800-53-SI-2": {
|
|
4280
|
+
"covered": true,
|
|
4281
|
+
"adequate": false,
|
|
4282
|
+
"gap": "Does not track the LLM proxy/gateway as managed, credential-bearing software."
|
|
4283
|
+
},
|
|
4284
|
+
"ALL-AI-PIPELINE-INTEGRITY": {
|
|
4285
|
+
"covered": false,
|
|
4286
|
+
"adequate": false,
|
|
4287
|
+
"gap": "No framework treats the LLM gateway as a high-value credential store whose request/config plane must be isolated from the secrets."
|
|
4288
|
+
}
|
|
4289
|
+
},
|
|
4290
|
+
"compliance_exposure_score": {
|
|
4291
|
+
"percent_audit_passing_orgs_still_exposed": 70,
|
|
4292
|
+
"basis": "LLM gateways concentrate provider keys but are deployed as convenience infrastructure; their request/config planes are not isolated from the credential store.",
|
|
4293
|
+
"theater_pattern": "ai_supply_chain_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-013",
|
|
4301
|
+
"name": "AI-GATEWAY-CREDENTIAL-STORE-ISOLATION",
|
|
4302
|
+
"description": "The LLM proxy/gateway must isolate its stored provider credentials from request- and config-controlled flows: allow-list permitted provider endpoints (reject attacker-supplied api_base), never forward stored keys to unvalidated destinations, disable dynamic evaluation of configuration, and keep the admin/config surface off untrusted networks. Upgrade BerriAI LiteLLM to a patched release (1.44.16+). The distinguishing test: send a /chat/completions request with an attacker api_base, and an admin config with a remote UI_LOGO_PATH, to a staging gateway and confirm no key egress and no code execution.",
|
|
4303
|
+
"evidence": "https://github.com/advisories/GHSA-423v-966v-frxg",
|
|
4304
|
+
"gap_closes": [
|
|
4305
|
+
"NIST-800-53-IA-2",
|
|
4306
|
+
"NIST-800-53-SI-2",
|
|
4307
|
+
"ALL-AI-PIPELINE-INTEGRITY"
|
|
4308
|
+
]
|
|
4309
|
+
}
|
|
4310
|
+
],
|
|
4311
|
+
"_auto_imported": false,
|
|
4312
|
+
"_intake_method": "manual-verified-curation"
|
|
4313
|
+
},
|
|
4114
4314
|
"CVE-2023-44467": {
|
|
4115
4315
|
"name": "LangChain-Experimental PALChain dunder-import Code Execution (CVE-2023-36258 bypass)",
|
|
4116
4316
|
"lesson_date": "2026-05-25",
|