{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2026-24850", "assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "state": "PUBLISHED", "assignerShortName": "GitHub_M", "dateReserved": "2026-01-27T14:51:03.060Z", "datePublished": "2026-01-28T00:24:53.146Z", "dateUpdated": "2026-01-28T14:54:22.827Z" }, "containers": { "cna": { "title": "ML-DSA Signature Verification Accepts Signatures with Repeated Hint Indices", "problemTypes": [ { "descriptions": [ { "cweId": "CWE-347", "lang": "en", "description": "CWE-347: Improper Verification of Cryptographic Signature", "type": "CWE" } ] } ], "metrics": [ { "cvssV3_1": { "attackComplexity": "LOW", "attackVector": "NETWORK", "availabilityImpact": "NONE", "baseScore": 5.3, "baseSeverity": "MEDIUM", "confidentialityImpact": "NONE", "integrityImpact": "LOW", "privilegesRequired": "NONE", "scope": "UNCHANGED", "userInteraction": "NONE", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N", "version": "3.1" } } ], "references": [ { "name": "https://github.com/RustCrypto/signatures/security/advisories/GHSA-5x2r-hc65-25f9", "tags": [ "x_refsource_CONFIRM" ], "url": "https://github.com/RustCrypto/signatures/security/advisories/GHSA-5x2r-hc65-25f9" }, { "name": "https://github.com/RustCrypto/signatures/issues/894", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/RustCrypto/signatures/issues/894" }, { "name": "https://github.com/RustCrypto/signatures/pull/895", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/RustCrypto/signatures/pull/895" }, { "name": "https://github.com/RustCrypto/signatures/commit/400961412be2e2ab787942cf30e0a9b66b37a54a", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/RustCrypto/signatures/commit/400961412be2e2ab787942cf30e0a9b66b37a54a" }, { "name": "https://github.com/RustCrypto/signatures/commit/b01c3b73dd08d0094e089aa234f78b6089ec1f38", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/RustCrypto/signatures/commit/b01c3b73dd08d0094e089aa234f78b6089ec1f38" }, { "name": "https://csrc.nist.gov/pubs/fips/204/final", "tags": [ "x_refsource_MISC" ], "url": "https://csrc.nist.gov/pubs/fips/204/final" }, { "name": "https://datatracker.ietf.org/doc/html/rfc9881", "tags": [ "x_refsource_MISC" ], "url": "https://datatracker.ietf.org/doc/html/rfc9881" }, { "name": "https://github.com/C2SP/wycheproof", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/C2SP/wycheproof" }, { "name": "https://github.com/C2SP/wycheproof/blob/master/testvectors_v1/mldsa_44_verify_test.json", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/C2SP/wycheproof/blob/master/testvectors_v1/mldsa_44_verify_test.json" }, { "name": "https://github.com/C2SP/wycheproof/blob/master/testvectors_v1/mldsa_65_verify_test.json", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/C2SP/wycheproof/blob/master/testvectors_v1/mldsa_65_verify_test.json" }, { "name": "https://github.com/C2SP/wycheproof/blob/master/testvectors_v1/mldsa_87_verify_test.json", "tags": [ "x_refsource_MISC" ], "url": "https://github.com/C2SP/wycheproof/blob/master/testvectors_v1/mldsa_87_verify_test.json" } ], "affected": [ { "vendor": "RustCrypto", "product": "signatures", "versions": [ { "version": ">= 0.0.4, < 0.1.0-rc.4", "status": "affected" } ] } ], "providerMetadata": { "orgId": "a0819718-46f1-4df5-94e2-005712e83aaa", "shortName": "GitHub_M", "dateUpdated": "2026-01-28T00:24:53.146Z" }, "descriptions": [ { "lang": "en", "value": "The ML-DSA crate is a Rust implementation of the Module-Lattice-Based Digital Signature Standard (ML-DSA). Starting in version 0.0.4 and prior to version 0.1.0-rc.4, the ML-DSA signature verification implementation in the RustCrypto `ml-dsa` crate incorrectly accepts signatures with repeated (duplicate) hint indices. According to the ML-DSA specification (FIPS 204 / RFC 9881), hint indices within each polynomial must be **strictly increasing**. The current implementation uses a non-strict monotonic check (`<=` instead of `<`), allowing duplicate indices. This is a regression bug. The original implementation was correct, but a commit in version 0.0.4 inadvertently changed the strict `<` comparison to `<=`, introducing the vulnerability. Version 0.1.0-rc.4 fixes the issue." } ], "source": { "advisory": "GHSA-5x2r-hc65-25f9", "discovery": "UNKNOWN" } }, "adp": [ { "metrics": [ { "other": { "type": "ssvc", "content": { "timestamp": "2026-01-28T14:53:25.394412Z", "id": "CVE-2026-24850", "options": [ { "Exploitation": "poc" }, { "Automatable": "yes" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "version": "2.0.3" } } } ], "title": "CISA ADP Vulnrichment", "providerMetadata": { "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP", "dateUpdated": "2026-01-28T14:54:22.827Z" } } ] } }