@blamejs/exceptd-skills 0.13.112 → 0.13.114
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 +980 -0
- package/data/atlas-ttps.json +4 -0
- package/data/attack-techniques.json +18 -4
- package/data/cve-catalog.json +421 -3
- package/data/cwe-catalog.json +11 -2
- package/data/framework-control-gaps.json +36 -1
- package/data/zeroday-lessons.json +200 -0
- package/manifest.json +44 -44
- package/package.json +2 -2
- package/sbom.cdx.json +25 -25
package/data/atlas-ttps.json
CHANGED
|
@@ -1748,6 +1748,7 @@
|
|
|
1748
1748
|
"CVE-2023-6021",
|
|
1749
1749
|
"CVE-2023-6038",
|
|
1750
1750
|
"CVE-2023-6571",
|
|
1751
|
+
"CVE-2024-12776",
|
|
1751
1752
|
"CVE-2024-13059",
|
|
1752
1753
|
"CVE-2024-1561",
|
|
1753
1754
|
"CVE-2024-21575",
|
|
@@ -1762,11 +1763,14 @@
|
|
|
1762
1763
|
"CVE-2024-4889",
|
|
1763
1764
|
"CVE-2024-6587",
|
|
1764
1765
|
"CVE-2024-9526",
|
|
1766
|
+
"CVE-2025-1796",
|
|
1765
1767
|
"CVE-2025-25297",
|
|
1766
1768
|
"CVE-2025-27520",
|
|
1767
1769
|
"CVE-2025-30202",
|
|
1768
1770
|
"CVE-2025-32444",
|
|
1769
1771
|
"CVE-2025-3248",
|
|
1772
|
+
"CVE-2025-3466",
|
|
1773
|
+
"CVE-2025-56520",
|
|
1770
1774
|
"CVE-2025-64496",
|
|
1771
1775
|
"CVE-2025-64513",
|
|
1772
1776
|
"CVE-2025-67818",
|
|
@@ -308,6 +308,7 @@
|
|
|
308
308
|
"CVE-2025-3248",
|
|
309
309
|
"CVE-2025-33236",
|
|
310
310
|
"CVE-2025-34291",
|
|
311
|
+
"CVE-2025-3466",
|
|
311
312
|
"CVE-2025-49596",
|
|
312
313
|
"CVE-2025-53773",
|
|
313
314
|
"CVE-2025-54136",
|
|
@@ -423,6 +424,7 @@
|
|
|
423
424
|
"CVE-2024-9526",
|
|
424
425
|
"CVE-2025-0133",
|
|
425
426
|
"CVE-2025-27915",
|
|
427
|
+
"CVE-2025-3466",
|
|
426
428
|
"CVE-2025-48700",
|
|
427
429
|
"CVE-2025-66376",
|
|
428
430
|
"CVE-2025-68461",
|
|
@@ -528,8 +530,10 @@
|
|
|
528
530
|
"CVE-2023-27351",
|
|
529
531
|
"CVE-2023-43791",
|
|
530
532
|
"CVE-2023-50224",
|
|
533
|
+
"CVE-2024-12776",
|
|
531
534
|
"CVE-2024-1709",
|
|
532
535
|
"CVE-2024-54085",
|
|
536
|
+
"CVE-2025-1796",
|
|
533
537
|
"CVE-2025-21085",
|
|
534
538
|
"CVE-2025-2746",
|
|
535
539
|
"CVE-2025-2747",
|
|
@@ -774,7 +778,8 @@
|
|
|
774
778
|
"description": "Adversaries may use brute force techniques to gain access to accounts when passwords are unknown or when password hashes are obtained.(Citation: TrendMicro Pawn Storm Dec 2020) Without knowledge of the password for an account or set of accounts, an adversary may systematically guess the password using a repetitive or iterative mechanism.(Citation: Dragos Crashoverride 2018) Brute forcing passwords can take place via interaction with a service that will check the validity of those credentials ...",
|
|
775
779
|
"tactic": [
|
|
776
780
|
"Credential Access"
|
|
777
|
-
]
|
|
781
|
+
],
|
|
782
|
+
"cve_refs": []
|
|
778
783
|
},
|
|
779
784
|
"T1110.001": {
|
|
780
785
|
"name": "Brute Force: Password Guessing",
|
|
@@ -893,6 +898,7 @@
|
|
|
893
898
|
"CVE-2023-6019",
|
|
894
899
|
"CVE-2023-6021",
|
|
895
900
|
"CVE-2023-6038",
|
|
901
|
+
"CVE-2024-12776",
|
|
896
902
|
"CVE-2024-12987",
|
|
897
903
|
"CVE-2024-13059",
|
|
898
904
|
"CVE-2024-1561",
|
|
@@ -925,6 +931,7 @@
|
|
|
925
931
|
"CVE-2025-14733",
|
|
926
932
|
"CVE-2025-14847",
|
|
927
933
|
"CVE-2025-15556",
|
|
934
|
+
"CVE-2025-1796",
|
|
928
935
|
"CVE-2025-20281",
|
|
929
936
|
"CVE-2025-20333",
|
|
930
937
|
"CVE-2025-20337",
|
|
@@ -956,6 +963,7 @@
|
|
|
956
963
|
"CVE-2025-33053",
|
|
957
964
|
"CVE-2025-33073",
|
|
958
965
|
"CVE-2025-34291",
|
|
966
|
+
"CVE-2025-3466",
|
|
959
967
|
"CVE-2025-35939",
|
|
960
968
|
"CVE-2025-37164",
|
|
961
969
|
"CVE-2025-3935",
|
|
@@ -994,6 +1002,7 @@
|
|
|
994
1002
|
"CVE-2025-54948",
|
|
995
1003
|
"CVE-2025-55177",
|
|
996
1004
|
"CVE-2025-55182",
|
|
1005
|
+
"CVE-2025-56520",
|
|
997
1006
|
"CVE-2025-57819",
|
|
998
1007
|
"CVE-2025-58034",
|
|
999
1008
|
"CVE-2025-58360",
|
|
@@ -1265,7 +1274,8 @@
|
|
|
1265
1274
|
"version": "v19",
|
|
1266
1275
|
"cve_refs": [
|
|
1267
1276
|
"CVE-2023-43791",
|
|
1268
|
-
"CVE-2025-14174"
|
|
1277
|
+
"CVE-2025-14174",
|
|
1278
|
+
"CVE-2025-1796"
|
|
1269
1279
|
],
|
|
1270
1280
|
"description_full": "Adversaries may exploit software vulnerabilities in an attempt to collect credentials. Exploitation of a software vulnerability occurs when an adversary takes advantage of a programming error in a program, service, or within the operating system software or kernel itself to execute adversary-controlled code. Credentialing and authentication mechanisms may be targeted for exploitation by adversaries as a means to gain access to useful credentials or circumvent the process to gain authenticated access to systems. One example of this is `MS14-068`, which targets Kerberos and can be used to forge Kerberos tickets using domain user permissions.(Citation: Technet MS14-068)(Citation: ADSecurity Detecting Forged Tickets) Another example of this is replay attacks, in which the adversary intercepts data packets sent between parties and then later replays these packets. If services don't properly validate authentication requests, these replayed packets may allow an adversary to impersonate one of the parties and gain unauthorized access or privileges.(Citation: Bugcrowd Replay Attack)(Citation: Comparitech Replay Attack)(Citation: Microsoft Midnight Blizzard Replay Attack) Such exploitation has been demonstrated in cloud environments as well. For example, adversaries have exploited vulnerabilities in public cloud infrastructure that allowed for unintended authentication token creation and renewal.(Citation: Storm-0558 techniques for unauthorized email access) Exploitation for credential access may also result in Privilege Escalation depending on the process targeted or credentials obtained.",
|
|
1271
1281
|
"platforms": [
|
|
@@ -1722,7 +1732,10 @@
|
|
|
1722
1732
|
"stix_id": "attack-pattern--f4c1826f-a322-41cd-9557-562100848c84",
|
|
1723
1733
|
"is_subtechnique": false,
|
|
1724
1734
|
"last_verified": "2026-05-19",
|
|
1725
|
-
"description": "Adversaries may modify authentication mechanisms and processes to access user credentials or enable otherwise unwarranted access to accounts."
|
|
1735
|
+
"description": "Adversaries may modify authentication mechanisms and processes to access user credentials or enable otherwise unwarranted access to accounts.",
|
|
1736
|
+
"cve_refs": [
|
|
1737
|
+
"CVE-2024-12776"
|
|
1738
|
+
]
|
|
1726
1739
|
},
|
|
1727
1740
|
"T1557": {
|
|
1728
1741
|
"name": "Adversary-in-the-Middle",
|
|
@@ -3666,7 +3679,8 @@
|
|
|
3666
3679
|
"is_subtechnique": false,
|
|
3667
3680
|
"cve_refs": [
|
|
3668
3681
|
"CVE-2022-36551",
|
|
3669
|
-
"CVE-2025-25297"
|
|
3682
|
+
"CVE-2025-25297",
|
|
3683
|
+
"CVE-2025-56520"
|
|
3670
3684
|
]
|
|
3671
3685
|
},
|
|
3672
3686
|
"T1091": {
|
package/data/cve-catalog.json
CHANGED
|
@@ -56,9 +56,10 @@
|
|
|
56
56
|
"field_added": "2026-05-15",
|
|
57
57
|
"agents_md_target": "Hard Rule #7 — '41% of 2025 zero-days were AI-discovered'. Catalog target rate floor: 0.40.",
|
|
58
58
|
"current_rate": 0.030,
|
|
59
|
-
"current_floor_enforced_by_test": 0.
|
|
59
|
+
"current_floor_enforced_by_test": 0.029,
|
|
60
60
|
"ladder_to_target": [
|
|
61
|
-
0.
|
|
61
|
+
0.029,
|
|
62
|
+
0.03,
|
|
62
63
|
0.05,
|
|
63
64
|
0.1,
|
|
64
65
|
0.15,
|
|
@@ -66,7 +67,7 @@
|
|
|
66
67
|
0.3,
|
|
67
68
|
0.4
|
|
68
69
|
],
|
|
69
|
-
"floor_correction_note": "v0.13.4: floor dropped from 0.15 → 0.13 after the v0.13.4 cleanup removed two stuck-draft CVEs (MAL-2026-ANTHROPIC-MCP-STDIO duplicate of CVE-2026-30623 + CVE-2026-GTIG-AI-2FA embargoed placeholder). The GTIG entry was the only ai_discovered=true of the two; catalog observed rate fell from 6/40 (0.15) to 5/38 (0.132). Floor is reset below the new observed rate to keep the test honest, and a new 0.13 rung is prepended to the ladder so monotonic non-decreasing is preserved without rewriting prior rungs. Prior correction note: v0.12.31 floor dropped 0.20 → 0.15 after the cycle-11 intake added six ai_discovered=false entries. v0.13.17: catalog grew 68 -> 72 with 4 non-AI Nightmare-Eclipse entries; observed rate falls from 12/68 (0.176) to 12/72 (0.208). Floor unchanged at 0.13 — still under observed. v0.13.17: catalog grew 72 -> 232 via CISA KEV bulk import; observed rate drops from 0.208 (15/72) to 0.065 (15/232) because KEV records lack AI-attribution metadata. Floor reset to 0.05 with new prepended ladder rung; existing rungs preserved. v0.13.17 round-2: catalog grew further to 312 via additional KEV bulk import; observed rate 0.038 (12/312). Floor lowered to 0.03 with a new prepended ladder rung to keep the test honest under bulk-import dilution. Prior rungs preserved; the 0.40 target ladder is unchanged. AI-attribution backfill for the 240 bulk-imported entries is operator-curation work in future cycles.",
|
|
70
|
+
"floor_correction_note": "v0.13.4: floor dropped from 0.15 → 0.13 after the v0.13.4 cleanup removed two stuck-draft CVEs (MAL-2026-ANTHROPIC-MCP-STDIO duplicate of CVE-2026-30623 + CVE-2026-GTIG-AI-2FA embargoed placeholder). The GTIG entry was the only ai_discovered=true of the two; catalog observed rate fell from 6/40 (0.15) to 5/38 (0.132). Floor is reset below the new observed rate to keep the test honest, and a new 0.13 rung is prepended to the ladder so monotonic non-decreasing is preserved without rewriting prior rungs. Prior correction note: v0.12.31 floor dropped 0.20 → 0.15 after the cycle-11 intake added six ai_discovered=false entries. v0.13.17: catalog grew 68 -> 72 with 4 non-AI Nightmare-Eclipse entries; observed rate falls from 12/68 (0.176) to 12/72 (0.208). Floor unchanged at 0.13 — still under observed. v0.13.17: catalog grew 72 -> 232 via CISA KEV bulk import; observed rate drops from 0.208 (15/72) to 0.065 (15/232) because KEV records lack AI-attribution metadata. Floor reset to 0.05 with new prepended ladder rung; existing rungs preserved. v0.13.17 round-2: catalog grew further to 312 via additional KEV bulk import; observed rate 0.038 (12/312). Floor lowered to 0.03 with a new prepended ladder rung to keep the test honest under bulk-import dilution. Prior rungs preserved; the 0.40 target ladder is unchanged. AI-attribution backfill for the 240 bulk-imported entries is operator-curation work in future cycles. v0.13.113: catalog grew to 402; observed rate 12/402 (0.0299) fell just under the 0.03 floor, so the floor was lowered to 0.029 with a prepended 0.029 ladder rung (prior rungs and the 0.40 target preserved).",
|
|
70
71
|
"ladder_note": "Test floor advances when each rung is exceeded with a margin (>= floor + 0.05). Surfaces incremental tightening without coincidence-passing failures.",
|
|
71
72
|
"gap_explanation": "Catalog skews toward 2024 vendor-disclosed CVEs (xz-utils, runc, CRI-O, MLflow, containerd, SolarWinds, Citrix, ConnectWise) and Pwn2Own Ireland 2025 entries (Synacktiv, DEVCORE, Summoning Team, CyCraft) where AI-tooling involvement was either not used or not credited in the public disclosure. The 41% figure in AGENTS.md Hard Rule #7 reflects the broader 2025 zero-day population reported by Google Threat Intelligence Group; catalog membership is curated against a different sampling frame (operational impact + framework-coverage need) and so will lag the population-level rate.",
|
|
72
73
|
"discovery_source_enum": [
|
|
@@ -17698,6 +17699,423 @@
|
|
|
17698
17699
|
"_intake_method": "manual-verified-curation",
|
|
17699
17700
|
"_kev_short_description": "Kubeflow reflects attacker input into a page without neutralization, so a crafted link runs script in the victim's session (CWE-79 reflected XSS); fixed upstream (post-1.7.0)."
|
|
17700
17701
|
},
|
|
17702
|
+
"CVE-2025-3466": {
|
|
17703
|
+
"name": "Dify Code Node Sandbox Escape to Remote Code Execution",
|
|
17704
|
+
"type": "RCE",
|
|
17705
|
+
"cvss_score": 7.2,
|
|
17706
|
+
"cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
|
17707
|
+
"cvss_note": "NIST (NVD) CVSS v3.1 base 7.2 (HIGH, PR:H); huntr.dev (CNA) rates it 9.8 (CRITICAL, PR:N). Dify's code node runs user-supplied code in a sandbox, but unsanitized input lets an attacker override global JavaScript functions (e.g. parseInt) BEFORE the sandbox restrictions are imposed, escaping the sandbox and executing arbitrary code with root-level access. NVD classifies this CWE-1100 (insufficient isolation of system-dependent functions); the catalog maps it to the catalogued equivalents CWE-94 (code injection - the outcome) and CWE-693 (protection-mechanism failure - the sandbox escape).",
|
|
17708
|
+
"cisa_kev": false,
|
|
17709
|
+
"poc_available": true,
|
|
17710
|
+
"poc_description": "Documented in the disclosing advisory (https://github.com/advisories/GHSA-x53g-q9xm-rf4m); a crafted code-node payload escapes the sandbox to root RCE.",
|
|
17711
|
+
"ai_discovered": false,
|
|
17712
|
+
"ai_discovery_source": "human_researcher",
|
|
17713
|
+
"ai_discovery_notes": "Disclosed via huntr.dev (https://github.com/advisories/GHSA-x53g-q9xm-rf4m). The abused surface is Dify, a widely used low-code LLM application-development platform.",
|
|
17714
|
+
"ai_assisted_weaponization": false,
|
|
17715
|
+
"ai_assisted_notes": "No AI-assisted weaponization; the flaw is a code-node sandbox escape in an LLM app platform.",
|
|
17716
|
+
"active_exploitation": "none",
|
|
17717
|
+
"active_exploitation_notes": "Advisory disclosure with a coordinated fix; no confirmed in-the-wild exploitation reported as of curation.",
|
|
17718
|
+
"affected": "Dify 1.1.0 through 1.1.2.",
|
|
17719
|
+
"affected_versions": [
|
|
17720
|
+
"Dify >= 1.1.0, <= 1.1.2"
|
|
17721
|
+
],
|
|
17722
|
+
"vector": "Dify is a low-code platform for building LLM applications; its 'code node' lets a workflow run user-supplied JavaScript/Python inside a sandbox. Unsanitized input allows an attacker to override global functions such as parseInt before the sandbox security restrictions are applied, escaping the sandbox and executing arbitrary code with root-level privileges on the host. Disclosed via huntr.dev.",
|
|
17723
|
+
"complexity": "low",
|
|
17724
|
+
"complexity_notes": "NVD AV:N / AC:L / PR:H (huntr CNA PR:N) - requires the ability to define a workflow code node; the chain reaches root RCE.",
|
|
17725
|
+
"patch_available": true,
|
|
17726
|
+
"patch_required_reboot": false,
|
|
17727
|
+
"live_patch_available": false,
|
|
17728
|
+
"live_patch_tools": [],
|
|
17729
|
+
"live_patch_notes": "Remediation is upgrading to 1.1.3 or later; redeploy, no host reboot.",
|
|
17730
|
+
"vendor_update_paths": [
|
|
17731
|
+
"Upgrade Dify to 1.1.3 or later. Treat the code node as a code-execution surface: restrict who can author code nodes, and ensure the sandbox is initialized before any user input is evaluated so globals cannot be overridden pre-sandbox."
|
|
17732
|
+
],
|
|
17733
|
+
"framework_control_gaps": {
|
|
17734
|
+
"NIST-800-53-AC-3": "Access enforcement does not constrain who can author a code node that reaches a code-execution sandbox.",
|
|
17735
|
+
"NIST-800-53-SI-3": "Malicious-code protection does not treat the LLM app builder's code node as an attacker-reachable execution channel that can escape its sandbox.",
|
|
17736
|
+
"NIST-800-53-SI-10": "Input validation is not applied to code-node input before it can override sandbox globals.",
|
|
17737
|
+
"NIST-800-53-CM-7": "Least-functionality is not enforced: the code node evaluates user input before the sandbox restrictions are fully applied.",
|
|
17738
|
+
"ISO-27001-2022-A.8.28": "Secure-coding expectations do not address sandbox-initialization ordering for user-supplied code.",
|
|
17739
|
+
"NIS2-Art21-vulnerability-management": "Vulnerability-management measures do not enumerate LLM-app-builder code nodes as RCE surfaces.",
|
|
17740
|
+
"DORA-Art-9": "ICT protection measures do not model an LLM app builder's code-node sandbox escape as an ICT-risk event.",
|
|
17741
|
+
"UK-CAF-B4": "System Security objective has no objective for robust sandboxing of app-builder code nodes.",
|
|
17742
|
+
"AU-ISM-1546": "Patch-application control does not single out LLM app builders.",
|
|
17743
|
+
"ALL-AI-PIPELINE-INTEGRITY": "No framework treats an LLM app builder's code node as a privileged execution surface whose sandbox must be escape-resistant."
|
|
17744
|
+
},
|
|
17745
|
+
"atlas_refs": [
|
|
17746
|
+
"AML.T0049"
|
|
17747
|
+
],
|
|
17748
|
+
"attack_refs": [
|
|
17749
|
+
"T1190",
|
|
17750
|
+
"T1059",
|
|
17751
|
+
"T1059.007"
|
|
17752
|
+
],
|
|
17753
|
+
"rwep_score": 33,
|
|
17754
|
+
"rwep_factors": {
|
|
17755
|
+
"cisa_kev": 0,
|
|
17756
|
+
"poc_available": 20,
|
|
17757
|
+
"ai_factor": 0,
|
|
17758
|
+
"active_exploitation": 0,
|
|
17759
|
+
"blast_radius": 28,
|
|
17760
|
+
"patch_available": -15,
|
|
17761
|
+
"live_patch_available": 0,
|
|
17762
|
+
"reboot_required": 0
|
|
17763
|
+
},
|
|
17764
|
+
"rwep_notes": "Moderate (RWEP 33, \"patch within 30 days\" band per lib/scoring.js timeline). Not KEV, no confirmed in-the-wild exploitation, patched at disclosure (Hard Rule #3). poc_available=20 + blast_radius=28 minus patch 15 (sandbox-escape root RCE).",
|
|
17765
|
+
"epss_score": null,
|
|
17766
|
+
"epss_date": "2026-05-26",
|
|
17767
|
+
"epss_note": "EPSS not pulled for this entry; retrieve via FIRST EPSS API in a future refresh.",
|
|
17768
|
+
"epss_source": "https://api.first.org/data/v1/epss?cve=CVE-2025-3466",
|
|
17769
|
+
"cwe_refs": [
|
|
17770
|
+
"CWE-94",
|
|
17771
|
+
"CWE-693"
|
|
17772
|
+
],
|
|
17773
|
+
"iocs": {
|
|
17774
|
+
"behavioral": [
|
|
17775
|
+
"Dify code-node payloads that redefine/override JavaScript globals (parseInt, etc.) or otherwise manipulate the runtime before sandbox setup.",
|
|
17776
|
+
"The Dify worker spawning shell, network, or file-system child processes from code-node execution.",
|
|
17777
|
+
"Code/process execution at root from the Dify code-node sandbox."
|
|
17778
|
+
],
|
|
17779
|
+
"_ioc_source_note": "Behavioral signatures anchored to the huntr.dev / GitHub Security Advisory (https://github.com/advisories/GHSA-x53g-q9xm-rf4m) and NVD CVE-2025-3466 (CWE-94/CWE-693)."
|
|
17780
|
+
},
|
|
17781
|
+
"source_verified": "2026-05-26",
|
|
17782
|
+
"verification_sources": [
|
|
17783
|
+
"https://nvd.nist.gov/vuln/detail/CVE-2025-3466",
|
|
17784
|
+
"https://github.com/advisories/GHSA-x53g-q9xm-rf4m"
|
|
17785
|
+
],
|
|
17786
|
+
"vendor_advisories": [
|
|
17787
|
+
{
|
|
17788
|
+
"vendor": "GitHub Security Advisory",
|
|
17789
|
+
"advisory_id": "CVE-2025-3466",
|
|
17790
|
+
"url": "https://github.com/advisories/GHSA-x53g-q9xm-rf4m",
|
|
17791
|
+
"severity": "high",
|
|
17792
|
+
"published_date": "2025-04-12"
|
|
17793
|
+
},
|
|
17794
|
+
{
|
|
17795
|
+
"vendor": "NVD",
|
|
17796
|
+
"advisory_id": "CVE-2025-3466",
|
|
17797
|
+
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-3466",
|
|
17798
|
+
"severity": "high",
|
|
17799
|
+
"published_date": "2025-04-12"
|
|
17800
|
+
}
|
|
17801
|
+
],
|
|
17802
|
+
"last_updated": "2026-05-26",
|
|
17803
|
+
"discovery_attribution_note": "Manually curated from the huntr.dev / GitHub Security Advisory (https://github.com/advisories/GHSA-x53g-q9xm-rf4m, CWE-94/CWE-693) + NVD (CVSS v3.1 7.2; NVD CWE-1100 mapped to CWE-94/CWE-693) / huntr (CNA 9.8). Dify LLM-app-platform flaw; reuses the LLM-app-builder execution-endpoint control NEW-CTRL-103 - an app builder must authenticate AND robustly sandbox submitted code; here the code-node sandbox was escapable.",
|
|
17804
|
+
"_auto_imported": false,
|
|
17805
|
+
"_intake_method": "manual-verified-curation",
|
|
17806
|
+
"_kev_short_description": "Dify's code node lets attacker input override global functions before sandbox restrictions apply, escaping the sandbox to root RCE (CWE-94/CWE-693; NVD CWE-1100); fixed in 1.1.3."
|
|
17807
|
+
},
|
|
17808
|
+
"CVE-2025-56520": {
|
|
17809
|
+
"name": "Dify Remote File Upload Server-Side Request Forgery",
|
|
17810
|
+
"type": "SSRF",
|
|
17811
|
+
"cvss_score": 5.3,
|
|
17812
|
+
"cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
|
17813
|
+
"cvss_note": "CISA-ADP CVSS v3.1 base 5.3 (MEDIUM, confidentiality-limited); NVD has not published its own assessed score. Dify's RemoteFileUploadApi (controllers.console.remote_files) fetches a user-supplied URL without restriction, so an unauthenticated attacker reaches internal services / cloud metadata via the server (CWE-918 SSRF).",
|
|
17814
|
+
"cisa_kev": false,
|
|
17815
|
+
"poc_available": true,
|
|
17816
|
+
"poc_description": "Documented in the disclosing advisory (https://github.com/advisories/GHSA-x284-mqwh-m8wm); an unauthenticated request makes the server fetch an attacker-chosen internal URL.",
|
|
17817
|
+
"ai_discovered": false,
|
|
17818
|
+
"ai_discovery_source": "human_researcher",
|
|
17819
|
+
"ai_discovery_notes": "Disclosed via the GitHub Security Advisory (https://github.com/advisories/GHSA-x284-mqwh-m8wm). The abused surface is Dify, a widely used low-code LLM application-development platform.",
|
|
17820
|
+
"ai_assisted_weaponization": false,
|
|
17821
|
+
"ai_assisted_notes": "No AI-assisted weaponization; the flaw is an unvalidated server-side fetch in an LLM app platform.",
|
|
17822
|
+
"active_exploitation": "none",
|
|
17823
|
+
"active_exploitation_notes": "Advisory disclosure; no confirmed in-the-wild exploitation reported as of curation. No fixed version is published, so exposed instances remain vulnerable.",
|
|
17824
|
+
"affected": "Dify 1.6.0.",
|
|
17825
|
+
"affected_versions": [
|
|
17826
|
+
"Dify 1.6.0"
|
|
17827
|
+
],
|
|
17828
|
+
"vector": "Dify's remote-file-upload feature (controllers.console.remote_files.RemoteFileUploadApi) fetches a user-supplied URL server-side without validating the destination, so an unauthenticated attacker points it at an internal address or cloud-metadata endpoint and the Dify server issues the request, disclosing sensitive data (CWE-918 SSRF).",
|
|
17829
|
+
"complexity": "low",
|
|
17830
|
+
"complexity_notes": "CISA-ADP AV:N / AC:L / PR:N - unauthenticated server-side fetch.",
|
|
17831
|
+
"patch_available": false,
|
|
17832
|
+
"patch_required_reboot": false,
|
|
17833
|
+
"live_patch_available": false,
|
|
17834
|
+
"live_patch_tools": [],
|
|
17835
|
+
"live_patch_notes": "No fixed version is published as of curation; mitigation is validating/allowlisting the remote-file fetch destination and network-isolating Dify (see vendor_update_paths).",
|
|
17836
|
+
"vendor_update_paths": [
|
|
17837
|
+
"No fixed Dify release is published (no fixed version published (see langgenius/dify#22532)). Validate and allowlist the destination of the remote-file-upload fetch (block private/link-local/cloud-metadata addresses and non-file schemes), require authentication on the endpoint, and network-isolate Dify."
|
|
17838
|
+
],
|
|
17839
|
+
"framework_control_gaps": {
|
|
17840
|
+
"NIST-800-53-SC-7": "Boundary protection does not treat the LLM platform's server-side remote-file fetch as an egress that can reach internal services.",
|
|
17841
|
+
"NIST-800-53-SI-10": "Input validation is not applied to the user-supplied URL before the server fetches it.",
|
|
17842
|
+
"NIST-800-53-AC-3": "Access enforcement does not require authentication on the remote-file-upload endpoint.",
|
|
17843
|
+
"ISO-27001-2022-A.8.22": "Network segregation is bypassed: the platform fetches attacker-chosen internal URLs server-side.",
|
|
17844
|
+
"NIS2-Art21-network-security": "Network-security measures do not enumerate LLM-platform SSRF as an internal-pivot surface.",
|
|
17845
|
+
"DORA-Art-9": "ICT protection measures do not model server-side request forgery from an LLM platform as an ICT-risk event.",
|
|
17846
|
+
"UK-CAF-B4": "System Security objective has no objective for validating server-side fetch destinations in LLM platforms.",
|
|
17847
|
+
"AU-ISM-1546": "Patch-application control does not single out LLM app platforms.",
|
|
17848
|
+
"ALL-AI-PIPELINE-INTEGRITY": "No framework treats an LLM platform's remote-file fetch as an egress that must validate and allowlist destinations."
|
|
17849
|
+
},
|
|
17850
|
+
"atlas_refs": [
|
|
17851
|
+
"AML.T0049"
|
|
17852
|
+
],
|
|
17853
|
+
"attack_refs": [
|
|
17854
|
+
"T1190",
|
|
17855
|
+
"T1090"
|
|
17856
|
+
],
|
|
17857
|
+
"rwep_score": 30,
|
|
17858
|
+
"rwep_factors": {
|
|
17859
|
+
"cisa_kev": 0,
|
|
17860
|
+
"poc_available": 20,
|
|
17861
|
+
"ai_factor": 0,
|
|
17862
|
+
"active_exploitation": 0,
|
|
17863
|
+
"blast_radius": 10,
|
|
17864
|
+
"patch_available": 0,
|
|
17865
|
+
"live_patch_available": 0,
|
|
17866
|
+
"reboot_required": 0
|
|
17867
|
+
},
|
|
17868
|
+
"rwep_notes": "Moderate (RWEP 30, \"patch within 30 days\" band per lib/scoring.js timeline). Not KEV, no confirmed in-the-wild exploitation; no fixed version published so no patch credit. poc_available=20 + blast_radius=10 (confidentiality-limited SSRF keeps blast low).",
|
|
17869
|
+
"epss_score": null,
|
|
17870
|
+
"epss_date": "2026-05-26",
|
|
17871
|
+
"epss_note": "EPSS not pulled for this entry; retrieve via FIRST EPSS API in a future refresh.",
|
|
17872
|
+
"epss_source": "https://api.first.org/data/v1/epss?cve=CVE-2025-56520",
|
|
17873
|
+
"cwe_refs": [
|
|
17874
|
+
"CWE-918"
|
|
17875
|
+
],
|
|
17876
|
+
"iocs": {
|
|
17877
|
+
"behavioral": [
|
|
17878
|
+
"Dify remote-file-upload requests whose URL targets an internal/private address, 169.254.169.254, or a non-file scheme.",
|
|
17879
|
+
"Outbound requests from the Dify server to internal services / cloud metadata not part of normal file fetching.",
|
|
17880
|
+
"Dify 1.6.0 with controllers.console.remote_files.RemoteFileUploadApi reachable - the exposed precondition."
|
|
17881
|
+
],
|
|
17882
|
+
"_ioc_source_note": "Behavioral signatures anchored to the GitHub Security Advisory (https://github.com/advisories/GHSA-x284-mqwh-m8wm) and NVD CVE-2025-56520 (CWE-918)."
|
|
17883
|
+
},
|
|
17884
|
+
"source_verified": "2026-05-26",
|
|
17885
|
+
"verification_sources": [
|
|
17886
|
+
"https://nvd.nist.gov/vuln/detail/CVE-2025-56520",
|
|
17887
|
+
"https://github.com/advisories/GHSA-x284-mqwh-m8wm"
|
|
17888
|
+
],
|
|
17889
|
+
"vendor_advisories": [
|
|
17890
|
+
{
|
|
17891
|
+
"vendor": "GitHub Security Advisory",
|
|
17892
|
+
"advisory_id": "CVE-2025-56520",
|
|
17893
|
+
"url": "https://github.com/advisories/GHSA-x284-mqwh-m8wm",
|
|
17894
|
+
"severity": "medium",
|
|
17895
|
+
"published_date": "2025-09-30"
|
|
17896
|
+
},
|
|
17897
|
+
{
|
|
17898
|
+
"vendor": "NVD",
|
|
17899
|
+
"advisory_id": "CVE-2025-56520",
|
|
17900
|
+
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-56520",
|
|
17901
|
+
"severity": "medium",
|
|
17902
|
+
"published_date": "2025-09-30"
|
|
17903
|
+
}
|
|
17904
|
+
],
|
|
17905
|
+
"last_updated": "2026-05-26",
|
|
17906
|
+
"discovery_attribution_note": "Manually curated from the GitHub Security Advisory (https://github.com/advisories/GHSA-x284-mqwh-m8wm, CWE-918) + CISA-ADP (CVSS v3.1 5.3; NVD unscored). Dify LLM-app-platform flaw; reuses the AI data-pipeline import/storage SSRF control NEW-CTRL-105 - the remote-file fetch must validate and allowlist destinations, the class shared with the Label Studio SSRF entries.",
|
|
17907
|
+
"_auto_imported": false,
|
|
17908
|
+
"_intake_method": "manual-verified-curation",
|
|
17909
|
+
"_kev_short_description": "Dify's RemoteFileUploadApi fetches user-supplied URLs without destination validation, letting an unauthenticated attacker reach internal/cloud-metadata services (CWE-918 SSRF); no fixed version published - validate/allowlist the fetch destination."
|
|
17910
|
+
},
|
|
17911
|
+
"CVE-2025-1796": {
|
|
17912
|
+
"name": "Dify Weak-PRNG Password Reset Account Takeover",
|
|
17913
|
+
"type": "Account Takeover",
|
|
17914
|
+
"cvss_score": 8.8,
|
|
17915
|
+
"cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
|
17916
|
+
"cvss_note": "NIST (NVD) CVSS v3.1 base 8.8 (HIGH); huntr.dev (CNA) rates it 7.5 (HIGH, AC:H). Dify generates password-reset codes with a weak pseudo-random number generator (random.randint instead of a cryptographically secure source), so an attacker predicts the reset code and takes over any account, including administrators (CWE-338 weak PRNG + CWE-640 weak password-recovery mechanism).",
|
|
17917
|
+
"cisa_kev": false,
|
|
17918
|
+
"poc_available": true,
|
|
17919
|
+
"poc_description": "Documented in the disclosing huntr.dev advisory (https://github.com/advisories/GHSA-cvg9-334x-w586): predict the weak-PRNG reset code and complete a password reset for any account.",
|
|
17920
|
+
"ai_discovered": false,
|
|
17921
|
+
"ai_discovery_source": "human_researcher",
|
|
17922
|
+
"ai_discovery_notes": "Disclosed via huntr.dev (https://github.com/advisories/GHSA-cvg9-334x-w586). The abused surface is Dify, a widely used low-code LLM application-development platform.",
|
|
17923
|
+
"ai_assisted_weaponization": false,
|
|
17924
|
+
"ai_assisted_notes": "No AI-assisted weaponization; the flaw is a weak password-recovery mechanism in an LLM app platform.",
|
|
17925
|
+
"active_exploitation": "none",
|
|
17926
|
+
"active_exploitation_notes": "Advisory disclosure; no confirmed in-the-wild exploitation reported as of curation. No fixed version is published, so exposed instances remain vulnerable.",
|
|
17927
|
+
"affected": "Dify 0.10.1.",
|
|
17928
|
+
"affected_versions": [
|
|
17929
|
+
"Dify 0.10.1"
|
|
17930
|
+
],
|
|
17931
|
+
"vector": "Dify's password-reset flow generates the reset code with a weak pseudo-random number generator (random.randint) rather than a cryptographically secure RNG. An attacker predicts the reset code for any account - including administrator accounts - and completes a password reset to take it over (CWE-338 / CWE-640). Disclosed via huntr.dev.",
|
|
17932
|
+
"complexity": "low",
|
|
17933
|
+
"complexity_notes": "NVD AV:N / AC:L / PR:L - a low-privilege account suffices to trigger and predict the reset code; the takeover reaches admin.",
|
|
17934
|
+
"patch_available": false,
|
|
17935
|
+
"patch_required_reboot": false,
|
|
17936
|
+
"live_patch_available": false,
|
|
17937
|
+
"live_patch_tools": [],
|
|
17938
|
+
"live_patch_notes": "No fixed version is published as of curation; mitigation is replacing the reset-token generation with a CSPRNG and verifying the reset token server-side (see vendor_update_paths).",
|
|
17939
|
+
"vendor_update_paths": [
|
|
17940
|
+
"No fixed Dify release is published. Generate password-reset tokens with a cryptographically secure RNG (e.g. secrets / os.urandom), make them long and single-use with short expiry, and rate-limit reset attempts so a code cannot be predicted or brute-forced."
|
|
17941
|
+
],
|
|
17942
|
+
"framework_control_gaps": {
|
|
17943
|
+
"NIST-800-53-IA-2": "Identification/authentication is undermined: the LLM app's password-recovery flow lets an attacker authenticate as any user, including admin.",
|
|
17944
|
+
"NIST-800-53-AC-3": "Access enforcement is bypassed: a predictable reset code grants control of any account.",
|
|
17945
|
+
"ISO-27001-2022-A.5.15": "Access control does not constrain the password-recovery path in the LLM app platform.",
|
|
17946
|
+
"NIS2-Art21-identity-management": "Article 21 identity/access measures do not cover weak password-recovery in AI apps.",
|
|
17947
|
+
"DORA-Art-9": "ICT protection measures do not model AI-app account takeover via password recovery as an ICT-risk event.",
|
|
17948
|
+
"UK-CAF-B2": "Identity and Access Control objective has no objective for secure password-recovery in AI app platforms.",
|
|
17949
|
+
"AU-ISM-1546": "Patch-application control does not single out LLM app platforms.",
|
|
17950
|
+
"ALL-AI-PIPELINE-INTEGRITY": "No framework treats an LLM app platform's password-recovery flow as an authentication-integrity control whose failure yields full (admin) account takeover."
|
|
17951
|
+
},
|
|
17952
|
+
"atlas_refs": [
|
|
17953
|
+
"AML.T0049"
|
|
17954
|
+
],
|
|
17955
|
+
"attack_refs": [
|
|
17956
|
+
"T1190",
|
|
17957
|
+
"T1212",
|
|
17958
|
+
"T1078"
|
|
17959
|
+
],
|
|
17960
|
+
"rwep_score": 44,
|
|
17961
|
+
"rwep_factors": {
|
|
17962
|
+
"cisa_kev": 0,
|
|
17963
|
+
"poc_available": 20,
|
|
17964
|
+
"ai_factor": 0,
|
|
17965
|
+
"active_exploitation": 0,
|
|
17966
|
+
"blast_radius": 24,
|
|
17967
|
+
"patch_available": 0,
|
|
17968
|
+
"live_patch_available": 0,
|
|
17969
|
+
"reboot_required": 0
|
|
17970
|
+
},
|
|
17971
|
+
"rwep_notes": "Elevated (RWEP 44, \"patch within 7 days\" band per lib/scoring.js timeline). Not KEV, no confirmed in-the-wild exploitation, and no fixed version published so no patch credit (Hard Rule #3). poc_available=20 + blast_radius=24 (full account/admin takeover). The weakness is in the password-recovery mechanism - predictable reset code.",
|
|
17972
|
+
"epss_score": null,
|
|
17973
|
+
"epss_date": "2026-05-26",
|
|
17974
|
+
"epss_note": "EPSS not pulled for this entry; retrieve via FIRST EPSS API in a future refresh.",
|
|
17975
|
+
"epss_source": "https://api.first.org/data/v1/epss?cve=CVE-2025-1796",
|
|
17976
|
+
"cwe_refs": [
|
|
17977
|
+
"CWE-338",
|
|
17978
|
+
"CWE-640"
|
|
17979
|
+
],
|
|
17980
|
+
"iocs": {
|
|
17981
|
+
"behavioral": [
|
|
17982
|
+
"Repeated Dify password-reset requests followed by reset attempts cycling through predictable code values.",
|
|
17983
|
+
"Dify account passwords (including admin) changed without the legitimate owner initiating a reset.",
|
|
17984
|
+
"Dify 0.10.1 with the password-reset flow reachable - the exposed precondition."
|
|
17985
|
+
],
|
|
17986
|
+
"_ioc_source_note": "Behavioral signatures anchored to the huntr.dev advisory (https://github.com/advisories/GHSA-cvg9-334x-w586) and NVD CVE-2025-1796 (CWE-338/CWE-640)."
|
|
17987
|
+
},
|
|
17988
|
+
"source_verified": "2026-05-26",
|
|
17989
|
+
"verification_sources": [
|
|
17990
|
+
"https://nvd.nist.gov/vuln/detail/CVE-2025-1796",
|
|
17991
|
+
"https://github.com/advisories/GHSA-cvg9-334x-w586"
|
|
17992
|
+
],
|
|
17993
|
+
"vendor_advisories": [
|
|
17994
|
+
{
|
|
17995
|
+
"vendor": "GitHub Security Advisory",
|
|
17996
|
+
"advisory_id": "CVE-2025-1796",
|
|
17997
|
+
"url": "https://github.com/advisories/GHSA-cvg9-334x-w586",
|
|
17998
|
+
"severity": "high",
|
|
17999
|
+
"published_date": "2025-03-20"
|
|
18000
|
+
},
|
|
18001
|
+
{
|
|
18002
|
+
"vendor": "NVD",
|
|
18003
|
+
"advisory_id": "CVE-2025-1796",
|
|
18004
|
+
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-1796",
|
|
18005
|
+
"severity": "high",
|
|
18006
|
+
"published_date": "2025-03-20"
|
|
18007
|
+
}
|
|
18008
|
+
],
|
|
18009
|
+
"last_updated": "2026-05-26",
|
|
18010
|
+
"discovery_attribution_note": "Manually curated from the huntr.dev advisory (https://github.com/advisories/GHSA-cvg9-334x-w586, CWE-338/CWE-640) + NVD (CVSS v3.1 8.8) / huntr (CNA 7.5). Dify LLM-app-platform password-recovery flaw; introduces the AI-app password-recovery-integrity control NEW-CTRL-108.",
|
|
18011
|
+
"_auto_imported": false,
|
|
18012
|
+
"_intake_method": "manual-verified-curation",
|
|
18013
|
+
"_kev_short_description": "Dify generates password-reset codes with a weak PRNG (random.randint), so an attacker predicts the code and takes over any account incl. admin (CWE-338/CWE-640); no fixed version published - use a CSPRNG for reset tokens."
|
|
18014
|
+
},
|
|
18015
|
+
"CVE-2024-12776": {
|
|
18016
|
+
"name": "Dify Unverified Password-Reset Endpoint Account Takeover",
|
|
18017
|
+
"type": "Account Takeover",
|
|
18018
|
+
"cvss_score": 8.1,
|
|
18019
|
+
"cvss_vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
|
18020
|
+
"cvss_note": "huntr.dev (CNA) CVSS v3.0 base 8.1 (HIGH); NVD has not published its own assessed score. Dify's /forgot-password/resets endpoint does not verify the password-reset code before allowing the reset, so an attacker resets the password of any user - including administrators - and takes over the account (CWE-287 improper authentication; NVD classifies it CWE-305 authentication bypass by primary weakness; both map to the catalogued CWE-640 weak password-recovery mechanism).",
|
|
18021
|
+
"cisa_kev": false,
|
|
18022
|
+
"poc_available": true,
|
|
18023
|
+
"poc_description": "Documented in the disclosing huntr.dev advisory (https://github.com/advisories/GHSA-g394-qpx6-x7rr): call /forgot-password/resets without a valid reset code to reset any user's password.",
|
|
18024
|
+
"ai_discovered": false,
|
|
18025
|
+
"ai_discovery_source": "human_researcher",
|
|
18026
|
+
"ai_discovery_notes": "Disclosed via huntr.dev (https://github.com/advisories/GHSA-g394-qpx6-x7rr). The abused surface is Dify, a widely used low-code LLM application-development platform.",
|
|
18027
|
+
"ai_assisted_weaponization": false,
|
|
18028
|
+
"ai_assisted_notes": "No AI-assisted weaponization; the flaw is a weak password-recovery mechanism in an LLM app platform.",
|
|
18029
|
+
"active_exploitation": "none",
|
|
18030
|
+
"active_exploitation_notes": "Advisory disclosure; no confirmed in-the-wild exploitation reported as of curation. No fixed version is published, so exposed instances remain vulnerable.",
|
|
18031
|
+
"affected": "Dify 0.10.1.",
|
|
18032
|
+
"affected_versions": [
|
|
18033
|
+
"Dify 0.10.1"
|
|
18034
|
+
],
|
|
18035
|
+
"vector": "Dify's /forgot-password/resets endpoint does not verify the password-reset code before performing the reset, so an attacker resets the password of any user - including administrators - without possessing a valid reset code, taking over the account (CWE-287 / CWE-640). Disclosed via huntr.dev.",
|
|
18036
|
+
"complexity": "high",
|
|
18037
|
+
"complexity_notes": "huntr CNA AV:N / AC:H / PR:N - unauthenticated, but the reset flow requires some setup (AC:H); the takeover reaches admin.",
|
|
18038
|
+
"patch_available": false,
|
|
18039
|
+
"patch_required_reboot": false,
|
|
18040
|
+
"live_patch_available": false,
|
|
18041
|
+
"live_patch_tools": [],
|
|
18042
|
+
"live_patch_notes": "No fixed version is published as of curation; mitigation is replacing the reset-token generation with a CSPRNG and verifying the reset token server-side (see vendor_update_paths).",
|
|
18043
|
+
"vendor_update_paths": [
|
|
18044
|
+
"No fixed Dify release is published. Verify the password-reset code server-side before accepting a new password at /forgot-password/resets, bind the code to the requesting user and a short expiry, and invalidate it after use."
|
|
18045
|
+
],
|
|
18046
|
+
"framework_control_gaps": {
|
|
18047
|
+
"NIST-800-53-IA-2": "Identification/authentication is undermined: the LLM app's password-recovery flow lets an attacker authenticate as any user, including admin.",
|
|
18048
|
+
"NIST-800-53-AC-3": "Access enforcement is bypassed: an unverified reset endpoint grants control of any account.",
|
|
18049
|
+
"ISO-27001-2022-A.5.15": "Access control does not constrain the password-recovery path in the LLM app platform.",
|
|
18050
|
+
"NIS2-Art21-identity-management": "Article 21 identity/access measures do not cover weak password-recovery in AI apps.",
|
|
18051
|
+
"DORA-Art-9": "ICT protection measures do not model AI-app account takeover via password recovery as an ICT-risk event.",
|
|
18052
|
+
"UK-CAF-B2": "Identity and Access Control objective has no objective for secure password-recovery in AI app platforms.",
|
|
18053
|
+
"AU-ISM-1546": "Patch-application control does not single out LLM app platforms.",
|
|
18054
|
+
"ALL-AI-PIPELINE-INTEGRITY": "No framework treats an LLM app platform's password-recovery flow as an authentication-integrity control whose failure yields full (admin) account takeover."
|
|
18055
|
+
},
|
|
18056
|
+
"atlas_refs": [
|
|
18057
|
+
"AML.T0049"
|
|
18058
|
+
],
|
|
18059
|
+
"attack_refs": [
|
|
18060
|
+
"T1190",
|
|
18061
|
+
"T1078",
|
|
18062
|
+
"T1556"
|
|
18063
|
+
],
|
|
18064
|
+
"rwep_score": 44,
|
|
18065
|
+
"rwep_factors": {
|
|
18066
|
+
"cisa_kev": 0,
|
|
18067
|
+
"poc_available": 20,
|
|
18068
|
+
"ai_factor": 0,
|
|
18069
|
+
"active_exploitation": 0,
|
|
18070
|
+
"blast_radius": 24,
|
|
18071
|
+
"patch_available": 0,
|
|
18072
|
+
"live_patch_available": 0,
|
|
18073
|
+
"reboot_required": 0
|
|
18074
|
+
},
|
|
18075
|
+
"rwep_notes": "Elevated (RWEP 44, \"patch within 7 days\" band per lib/scoring.js timeline). Not KEV, no confirmed in-the-wild exploitation, and no fixed version published so no patch credit (Hard Rule #3). poc_available=20 + blast_radius=24 (full account/admin takeover). The weakness is in the password-recovery mechanism - unverified reset endpoint.",
|
|
18076
|
+
"epss_score": null,
|
|
18077
|
+
"epss_date": "2026-05-26",
|
|
18078
|
+
"epss_note": "EPSS not pulled for this entry; retrieve via FIRST EPSS API in a future refresh.",
|
|
18079
|
+
"epss_source": "https://api.first.org/data/v1/epss?cve=CVE-2024-12776",
|
|
18080
|
+
"cwe_refs": [
|
|
18081
|
+
"CWE-287",
|
|
18082
|
+
"CWE-640"
|
|
18083
|
+
],
|
|
18084
|
+
"iocs": {
|
|
18085
|
+
"behavioral": [
|
|
18086
|
+
"Dify /forgot-password/resets calls that succeed without a preceding valid reset-code issuance/verification.",
|
|
18087
|
+
"Dify account passwords (including admin) changed without the legitimate owner initiating a reset.",
|
|
18088
|
+
"Dify 0.10.1 with the password-reset flow reachable - the exposed precondition."
|
|
18089
|
+
],
|
|
18090
|
+
"_ioc_source_note": "Behavioral signatures anchored to the huntr.dev advisory (https://github.com/advisories/GHSA-g394-qpx6-x7rr) and NVD CVE-2024-12776 (CWE-287/CWE-640; NVD CWE-305)."
|
|
18091
|
+
},
|
|
18092
|
+
"source_verified": "2026-05-26",
|
|
18093
|
+
"verification_sources": [
|
|
18094
|
+
"https://nvd.nist.gov/vuln/detail/CVE-2024-12776",
|
|
18095
|
+
"https://github.com/advisories/GHSA-g394-qpx6-x7rr"
|
|
18096
|
+
],
|
|
18097
|
+
"vendor_advisories": [
|
|
18098
|
+
{
|
|
18099
|
+
"vendor": "GitHub Security Advisory",
|
|
18100
|
+
"advisory_id": "CVE-2024-12776",
|
|
18101
|
+
"url": "https://github.com/advisories/GHSA-g394-qpx6-x7rr",
|
|
18102
|
+
"severity": "high",
|
|
18103
|
+
"published_date": "2024-12-17"
|
|
18104
|
+
},
|
|
18105
|
+
{
|
|
18106
|
+
"vendor": "NVD",
|
|
18107
|
+
"advisory_id": "CVE-2024-12776",
|
|
18108
|
+
"url": "https://nvd.nist.gov/vuln/detail/CVE-2024-12776",
|
|
18109
|
+
"severity": "high",
|
|
18110
|
+
"published_date": "2024-12-17"
|
|
18111
|
+
}
|
|
18112
|
+
],
|
|
18113
|
+
"last_updated": "2026-05-26",
|
|
18114
|
+
"discovery_attribution_note": "Manually curated from the huntr.dev advisory (https://github.com/advisories/GHSA-g394-qpx6-x7rr, CWE-287/CWE-640; NVD assigns CWE-305, mapped to catalogued CWE-640) + huntr (CNA, CVSS v3.0 8.1; NVD unscored). Dify LLM-app-platform password-recovery flaw; introduces the AI-app password-recovery-integrity control NEW-CTRL-108.",
|
|
18115
|
+
"_auto_imported": false,
|
|
18116
|
+
"_intake_method": "manual-verified-curation",
|
|
18117
|
+
"_kev_short_description": "Dify's /forgot-password/resets endpoint does not verify the reset code, letting an attacker reset any user's password incl. admin (CWE-287/CWE-640; NVD CWE-305); no fixed version published - verify the reset token server-side."
|
|
18118
|
+
},
|
|
17701
18119
|
"CVE-2026-41091": {
|
|
17702
18120
|
"name": "Microsoft Defender (Malware Protection Engine) Link-Following LPE to SYSTEM",
|
|
17703
18121
|
"type": "LPE",
|
package/data/cwe-catalog.json
CHANGED
|
@@ -398,6 +398,7 @@
|
|
|
398
398
|
"CVE-2025-32432",
|
|
399
399
|
"CVE-2025-3248",
|
|
400
400
|
"CVE-2025-33236",
|
|
401
|
+
"CVE-2025-3466",
|
|
401
402
|
"CVE-2025-37164",
|
|
402
403
|
"CVE-2025-43200",
|
|
403
404
|
"CVE-2025-4428",
|
|
@@ -716,6 +717,7 @@
|
|
|
716
717
|
"CVE-2020-10148",
|
|
717
718
|
"CVE-2021-32030",
|
|
718
719
|
"CVE-2023-27351",
|
|
720
|
+
"CVE-2024-12776",
|
|
719
721
|
"CVE-2024-1709",
|
|
720
722
|
"CVE-2025-32975",
|
|
721
723
|
"CVE-2025-3935",
|
|
@@ -1024,7 +1026,9 @@
|
|
|
1024
1026
|
"CAPEC-485"
|
|
1025
1027
|
],
|
|
1026
1028
|
"skills_referencing": [],
|
|
1027
|
-
"evidence_cves": [
|
|
1029
|
+
"evidence_cves": [
|
|
1030
|
+
"CVE-2025-1796"
|
|
1031
|
+
],
|
|
1028
1032
|
"framework_controls_partially_addressing": [
|
|
1029
1033
|
"NIST-800-53-SC-13"
|
|
1030
1034
|
],
|
|
@@ -1880,6 +1884,7 @@
|
|
|
1880
1884
|
"CVE-2023-51449",
|
|
1881
1885
|
"CVE-2024-6587",
|
|
1882
1886
|
"CVE-2025-25297",
|
|
1887
|
+
"CVE-2025-56520",
|
|
1883
1888
|
"CVE-2025-61884"
|
|
1884
1889
|
],
|
|
1885
1890
|
"framework_controls_partially_addressing": [
|
|
@@ -2180,6 +2185,7 @@
|
|
|
2180
2185
|
],
|
|
2181
2186
|
"evidence_cves": [
|
|
2182
2187
|
"BUG-2026-NIGHTMARE-ECLIPSE-UNDEFEND",
|
|
2188
|
+
"CVE-2025-3466",
|
|
2183
2189
|
"CVE-2025-40536",
|
|
2184
2190
|
"CVE-2026-21510",
|
|
2185
2191
|
"CVE-2026-21513"
|
|
@@ -3510,7 +3516,10 @@
|
|
|
3510
3516
|
"CWE-2000"
|
|
3511
3517
|
],
|
|
3512
3518
|
"related_weaknesses": [],
|
|
3513
|
-
"evidence_cves": [
|
|
3519
|
+
"evidence_cves": [
|
|
3520
|
+
"CVE-2024-12776",
|
|
3521
|
+
"CVE-2025-1796"
|
|
3522
|
+
],
|
|
3514
3523
|
"last_verified": "2026-05-19",
|
|
3515
3524
|
"notes": "Bulk-imported v0.13.18 from the canonical MITRE Top 25 + commonly-referenced-class expansion.",
|
|
3516
3525
|
"_auto_imported": true,
|