CVE Vulnerabilities

CVE-2017-12847

Improper Initialization

Published: Aug 23, 2017 | Modified: Oct 03, 2019
CVSS 3.x
6.3
MEDIUM
Source:
NVD
CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:H
CVSS 2.x
6.3 MEDIUM
AV:L/AC:M/Au:N/C:N/I:C/A:C
RedHat/V2
RedHat/V3
4.4 LOW
CVSS:3.0/AV:L/AC:H/PR:L/UI:R/S:U/C:N/I:N/A:H
Ubuntu

Nagios Core before 4.3.3 creates a nagios.lock PID file after dropping privileges to a non-root account, which might allow local users to kill arbitrary processes by leveraging access to this non-root account for nagios.lock modification before a root script executes a kill cat /pathname/nagios.lock command.

Weakness

The software does not initialize or incorrectly initializes a resource, which might leave the resource in an unexpected state when it is accessed or used.

Affected Software

Name Vendor Start Version End Version
Nagios Nagios * 4.3.2
Nagios3 Ubuntu artful *
Nagios3 Ubuntu bionic *
Nagios3 Ubuntu esm-infra/xenial *
Nagios3 Ubuntu trusty *
Nagios3 Ubuntu upstream *
Nagios3 Ubuntu xenial *
Nagios3 Ubuntu zesty *

Potential Mitigations

  • Use a language that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
  • For example, in Java, if the programmer does not explicitly initialize a variable, then the code could produce a compile-time error (if the variable is local) or automatically initialize the variable to the default value for the variable’s type. In Perl, if explicit initialization is not performed, then a default value of undef is assigned, which is interpreted as 0, false, or an equivalent value depending on the context in which the variable is accessed.

References