Type 4 passwords on some Cisco IOS and IOS XE devices are not hashed as advertised, leaving them weak and vulnerable, according to a security advisory released by Cisco.
The design of Type 4 passwords called for use of the Password-Based Key Derivation Function version 2 (PBKDF2), as described in RFC 2898 section 5.2 (the Cisco advisory erroneously says section 5.1). The implementation takes a user-supplied plain-text password. It should use SHA-256, an 80-bit salt (generated by a cryptographically secure random number generator), and 1,000 iterations of the hash algorithm. The actual implementation uses SHA-256, no salt, and one iteration.
As Cisco says, this makes such passwords more easily vulnerable to brute force attacks.
Only devices with these three features enabled are vulnerable: support for Type 4 passwords, the "enable secret
The suggested workaround is to replace the passwords with Type 5 passwords. A device with the Type 4 password bug is unable to generate Type 5 passwords from plain-text input. The advisory suggests either using a different device or OpenSSL, describing the process for doing so as well as the process for copying the generated password to the device.
Cisco plans to deprecate Type 4 passwords by removing the ability to generate them in future versions of IOS and IOS XE. The need to maintain compatibility with the existing flawed implementation precludes simply fixing it. They will abandon an earlier plan to deprecate Type 5 passwords and create a new password type to implement (correctly) the original design for Type 4.
Cisco credits Philipp Schmidt and Jens Steube from the Hashcat Project with discovery of the issue.
Larry Seltzer is the editorial director for BYTE, Dark Reading, and Network Computing.
Have a comment on this story? Please click "Discuss" below. If you'd like to contact Dark Reading's editors directly, send us a message.