- What is CWE-1204?
- The product uses a cryptographic primitive that uses an Initialization Vector (IV), but the product does not generate IVs that are sufficiently unpredictable or unique according to the expected cryptographic requirements for that primitive.
- What CVEs are caused by CWE-1204?
- 3 recorded CVEs are attributed to CWE-1204, including CVE-2022-26083, CVE-2025-0714, CVE-2023-2747.
- How do you prevent CWE-1204?
- Different cipher modes have different requirements for their IVs. When choosing and implementing a mode, it is important to understand those requirements in order to keep security guarantees intact. Generally, it is safest to generate a random IV, since it will be both unpredictable and have a very low chance of being non-unique. IVs do not have to be kept secret, so if generating duplicate IVs is a concern, a list of already-used IVs can be kept and checked against.
- How is CWE-1204 detected?
- Automated Static Analysis: Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.)
- What are the consequences of CWE-1204?
- Exploiting CWE-1204 can lead to: Read Application Data.
- Is CWE-1204 actively exploited?
- 3 recorded CVEs are caused by CWE-1204; none are currently in CISA's KEV catalog of actively exploited flaws.