Skip to content
vetkitChecksChangelogDocumentation

vetkit.csharp.crypto.static-iv

An encryption IV is a constant or all-zero array. Reusing the same IV with the same key makes CBC/CTR/GCM ciphertext predictable or, for GCM/CTR, lets an attacker recover plaintext.

Last updated:

Suite: Security

csharp

An encryption IV is a constant or all-zero array. Reusing the same IV with the same key makes CBC/CTR/GCM ciphertext predictable or, for GCM/CTR, lets an attacker recover plaintext.

Category: SECURITY · Engine rule severity: WARNING

How to fix it

Call GenerateIV() (or RandomNumberGenerator.Fill) for every message and store the IV next to the ciphertext.

References

Source: packages/engine/rules/sast/csharp.yml.

Generated from shipped rule definitions at build time. Matching is a review signal, not proof of exploitability. “generic” denotes text matching, not complete language or framework coverage. Runtime configuration and available tools affect whether a rule runs.