CVE-2016-4445
published 2017-04-11CVE-2016-4445: The fix_lookup_id function in sealert in setroubleshoot before 3.2.23 allows local users to execute arbitrary commands as root by triggering an SELinux denial…
PriorityP335high7CVSS 3.0
AVLACHPRLUINSUCHIHAH
EPSS
0.47%
37.8th percentile
The fix_lookup_id function in sealert in setroubleshoot before 3.2.23 allows local users to execute arbitrary commands as root by triggering an SELinux denial with a crafted file name, related to executing external commands with the commands.getstatusoutput function.
Affected
6 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| redhat | enterprise_linux_desktop | — | — |
| redhat | enterprise_linux_hpc_node | — | — |
| redhat | enterprise_linux_server | — | — |
| redhat | enterprise_linux_workstation | — | — |
| setroubleshoot_project | setroubleshoot | <= 3.2.22 | — |
| setroubleshoot_project | setroubleshoot | <= - | — |
CVSS provenance
nvdv3.07.0HIGHCVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
nvdv2.06.9MEDIUMAV:L/AC:M/Au:N/C:C/I:C/A:C
vendor_redhat7.0HIGH
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
Red Hat
setroubleshoot: command injection issues
vendor_redhat·2016-06-21·CVSS 7.0
CVE-2016-4989 [HIGH] CWE-77 setroubleshoot: command injection issues
setroubleshoot: command injection issues
setroubleshoot allows local users to bypass an intended container protection mechanism and execute arbitrary commands by (1) triggering an SELinux denial with a crafted file name, which is handled by the _set_tpath function in audit_data.py or via a crafted (2) local_id or (3) analysis_id field in a crafted XML document to the run_fix function in SetroubleshootFixit.py, related to the subprocess.check_output and commands.getstatusoutput functions, a different vulnerability than CVE-2016-4445.
Shell command injection flaws were found in the way the setroubleshoot executed external commands. A local attacker able to trigger certain SELinux denials could use these flaws to execute arbitrary code with root privileges.
Package: setroubleshoot (Red Hat
Red Hat
setroubleshoot: insecure use of commands.getstatusoutput in sealert
vendor_redhat·2016-06-21·CVSS 7.0
CVE-2016-4445 [HIGH] CWE-77 setroubleshoot: insecure use of commands.getstatusoutput in sealert
setroubleshoot: insecure use of commands.getstatusoutput in sealert
The fix_lookup_id function in sealert in setroubleshoot before 3.2.23 allows local users to execute arbitrary commands as root by triggering an SELinux denial with a crafted file name, related to executing external commands with the commands.getstatusoutput function.
A shell command injection flaw was found in the way the setroubleshoot executed external commands. A local attacker able to trigger certain SELinux denials could use this flaw to execute arbitrary code with root privileges.
Package: setroubleshoot (Red Hat Enterprise Linux 5) - Not affected
GHSA
GHSA-585r-x79p-835g: setroubleshoot allows local users to bypass an intended container protection mechanism and execute arbitrary commands by (1) triggering an SELinux den
ghsa_unreviewed·2022-05-17·CVSS 7.0
CVE-2016-4989 [HIGH] CWE-77 GHSA-585r-x79p-835g: setroubleshoot allows local users to bypass an intended container protection mechanism and execute arbitrary commands by (1) triggering an SELinux den
setroubleshoot allows local users to bypass an intended container protection mechanism and execute arbitrary commands by (1) triggering an SELinux denial with a crafted file name, which is handled by the _set_tpath function in audit_data.py or via a crafted (2) local_id or (3) analysis_id field in a crafted XML document to the run_fix function in SetroubleshootFixit.py, related to the subprocess.check_output and commands.getstatusoutput functions, a different vulnerability than CVE-2016-4445.
GHSA
GHSA-3wff-jp8x-6p8q: The fix_lookup_id function in sealert in setroubleshoot before 3
ghsa_unreviewed·2022-05-17
CVE-2016-4445 [HIGH] CWE-77 GHSA-3wff-jp8x-6p8q: The fix_lookup_id function in sealert in setroubleshoot before 3
The fix_lookup_id function in sealert in setroubleshoot before 3.2.23 allows local users to execute arbitrary commands as root by triggering an SELinux denial with a crafted file name, related to executing external commands with the commands.getstatusoutput function.
No detection rules found.
No public exploits indexed.
Bugzilla
CVE-2016-4989 setroubleshoot: command injection issues
bugzilla·2016-06-14·CVSS 7.0
CVE-2016-4989 [HIGH] CVE-2016-4989 setroubleshoot: command injection issues
CVE-2016-4989 setroubleshoot: command injection issues
It was discovered that setroubleshoot executed external commands using subprocess.check_output(), commands.getstatusoutput(), or commands.getoutput() without properly sanitizing untrusted inputs used as command arguments. These inputs originated from SELinux AVC messages. A local user could use this flaw to execute arbitrary code as root if they could trigger an SELinux denial using a file with a specially crafted name.
The following cases were identified:
- _set_tpath() in audit_data.py - When executing locate command, it used subprocess.check_output() (new setroubleshoot versions) or commands.getstatusoutput() (older versions) to execute command using shell. A local user could use this flaw to execute commands with setroubleshootd
Bugzilla
CVE-2016-4445 setroubleshoot: insecure use of commands.getstatusoutput in sealert
bugzilla·2016-05-24·CVSS 7.0
CVE-2016-4445 [HIGH] CVE-2016-4445 setroubleshoot: insecure use of commands.getstatusoutput in sealert
CVE-2016-4445 setroubleshoot: insecure use of commands.getstatusoutput in sealert
It was discovered that sealert executed external fix commands using commands.getstatusoutput() without properly sanitizing untrusted inputs used as command arguments. These inputs originated from SELinux AVC messages. A local user could use this flaw to execute arbitrary code as root if they could trigger an SELinux denial using a file with a specially crafted name.
The use of commands.getstatusoutput() was already removed upstream via the following commit:
https://github.com/fedora-selinux/setroubleshoot/commit/2d12677629ca319310f6263688bb1b7f676c01b7
Discussion:
Acknowledgments:
Name: Red Hat Product Security
---
Lifting embargo.
---
This issue has been addressed in the following products:
Red Ha
http://seclists.org/oss-sec/2016/q2/575http://www.securityfocus.com/bid/91430http://www.securitytracker.com/id/1036144https://bugzilla.redhat.com/show_bug.cgi?id=1339183https://github.com/fedora-selinux/setroubleshoot/commit/2d12677629ca319310f6263688bb1b7f676c01b7https://rhn.redhat.com/errata/RHSA-2016-1267.htmlhttp://seclists.org/oss-sec/2016/q2/575http://www.securityfocus.com/bid/91430http://www.securitytracker.com/id/1036144https://bugzilla.redhat.com/show_bug.cgi?id=1339183https://github.com/fedora-selinux/setroubleshoot/commit/2d12677629ca319310f6263688bb1b7f676c01b7https://rhn.redhat.com/errata/RHSA-2016-1267.html
2017-04-11
Published