811
[REF-298]Joshbw. "Should we really use bcrypt/scrypt?". 2012 June 8. < https://web.archive.org/
web/20120629144851/http://www.analyticalengine.net/2012/06/should-we-really-use-bcryptscrypt/
>.2023-04-07.
[REF-637]"Rainbow table". 2009 March 3. Wikipedia. < https://en.wikipedia.org/wiki/Rainbow_table
>.2023-04-07.
[REF-1243]Bruce Schneier. "Cryptanalysis of SHA-1". 2005 February 8. < https://
www.schneier.com/blog/archives/2005/02/cryptanalysis_o.html >.2021-10-25.
[REF-1244]Dan Goodin. "At death's door for years, widely used SHA1 function is now dead". 2017
February 3. Ars Technica. < https://arstechnica.com/information-technology/2017/02/at-deathsdoor-
for-years-widely-used-sha1-function-is-now-dead/ >.2021-10-25.
[REF-1283]Forescout Vedere Labs. "OT:ICEFALL: The legacy of "insecure by design" and its
implications for certifications and risk management". 2022 June 0. < https://www.forescout.com/
resources/ot-icefall-report/ >.
[REF-1360]"dmi_jtag.sv". 2021. < https://github.com/HACK-EVENT/hackatdac21/
blob/71103971e8204de6a61afc17d3653292517d32bf/piton/design/chip/tile/ariane/src/riscv-dbg/
src/dmi_jtag.sv#L82 >.2023-07-15.
[REF-1361]"fix cwe_1205 in dmi_jtag.sv". 2021. < https://github.com/HACK-EVENT/hackatdac21/
blob/c4f4b832218b50c406dbf9f425d3b654117c1355/piton/design/chip/tile/ariane/src/riscv-dbg/src/
dmi_jtag.sv#L82 >.2023-07-22.
CWE-329: Generation of Predictable IV with CBC Mode
Weakness ID : 329
Structure : Simple
Abstraction : Variant
Description
The product generates and uses a predictable initialization Vector (IV) with Cipher Block Chaining
(CBC) Mode, which causes algorithms to be susceptible to dictionary attacks when they are
encrypted under the same key.
Extended Description
CBC mode eliminates a weakness of Electronic Code Book (ECB) mode by allowing identical
plaintext blocks to be encrypted to different ciphertext blocks. This is possible by the XOR-ing of an
IV with the initial plaintext block so that every plaintext block in the chain is XOR'd with a different
value before encryption. If IVs are reused, then identical plaintexts would be encrypted to identical
ciphertexts. However, even if IVs are not identical but are predictable, then they still break the
security of CBC mode against Chosen Plaintext Attacks (CPA).
Relationships
The table(s) below shows the weaknesses and high level categories that are related to this
weakness. These relationships are defined as ChildOf, ParentOf, MemberOr and give insight to
similar items that may exist at higher and lower levels of abstraction. In addition, relationships such
as PeerOf and CanAlsoBe are defined to show similar weaknesses that may want to be explored.
Relevant to the view "Research Concepts" (CWE-1000)
Nature Type ID Name Page
ChildOf 573 Improper Following of Specification by Caller 1298
ChildOf 1204 Generation of Weak Initialization Vector (IV) 1987
Applicable Platforms
CWE Version 4.14
CWE-329: Generation of Predictable IV with CBC Mode
CWE-329: Generation of Predictable IV with CBC Mode