@blamejs/exceptd-skills 0.13.107 → 0.13.109

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.
@@ -35,7 +35,10 @@
35
35
  "opened_date": "2026-01-01",
36
36
  "evidence_cves": [
37
37
  "CVE-2022-1471",
38
+ "CVE-2022-36551",
38
39
  "CVE-2023-43654",
40
+ "CVE-2023-43791",
41
+ "CVE-2023-47117",
39
42
  "CVE-2023-48022",
40
43
  "CVE-2023-51449",
41
44
  "CVE-2023-6016",
@@ -70,6 +73,7 @@
70
73
  "CVE-2025-1753",
71
74
  "CVE-2025-23254",
72
75
  "CVE-2025-23266",
76
+ "CVE-2025-25297",
73
77
  "CVE-2025-27520",
74
78
  "CVE-2025-30165",
75
79
  "CVE-2025-30202",
@@ -1238,9 +1242,11 @@
1238
1242
  "status": "open",
1239
1243
  "opened_date": "2026-05-17",
1240
1244
  "evidence_cves": [
1245
+ "CVE-2022-36551",
1241
1246
  "CVE-2024-0132",
1242
1247
  "CVE-2024-21626",
1243
- "CVE-2025-23266"
1248
+ "CVE-2025-23266",
1249
+ "CVE-2025-25297"
1244
1250
  ],
1245
1251
  "atlas_refs": [],
1246
1252
  "attack_refs": [
@@ -2194,6 +2200,8 @@
2194
2200
  "opened_date": "2026-04-01",
2195
2201
  "evidence_cves": [
2196
2202
  "BUG-2026-NIGHTMARE-ECLIPSE-YELLOWKEY",
2203
+ "CVE-2023-43791",
2204
+ "CVE-2023-47117",
2197
2205
  "CVE-2025-14847",
2198
2206
  "CVE-2025-22226",
2199
2207
  "CVE-2026-43284"
@@ -2261,6 +2269,7 @@
2261
2269
  "status": "open",
2262
2270
  "opened_date": "2026-05-01",
2263
2271
  "evidence_cves": [
2272
+ "CVE-2022-36551",
2264
2273
  "CVE-2023-48022",
2265
2274
  "CVE-2023-51449",
2266
2275
  "CVE-2023-6038",
@@ -2272,6 +2281,7 @@
2272
2281
  "CVE-2024-42478",
2273
2282
  "CVE-2024-42479",
2274
2283
  "CVE-2025-23266",
2284
+ "CVE-2025-25297",
2275
2285
  "CVE-2025-30202",
2276
2286
  "CVE-2025-32444",
2277
2287
  "CVE-2025-53767",
@@ -2343,6 +2353,7 @@
2343
2353
  "status": "open",
2344
2354
  "opened_date": "2026-05-13",
2345
2355
  "evidence_cves": [
2356
+ "CVE-2022-36551",
2346
2357
  "CVE-2023-44467",
2347
2358
  "CVE-2024-0129",
2348
2359
  "CVE-2024-11392",
@@ -2366,6 +2377,7 @@
2366
2377
  "CVE-2025-1550",
2367
2378
  "CVE-2025-1753",
2368
2379
  "CVE-2025-23254",
2380
+ "CVE-2025-25297",
2369
2381
  "CVE-2025-27520",
2370
2382
  "CVE-2025-30165",
2371
2383
  "CVE-2025-32434",
@@ -3831,6 +3843,8 @@
3831
3843
  "evidence_cves": [
3832
3844
  "CVE-2022-1471",
3833
3845
  "CVE-2023-43654",
3846
+ "CVE-2023-43791",
3847
+ "CVE-2023-47117",
3834
3848
  "CVE-2023-48022",
3835
3849
  "CVE-2023-6019",
3836
3850
  "CVE-2023-6021",
@@ -5052,8 +5066,11 @@
5052
5066
  "opened_date": "2026-05-15",
5053
5067
  "evidence_cves": [
5054
5068
  "CVE-2022-1471",
5069
+ "CVE-2022-36551",
5055
5070
  "CVE-2023-43654",
5071
+ "CVE-2023-43791",
5056
5072
  "CVE-2023-44467",
5073
+ "CVE-2023-47117",
5057
5074
  "CVE-2023-48022",
5058
5075
  "CVE-2023-51449",
5059
5076
  "CVE-2023-6016",
@@ -5090,6 +5107,7 @@
5090
5107
  "CVE-2025-1753",
5091
5108
  "CVE-2025-23254",
5092
5109
  "CVE-2025-23266",
5110
+ "CVE-2025-25297",
5093
5111
  "CVE-2025-27520",
5094
5112
  "CVE-2025-30165",
5095
5113
  "CVE-2025-30202",
@@ -5167,8 +5185,12 @@
5167
5185
  "status": "open",
5168
5186
  "opened_date": "2026-05-15",
5169
5187
  "evidence_cves": [
5188
+ "CVE-2022-36551",
5189
+ "CVE-2023-43791",
5190
+ "CVE-2023-47117",
5170
5191
  "CVE-2023-6038",
5171
5192
  "CVE-2024-1709",
5193
+ "CVE-2025-25297",
5172
5194
  "CVE-2025-3248",
5173
5195
  "CVE-2026-33017",
5174
5196
  "CVE-2026-39987",
@@ -5462,6 +5484,8 @@
5462
5484
  "status": "open",
5463
5485
  "opened_date": "2026-05-15",
5464
5486
  "evidence_cves": [
5487
+ "CVE-2023-43791",
5488
+ "CVE-2023-47117",
5465
5489
  "CVE-2023-6016",
5466
5490
  "CVE-2023-6038",
5467
5491
  "CVE-2025-3248",
@@ -5625,7 +5649,10 @@
5625
5649
  "status": "open",
5626
5650
  "opened_date": "2026-05-17",
5627
5651
  "evidence_cves": [
5652
+ "CVE-2022-36551",
5653
+ "CVE-2023-43791",
5628
5654
  "CVE-2023-44467",
5655
+ "CVE-2023-47117",
5629
5656
  "CVE-2023-51449",
5630
5657
  "CVE-2023-6016",
5631
5658
  "CVE-2023-6038",
@@ -5657,6 +5684,7 @@
5657
5684
  "CVE-2025-1753",
5658
5685
  "CVE-2025-23254",
5659
5686
  "CVE-2025-23266",
5687
+ "CVE-2025-25297",
5660
5688
  "CVE-2025-27520",
5661
5689
  "CVE-2025-30165",
5662
5690
  "CVE-2025-30202",
@@ -5725,8 +5753,11 @@
5725
5753
  "opened_date": "2026-05-17",
5726
5754
  "evidence_cves": [
5727
5755
  "CVE-2022-1471",
5756
+ "CVE-2022-36551",
5728
5757
  "CVE-2023-43654",
5758
+ "CVE-2023-43791",
5729
5759
  "CVE-2023-44467",
5760
+ "CVE-2023-47117",
5730
5761
  "CVE-2023-48022",
5731
5762
  "CVE-2023-51449",
5732
5763
  "CVE-2023-6016",
@@ -5763,6 +5794,7 @@
5763
5794
  "CVE-2025-1753",
5764
5795
  "CVE-2025-23254",
5765
5796
  "CVE-2025-23266",
5797
+ "CVE-2025-25297",
5766
5798
  "CVE-2025-27520",
5767
5799
  "CVE-2025-30165",
5768
5800
  "CVE-2025-30202",
@@ -6009,6 +6041,8 @@
6009
6041
  "opened_date": "2026-05-18",
6010
6042
  "evidence_cves": [
6011
6043
  "CVE-2020-10148",
6044
+ "CVE-2023-43791",
6045
+ "CVE-2023-47117",
6012
6046
  "CVE-2023-48022",
6013
6047
  "CVE-2023-6038",
6014
6048
  "CVE-2025-3248",
@@ -6208,7 +6242,9 @@
6208
6242
  "status": "open",
6209
6243
  "opened_date": "2026-05-18",
6210
6244
  "evidence_cves": [
6245
+ "CVE-2022-36551",
6211
6246
  "CVE-2024-21762",
6247
+ "CVE-2025-25297",
6212
6248
  "CVE-2026-20182"
6213
6249
  ],
6214
6250
  "atlas_refs": [],
@@ -4561,6 +4561,206 @@
4561
4561
  "_auto_imported": false,
4562
4562
  "_intake_method": "manual-verified-curation"
4563
4563
  },
4564
+ "CVE-2025-25297": {
4565
+ "name": "Label Studio S3 Storage Endpoint Server-Side Request Forgery",
4566
+ "lesson_date": "2026-05-25",
4567
+ "attack_vector": {
4568
+ "description": "Label Studio's S3 cloud-storage integration accepts a custom endpoint URL without validation, so an attacker points it at internal services or cloud metadata and the server issues the request, leaking data via the responses.",
4569
+ "privileges_required": "low (an account; self-registration is on by default in the data-import case)",
4570
+ "complexity": "low",
4571
+ "ai_factor": "The abused surface is Label Studio, a data-labeling / annotation platform central to ML data pipelines. The lesson: an ML data platform's server-side fetches (import URLs, storage endpoints) are an egress that must validate and allowlist destinations, or they become an SSRF pivot into internal networks and cloud metadata."
4572
+ },
4573
+ "framework_coverage": {
4574
+ "NIST-800-53-SC-7": {
4575
+ "covered": true,
4576
+ "adequate": false,
4577
+ "gap": "Boundary protection does not treat the ML data platform's server-side fetch as an egress that can reach internal services."
4578
+ },
4579
+ "NIST-800-53-SI-10": {
4580
+ "covered": true,
4581
+ "adequate": false,
4582
+ "gap": "No input validation is applied to the user-supplied URL/endpoint before the server fetches it."
4583
+ },
4584
+ "ALL-AI-PIPELINE-INTEGRITY": {
4585
+ "covered": false,
4586
+ "adequate": false,
4587
+ "gap": "No framework treats an ML data-pipeline platform's import/storage URL fetch as an egress that must validate and allowlist destinations."
4588
+ }
4589
+ },
4590
+ "compliance_exposure_score": {
4591
+ "percent_audit_passing_orgs_still_exposed": 80,
4592
+ "basis": "ML data-labeling platforms are deployed inside trusted networks and import from arbitrary URLs/storage endpoints by design; their server-side fetches are not destination-validated.",
4593
+ "theater_pattern": "ai_data_pipeline_ssrf_trust"
4594
+ },
4595
+ "ai_discovered_zeroday": false,
4596
+ "ai_discovery_source": "human_researcher",
4597
+ "ai_assist_factor": "none",
4598
+ "new_control_requirements": [
4599
+ {
4600
+ "id": "NEW-CTRL-105",
4601
+ "name": "AI-DATA-PIPELINE-IMPORT-SSRF-PROTECTION",
4602
+ "description": "An AI data-pipeline platform that fetches from caller-supplied URLs or endpoints (data import, cloud-storage endpoint configuration, webhook/annotation sources) must validate and allowlist the destination before issuing the request: reject private, link-local, and cloud-metadata addresses (169.254.169.254), reject file:// and non-HTTP schemes, and resolve+pin the host to prevent DNS-rebinding. Restrict who can configure server-side fetches and disable self-registration if not required. The distinguishing test: configure the import/storage URL to an internal or cloud-metadata address on a staging instance and confirm the server refuses the fetch - a platform that issues the request and returns the response is exploitable for SSRF / internal pivot, regardless of authentication posture.",
4603
+ "evidence": "https://github.com/advisories/GHSA-m238-fmcw-wh58",
4604
+ "gap_closes": [
4605
+ "NIST-800-53-SC-7",
4606
+ "NIST-800-53-SI-10",
4607
+ "ALL-AI-PIPELINE-INTEGRITY"
4608
+ ]
4609
+ }
4610
+ ],
4611
+ "_auto_imported": false,
4612
+ "_intake_method": "manual-verified-curation"
4613
+ },
4614
+ "CVE-2023-47117": {
4615
+ "name": "Label Studio ORM Filter Manipulation Sensitive-Field Disclosure",
4616
+ "lesson_date": "2026-05-25",
4617
+ "attack_vector": {
4618
+ "description": "Label Studio passes user-controlled task filters into a Django ORM query without restricting referenced fields, so an attacker reads sensitive fields (password hashes, tokens) from all user accounts.",
4619
+ "privileges_required": "none (unauthenticated field disclosure)",
4620
+ "complexity": "low",
4621
+ "ai_factor": "The abused surface is Label Studio, a data-labeling / annotation platform central to ML data pipelines. The lesson: an ML data-platform API must enforce object-level authorization and never expose sensitive fields - this CVE supplies the leaked credentials in a privilege-escalation chain that ends in full account takeover."
4622
+ },
4623
+ "framework_coverage": {
4624
+ "NIST-800-53-AC-3": {
4625
+ "covered": true,
4626
+ "adequate": false,
4627
+ "gap": "Access enforcement does not constrain which records/fields a user can read through the API."
4628
+ },
4629
+ "NIST-800-53-SC-28": {
4630
+ "covered": true,
4631
+ "adequate": false,
4632
+ "gap": "Sensitive fields (password hashes, tokens) are readable through the API and directly usable once leaked."
4633
+ },
4634
+ "ALL-AI-PIPELINE-INTEGRITY": {
4635
+ "covered": false,
4636
+ "adequate": false,
4637
+ "gap": "No framework treats an ML data-platform API's object-level authorization and sensitive-field exposure as integrity controls whose failure yields account takeover."
4638
+ }
4639
+ },
4640
+ "compliance_exposure_score": {
4641
+ "percent_audit_passing_orgs_still_exposed": 80,
4642
+ "basis": "ML data-labeling platforms expose rich APIs over collaborative datasets; object-level authorization and serializer field allowlisting are frequently missing, and audits rarely test cross-account field reads.",
4643
+ "theater_pattern": "ai_app_broken_object_authorization"
4644
+ },
4645
+ "ai_discovered_zeroday": false,
4646
+ "ai_discovery_source": "human_researcher",
4647
+ "ai_assist_factor": "none",
4648
+ "new_control_requirements": [
4649
+ {
4650
+ "id": "NEW-CTRL-106",
4651
+ "name": "AI-APP-API-OBJECT-AUTHORIZATION-AND-FIELD-EXPOSURE",
4652
+ "description": "An AI data-platform API (data-labeling, annotation, dataset/registry services) must enforce object-level authorization on every read and must never expose sensitive fields - secrets, session-signing keys, auth tokens, password hashes - through API responses, serializers, or user-controlled query/filter expressions. Use serializer field allowlists (never blanket model serialization), reject ORM/filter inputs that reference fields the caller is not authorized to read, scope every query to the caller's own objects, and store credentials so a read leak is not directly replayable (and rotate exposed secrets). The distinguishing test: as a low-privilege user, craft a filter/query that references another account's password hash or token, and confirm the API refuses it - a platform whose filter/serializer leaks sensitive fields lets an attacker chain disclosure into account impersonation and privilege escalation.",
4653
+ "evidence": "https://github.com/advisories/GHSA-6hjj-gq77-j4qw",
4654
+ "gap_closes": [
4655
+ "NIST-800-53-AC-3",
4656
+ "NIST-800-53-SC-28",
4657
+ "ALL-AI-PIPELINE-INTEGRITY"
4658
+ ]
4659
+ }
4660
+ ],
4661
+ "_auto_imported": false,
4662
+ "_intake_method": "manual-verified-curation"
4663
+ },
4664
+ "CVE-2023-43791": {
4665
+ "name": "Label Studio Account Impersonation and Privilege Escalation",
4666
+ "lesson_date": "2026-05-25",
4667
+ "attack_vector": {
4668
+ "description": "Label Studio exposes information that, chained with the ORM sensitive-field leak (CVE-2023-47117), lets an attacker impersonate any account and escalate from a low-privilege user to a Django super administrator.",
4669
+ "privileges_required": "low (a low-privilege account; the chain reaches Django superadmin)",
4670
+ "complexity": "low",
4671
+ "ai_factor": "The abused surface is Label Studio, a data-labeling / annotation platform central to ML data pipelines. The lesson: an ML data-platform API must enforce object-level authorization and never expose sensitive fields - this CVE replays the leaked credentials to impersonate and escalate in a privilege-escalation chain that ends in full account takeover."
4672
+ },
4673
+ "framework_coverage": {
4674
+ "NIST-800-53-AC-3": {
4675
+ "covered": true,
4676
+ "adequate": false,
4677
+ "gap": "Access enforcement does not constrain which records/fields a user can read through the API."
4678
+ },
4679
+ "NIST-800-53-SC-28": {
4680
+ "covered": true,
4681
+ "adequate": false,
4682
+ "gap": "Sensitive fields (password hashes, tokens) are readable through the API and directly usable once leaked."
4683
+ },
4684
+ "ALL-AI-PIPELINE-INTEGRITY": {
4685
+ "covered": false,
4686
+ "adequate": false,
4687
+ "gap": "No framework treats an ML data-platform API's object-level authorization and sensitive-field exposure as integrity controls whose failure yields account takeover."
4688
+ }
4689
+ },
4690
+ "compliance_exposure_score": {
4691
+ "percent_audit_passing_orgs_still_exposed": 82,
4692
+ "basis": "ML data-labeling platforms expose rich APIs over collaborative datasets; object-level authorization and serializer field allowlisting are frequently missing, and audits rarely test cross-account field reads.",
4693
+ "theater_pattern": "ai_app_broken_object_authorization"
4694
+ },
4695
+ "ai_discovered_zeroday": false,
4696
+ "ai_discovery_source": "human_researcher",
4697
+ "ai_assist_factor": "none",
4698
+ "new_control_requirements": [
4699
+ {
4700
+ "id": "NEW-CTRL-106",
4701
+ "name": "AI-APP-API-OBJECT-AUTHORIZATION-AND-FIELD-EXPOSURE",
4702
+ "description": "An AI data-platform API (data-labeling, annotation, dataset/registry services) must enforce object-level authorization on every read and must never expose sensitive fields - secrets, session-signing keys, auth tokens, password hashes - through API responses, serializers, or user-controlled query/filter expressions. Use serializer field allowlists (never blanket model serialization), reject ORM/filter inputs that reference fields the caller is not authorized to read, scope every query to the caller's own objects, and store credentials so a read leak is not directly replayable (and rotate exposed secrets). The distinguishing test: as a low-privilege user, craft a filter/query that references another account's password hash or token, and confirm the API refuses it - a platform whose filter/serializer leaks sensitive fields lets an attacker chain disclosure into account impersonation and privilege escalation.",
4703
+ "evidence": "https://github.com/advisories/GHSA-f475-x83m-rx5m",
4704
+ "gap_closes": [
4705
+ "NIST-800-53-AC-3",
4706
+ "NIST-800-53-SC-28",
4707
+ "ALL-AI-PIPELINE-INTEGRITY"
4708
+ ]
4709
+ }
4710
+ ],
4711
+ "_auto_imported": false,
4712
+ "_intake_method": "manual-verified-curation"
4713
+ },
4714
+ "CVE-2022-36551": {
4715
+ "name": "Label Studio Data Import Server-Side Request Forgery",
4716
+ "lesson_date": "2026-05-25",
4717
+ "attack_vector": {
4718
+ "description": "Label Studio's Data Import module fetches a user-supplied URL with no destination restriction; with self-registration on by default, any remote attacker supplies internal or file:// URLs and the server reads arbitrary files / reaches internal services.",
4719
+ "privileges_required": "low (an account; self-registration is on by default in the data-import case)",
4720
+ "complexity": "low",
4721
+ "ai_factor": "The abused surface is Label Studio, a data-labeling / annotation platform central to ML data pipelines. The lesson: an ML data platform's server-side fetches (import URLs, storage endpoints) are an egress that must validate and allowlist destinations, or they become an SSRF pivot into internal networks and cloud metadata."
4722
+ },
4723
+ "framework_coverage": {
4724
+ "NIST-800-53-SC-7": {
4725
+ "covered": true,
4726
+ "adequate": false,
4727
+ "gap": "Boundary protection does not treat the ML data platform's server-side fetch as an egress that can reach internal services."
4728
+ },
4729
+ "NIST-800-53-SI-10": {
4730
+ "covered": true,
4731
+ "adequate": false,
4732
+ "gap": "No input validation is applied to the user-supplied URL/endpoint before the server fetches it."
4733
+ },
4734
+ "ALL-AI-PIPELINE-INTEGRITY": {
4735
+ "covered": false,
4736
+ "adequate": false,
4737
+ "gap": "No framework treats an ML data-pipeline platform's import/storage URL fetch as an egress that must validate and allowlist destinations."
4738
+ }
4739
+ },
4740
+ "compliance_exposure_score": {
4741
+ "percent_audit_passing_orgs_still_exposed": 78,
4742
+ "basis": "ML data-labeling platforms are deployed inside trusted networks and import from arbitrary URLs/storage endpoints by design; their server-side fetches are not destination-validated.",
4743
+ "theater_pattern": "ai_data_pipeline_ssrf_trust"
4744
+ },
4745
+ "ai_discovered_zeroday": false,
4746
+ "ai_discovery_source": "human_researcher",
4747
+ "ai_assist_factor": "none",
4748
+ "new_control_requirements": [
4749
+ {
4750
+ "id": "NEW-CTRL-105",
4751
+ "name": "AI-DATA-PIPELINE-IMPORT-SSRF-PROTECTION",
4752
+ "description": "An AI data-pipeline platform that fetches from caller-supplied URLs or endpoints (data import, cloud-storage endpoint configuration, webhook/annotation sources) must validate and allowlist the destination before issuing the request: reject private, link-local, and cloud-metadata addresses (169.254.169.254), reject file:// and non-HTTP schemes, and resolve+pin the host to prevent DNS-rebinding. Restrict who can configure server-side fetches and disable self-registration if not required. The distinguishing test: configure the import/storage URL to an internal or cloud-metadata address on a staging instance and confirm the server refuses the fetch - a platform that issues the request and returns the response is exploitable for SSRF / internal pivot, regardless of authentication posture.",
4753
+ "evidence": "https://github.com/advisories/GHSA-pc6f-259w-w3j6",
4754
+ "gap_closes": [
4755
+ "NIST-800-53-SC-7",
4756
+ "NIST-800-53-SI-10",
4757
+ "ALL-AI-PIPELINE-INTEGRITY"
4758
+ ]
4759
+ }
4760
+ ],
4761
+ "_auto_imported": false,
4762
+ "_intake_method": "manual-verified-curation"
4763
+ },
4564
4764
  "CVE-2024-37060": {
4565
4765
  "name": "MLflow Recipe Deserialization Remote Code Execution",
4566
4766
  "lesson_date": "2026-05-25",