CVE Vulnerabilities

CVE-2024-28824

Least Privilege Violation

Published: Mar 22, 2024 | Modified: Dec 04, 2024
CVSS 3.x
7.8
HIGH
Source:
NVD
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu
MEDIUM

Least privilege violation and reliance on untrusted inputs in the mk_informix Checkmk agent plugin before Checkmk 2.3.0b4 (beta), 2.2.0p24, 2.1.0p41 and 2.0.0 (EOL) allows local users to escalate privileges.

Weakness

The elevated privilege level required to perform operations such as chroot() should be dropped immediately after the operation is performed.

Affected Software

Name Vendor Start Version End Version
Checkmk Checkmk * 2.0.0 (including)
Checkmk Checkmk 2.1.0 (including) 2.1.0 (including)
Checkmk Checkmk 2.1.0-b1 (including) 2.1.0-b1 (including)
Checkmk Checkmk 2.1.0-b2 (including) 2.1.0-b2 (including)
Checkmk Checkmk 2.1.0-b3 (including) 2.1.0-b3 (including)
Checkmk Checkmk 2.1.0-b4 (including) 2.1.0-b4 (including)
Checkmk Checkmk 2.1.0-b5 (including) 2.1.0-b5 (including)
Checkmk Checkmk 2.1.0-b6 (including) 2.1.0-b6 (including)
Checkmk Checkmk 2.1.0-b7 (including) 2.1.0-b7 (including)
Checkmk Checkmk 2.1.0-b8 (including) 2.1.0-b8 (including)
Checkmk Checkmk 2.1.0-b9 (including) 2.1.0-b9 (including)
Checkmk Checkmk 2.1.0-p1 (including) 2.1.0-p1 (including)
Checkmk Checkmk 2.1.0-p10 (including) 2.1.0-p10 (including)
Checkmk Checkmk 2.1.0-p11 (including) 2.1.0-p11 (including)
Checkmk Checkmk 2.1.0-p12 (including) 2.1.0-p12 (including)
Checkmk Checkmk 2.1.0-p13 (including) 2.1.0-p13 (including)
Checkmk Checkmk 2.1.0-p14 (including) 2.1.0-p14 (including)
Checkmk Checkmk 2.1.0-p15 (including) 2.1.0-p15 (including)
Checkmk Checkmk 2.1.0-p16 (including) 2.1.0-p16 (including)
Checkmk Checkmk 2.1.0-p17 (including) 2.1.0-p17 (including)
Checkmk Checkmk 2.1.0-p18 (including) 2.1.0-p18 (including)
Checkmk Checkmk 2.1.0-p19 (including) 2.1.0-p19 (including)
Checkmk Checkmk 2.1.0-p2 (including) 2.1.0-p2 (including)
Checkmk Checkmk 2.1.0-p20 (including) 2.1.0-p20 (including)
Checkmk Checkmk 2.1.0-p21 (including) 2.1.0-p21 (including)
Checkmk Checkmk 2.1.0-p22 (including) 2.1.0-p22 (including)
Checkmk Checkmk 2.1.0-p23 (including) 2.1.0-p23 (including)
Checkmk Checkmk 2.1.0-p24 (including) 2.1.0-p24 (including)
Checkmk Checkmk 2.1.0-p25 (including) 2.1.0-p25 (including)
Checkmk Checkmk 2.1.0-p26 (including) 2.1.0-p26 (including)
Checkmk Checkmk 2.1.0-p27 (including) 2.1.0-p27 (including)
Checkmk Checkmk 2.1.0-p28 (including) 2.1.0-p28 (including)
Checkmk Checkmk 2.1.0-p29 (including) 2.1.0-p29 (including)
Checkmk Checkmk 2.1.0-p3 (including) 2.1.0-p3 (including)
Checkmk Checkmk 2.1.0-p30 (including) 2.1.0-p30 (including)
Checkmk Checkmk 2.1.0-p31 (including) 2.1.0-p31 (including)
Checkmk Checkmk 2.1.0-p32 (including) 2.1.0-p32 (including)
Checkmk Checkmk 2.1.0-p33 (including) 2.1.0-p33 (including)
Checkmk Checkmk 2.1.0-p34 (including) 2.1.0-p34 (including)
Checkmk Checkmk 2.1.0-p35 (including) 2.1.0-p35 (including)
Checkmk Checkmk 2.1.0-p36 (including) 2.1.0-p36 (including)
Checkmk Checkmk 2.1.0-p37 (including) 2.1.0-p37 (including)
Checkmk Checkmk 2.1.0-p38 (including) 2.1.0-p38 (including)
Checkmk Checkmk 2.1.0-p39 (including) 2.1.0-p39 (including)
Checkmk Checkmk 2.1.0-p4 (including) 2.1.0-p4 (including)
Checkmk Checkmk 2.1.0-p40 (including) 2.1.0-p40 (including)
Checkmk Checkmk 2.1.0-p5 (including) 2.1.0-p5 (including)
Checkmk Checkmk 2.1.0-p6 (including) 2.1.0-p6 (including)
Checkmk Checkmk 2.1.0-p7 (including) 2.1.0-p7 (including)
Checkmk Checkmk 2.1.0-p8 (including) 2.1.0-p8 (including)
Checkmk Checkmk 2.1.0-p9 (including) 2.1.0-p9 (including)
Checkmk Checkmk 2.2.0 (including) 2.2.0 (including)
Checkmk Checkmk 2.2.0-b1 (including) 2.2.0-b1 (including)
Checkmk Checkmk 2.2.0-b2 (including) 2.2.0-b2 (including)
Checkmk Checkmk 2.2.0-b3 (including) 2.2.0-b3 (including)
Checkmk Checkmk 2.2.0-b4 (including) 2.2.0-b4 (including)
Checkmk Checkmk 2.2.0-b5 (including) 2.2.0-b5 (including)
Checkmk Checkmk 2.2.0-b6 (including) 2.2.0-b6 (including)
Checkmk Checkmk 2.2.0-b7 (including) 2.2.0-b7 (including)
Checkmk Checkmk 2.2.0-b8 (including) 2.2.0-b8 (including)
Checkmk Checkmk 2.2.0-i1 (including) 2.2.0-i1 (including)
Checkmk Checkmk 2.2.0-p1 (including) 2.2.0-p1 (including)
Checkmk Checkmk 2.2.0-p10 (including) 2.2.0-p10 (including)
Checkmk Checkmk 2.2.0-p11 (including) 2.2.0-p11 (including)
Checkmk Checkmk 2.2.0-p12 (including) 2.2.0-p12 (including)
Checkmk Checkmk 2.2.0-p13 (including) 2.2.0-p13 (including)
Checkmk Checkmk 2.2.0-p14 (including) 2.2.0-p14 (including)
Checkmk Checkmk 2.2.0-p15 (including) 2.2.0-p15 (including)
Checkmk Checkmk 2.2.0-p16 (including) 2.2.0-p16 (including)
Checkmk Checkmk 2.2.0-p17 (including) 2.2.0-p17 (including)
Checkmk Checkmk 2.2.0-p18 (including) 2.2.0-p18 (including)
Checkmk Checkmk 2.2.0-p19 (including) 2.2.0-p19 (including)
Checkmk Checkmk 2.2.0-p2 (including) 2.2.0-p2 (including)
Checkmk Checkmk 2.2.0-p20 (including) 2.2.0-p20 (including)
Checkmk Checkmk 2.2.0-p21 (including) 2.2.0-p21 (including)
Checkmk Checkmk 2.2.0-p22 (including) 2.2.0-p22 (including)
Checkmk Checkmk 2.2.0-p23 (including) 2.2.0-p23 (including)
Checkmk Checkmk 2.2.0-p3 (including) 2.2.0-p3 (including)
Checkmk Checkmk 2.2.0-p4 (including) 2.2.0-p4 (including)
Checkmk Checkmk 2.2.0-p5 (including) 2.2.0-p5 (including)
Checkmk Checkmk 2.2.0-p6 (including) 2.2.0-p6 (including)
Checkmk Checkmk 2.2.0-p7 (including) 2.2.0-p7 (including)
Checkmk Checkmk 2.2.0-p8 (including) 2.2.0-p8 (including)
Checkmk Checkmk 2.2.0-p9 (including) 2.2.0-p9 (including)
Checkmk Checkmk 2.3.0-b1 (including) 2.3.0-b1 (including)
Checkmk Checkmk 2.3.0-b2 (including) 2.3.0-b2 (including)
Checkmk Checkmk 2.3.0-b3 (including) 2.3.0-b3 (including)

Potential Mitigations

  • Compartmentalize the system to have “safe” areas where trust boundaries can be unambiguously drawn. Do not allow sensitive data to go outside of the trust boundary and always be careful when interfacing with a compartment outside of the safe area.
  • Ensure that appropriate compartmentalization is built into the system design, and the compartmentalization allows for and reinforces privilege separation functionality. Architects and designers should rely on the principle of least privilege to decide the appropriate time to use privileges and the time to drop privileges.

References