Crypt::CBC: Insecure initialization vector — GLSA 200603-15

Crypt::CBC uses an insecure initialization vector, potentially resulting in a weaker encryption.

Affected packages

dev-perl/crypt-cbc on all architectures
Affected versions < 2.17
Unaffected versions >= 2.17

Background

Crypt::CBC is a Perl module to encrypt data using cipher block chaining (CBC).

Description

Lincoln Stein discovered that Crypt::CBC fails to handle 16 bytes long initializiation vectors correctly when running in the RandomIV mode, resulting in a weaker encryption because the second part of every block will always be encrypted with zeros if the blocksize of the cipher is greater than 8 bytes.

Impact

An attacker could exploit weak ciphertext produced by Crypt::CBC to bypass certain security restrictions or to gain access to sensitive data.

Workaround

There is no known workaround at this time.

Resolution

All Crypt::CBC users should upgrade to the latest available version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=dev-perl/crypt-cbc-2.17"

References

Release date
March 17, 2006

Latest revision
March 17, 2006: 01

Severity
low

Exploitable
remote

Bugzilla entries