It was discovered that the allow_execstack setroubleshoot plugin executes external commands using the 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 execstack denial using a file with a specially crafted name. The similar problem was reported for allow_execmod plugin too, related to the use of commands.getstatusoutput(), see bug 1339183.
Acknowledgments: Name: Milos Malik (Red Hat)
This issue does not affect the default SELinux configuration, as the execstack is allowed by default for unconfined_t domain. SELinux booleans allow_execstack (on Red Hat Enterprise Linux 6) or selinuxuser_execstack (on Red Hat Enterprise Linux 7) can be set to off to disallow execstack, and hence make it possible to generate execstack AVC, which triggers this bug. The impact of this issue on Red Hat Enterprise Linux 7.2 and later is reduced, as setroubleshootd does not run with root privileges, but with privileges of a dedicated non-root user setroubleshoot.
Lifting embargo.
Created setroubleshoot-plugins tracking bugs for this issue: Affects: fedora-all [bug 1348527]
Upstream commit: https://github.com/fedora-selinux/setroubleshoot/commit/eaccf4c0d20a27d3df5ff6de8c9dcc80f6f40718
This issue has been addressed in the following products: Red Hat Enterprise Linux 6 Via RHSA-2016:1267 https://access.redhat.com/errata/RHSA-2016:1267
This issue has been addressed in the following products: Red Hat Enterprise Linux 7 Via RHSA-2016:1293 https://access.redhat.com/errata/RHSA-2016:1293
setroubleshoot-plugins-3.3.5.1-1.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.
setroubleshoot-3.3.9.1-1.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.
setroubleshoot-3.2.27.1-1.fc22 has been pushed to the Fedora 22 stable repository. If problems still persist, please make note of it in this bug report.
setroubleshoot-3.3.9.1-1.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.
setroubleshoot-plugins-3.3.5.1-1.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.