CVE-2018-7750: Paramiko authentication bypass in SSH server implementation

CVE-2018-7750 · Severity: critical · CVSS 9.8 · Published 2018-07-12

Paramiko, a widely used Python library for SSH connections, contains a flaw in its server-side implementation that allows attackers to bypass authentication. By using a modified SSH client, an unauthorized user can skip the login process and gain access to the server's functions, such as opening communication channels or executing commands. This could lead to full system compromise, unauthorized data access, or service disruption.

Technologies: Paramiko, paramiko (PyPI). Vendors: Paramiko, PyPI.

Quick answers

Is CVE-2018-7750 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2018-7750 being exploited in the wild.
How severe is CVE-2018-7750?
Critical severity, with a CVSS score of 9.8, published 12 July 2018.
Which products and versions are affected?
Paramiko < 1.17.6, 1.18.x < 1.18.5, 2.0.x < 2.0.8, 2.1.x < 2.1.5, 2.2.x < 2.2.3, 2.3.x < 2.3.2, 2.4.0; paramiko (PyPI) ECOSYSTEM:introduced=2.0.0,fixed=2.0.8, GIT:introduced=0,fixed=fa29bd8446c8eab237f5187d28787727b4610516|ECOSYSTEM:introduced=0,fixed=1.17.6,introduced=1.18.0,fixed=1.18.5,introduced=2.0.0,fixed=2.0.8,introduced=2.1.0,fixed=2.1.5,introduced=2.2.0,fixed=2.2.3,introduced=2.3.0,fixed=2.3.2.
Is there a fix for CVE-2018-7750?
Yes. paramiko (PyPI): upgrade to 2.0.8, 2.3.2 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2018-7750 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2018-7750?
Check whether you run Paramiko or paramiko (PyPI) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • paramiko (PyPI): upgrade to 2.0.8, 2.3.2 or later
    pip install "paramiko>=2.3.2"

Technical details

An authentication bypass vulnerability exists in Paramiko's SSH server implementation within 'transport.py'. The root cause is a failure to validate the authentication state before processing connection-layer messages such as 'SSH_MSG_CHANNEL_OPEN'. A remote, unauthenticated attacker can use a customized SSH client to skip the 'SSH_MSG_USERAUTH_REQUEST' step and proceed directly to opening channels or requesting services. This allows for unauthorized command execution and data access on systems utilizing Paramiko as an SSH server. The issue is addressed in versions 1.17.6, 1.18.5, 2.0.8, 2.1.5, 2.2.3, 2.3.2, and 2.4.1.

Affected products

  • Paramiko Paramiko < 1.17.6, 1.18.x < 1.18.5, 2.0.x < 2.0.8, 2.1.x < 2.1.5, 2.2.x < 2.2.3, 2.3.x < 2.3.2, 2.4.0

Identifiers

  • CVE-2018-7750
  • GHSA-232r-66cg-79px
  • PYSEC-2018-19

Timeline

  • 2018-03-13: disclosed: NVD publication date
  • 2018-07-12: advisory: GitHub Advisory published

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.