CVE-2024-34340

NameCVE-2024-34340
DescriptionCacti 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-3884-1

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
cacti (PTS)jessie, jessie (lts)0.8.8b+dfsg-8+deb8u10vulnerable
stretch (security), stretch (lts), stretch0.8.8h+ds1-10+deb9u2vulnerable
buster (security), buster, buster (lts)1.2.2+ds1-2+deb10u6vulnerable
bullseye1.2.16+ds1-2+deb11u3vulnerable
bullseye (security)1.2.16+ds1-2+deb11u4fixed
bookworm1.2.24+ds1-1+deb12u4fixed
bookworm (security)1.2.24+ds1-1+deb12u2vulnerable
sid, trixie1.2.28+ds1-3fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
cactisourcejessie(unfixed)end-of-life
cactisourcestretch(unfixed)end-of-life
cactisourcebuster(unfixed)end-of-life
cactisourcebullseye1.2.16+ds1-2+deb11u4DLA-3884-1
cactisourcebookworm1.2.24+ds1-1+deb12u3
cactisource(unstable)1.2.27+ds1-1

Notes

https://github.com/Cacti/cacti/security/advisories/GHSA-37x7-mfjv-mm7m
Included in commit: https://github.com/Cacti/cacti/commit/6183961089980322dfd9fd8011ade0f41703eaea

Search for package or bug name: Reporting problems