Cacti provides an operational monitoring and fault management framework. Prior to version 1.2.27, Cacti calls compat_password_hash when users set their password. compat_password_hash use password_hash if there is it, else use md5. When verifying password, it calls compat_password_verify. In compat_password_verify, password_verify is called if there is it, else use md5. password_verify and password_hash are supported on PHP < 5.5.0, following PHP manual. The vulnerability is in compat_password_verify. Md5-hashed user input is compared with correct password in database by $md5 == $hash. It is a loose comparison, not ===. It is a type juggling vulnerability. Version 1.2.27 contains a patch for the issue.
When an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Cacti | Cacti | * | 1.2.27 (excluding) |
| Cacti | Ubuntu | esm-apps/bionic | * |
| Cacti | Ubuntu | esm-apps/focal | * |
| Cacti | Ubuntu | esm-apps/jammy | * |
| Cacti | Ubuntu | esm-apps/noble | * |
| Cacti | Ubuntu | focal | * |
| Cacti | Ubuntu | jammy | * |
| Cacti | Ubuntu | mantic | * |
| Cacti | Ubuntu | noble | * |