CVE-2016-1908: Critical severity OpenBSD OpenSSH vulnerability
It was discovered that OpenSSH client did not correctly handle situations when untrusted X11 forwarding was requested and generation of the untrusted authentication cookie failed. The ssh client continued by generating fake authentication cookie and allowed remote X clients to connect the local X server. The decision if client connection was accepted was delegated to the X server which, depending on its configuration, could allow clients to open trusted X connection. This would lead to remote X clients having more privileged access to the local X server than intended.
This problem can occur when X server does not include or enable X Security extension (for X.org X server, this extension is not compiled in by default since 2007) and when it has authentication methods besides MIT cookies enabled (e.g. localuser authentication allowing all X connections from a local user who owns the X session).
Both of these conditions are satisfied on Red Hat Enterprise Linux 7 and current Fedora versions. The X server does not have X Security extension compiled in and 'xhost +si:localuser:id -un' is run from the xinit scripts. Therefore remote X clients are granted trusted access to the local X server when 'ssh -X' is used, as if 'ssh -Y' was actually used.
The X server on Red Hat Enterprise Linux 6 includes X Security extension (as of RHSA-2013:1620 - http://rhn.redhat.com/errata/RHSA-2013-1620.html - which was released as part of Red Hat Enterprise Linux 6.5) and hence does not fall back to the use of fake authentication cookie.
This issue was corrected upstream in version 7.1p2:
http://www.openssh.com/txt/release-7.1p2
Upstream commit:
https://anongit.mindrot.org/openssh.git/commit/?id=ed4ce82dbfa8a3a3c8ea6fa0db113c71e234416c
which needs to be applied after:
https://anongit.mindrot.org/openssh.git/commit/?id=f98a09cacff7baad8748c9aa217afd155a4d493f
Other sources
The client in OpenSSH before 7.2 mishandles failed cookie generation for untrusted X11 forwarding and relies on the local X11 server for access-control decisions, which allows remote X11 clients to trigger a fallback and obtain trusted X11 forwarding privileges by leveraging configuration issues on this X11 server, as demonstrated by lack of the SECURITY extension on this X11 server.
— Launchpad
Affected Software
Remediation
Patch Available
Event History
Frequently Asked Questions
What is the severity of CVE-2016-1908?
The severity of CVE-2016-1908 is considered important as it can allow remote X clients to connect to the local X server improperly.
How do I fix CVE-2016-1908?
To fix CVE-2016-1908, you should upgrade your OpenSSH client to a version that is patched against this vulnerability, specifically to versions above 7.2 for Red Hat and appropriate versions for Debian.
Which software is affected by CVE-2016-1908?
CVE-2016-1908 affects several OpenSSH versions, notably versions up to and including 7.2.
What are the potential consequences of CVE-2016-1908?
The potential consequences of CVE-2016-1908 include unauthorized access to the local X server, leading to potential data exposure or remote command execution.
Is my system vulnerable to CVE-2016-1908?
You may be vulnerable to CVE-2016-1908 if you are running an affected version of OpenSSH prior to 7.2, so please verify your software version.