Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-48850

CVE-2026-48850: PuTTY Use After Free Vulnerability

CVE-2026-48850 is a use after free vulnerability in PuTTY affecting versions 0.72 through 0.83. This flaw occurs in RSA key exchange operations. This post covers technical details, affected versions, and mitigation strategies.

Published:

CVE-2026-48850 Overview

CVE-2026-48850 is a double free vulnerability [CWE-415] affecting PuTTY versions 0.72 through 0.83. The flaw resides in the RSA key exchange (KEX) implementation used during Secure Shell (SSH) session negotiation. A malicious or compromised SSH server can trigger the same memory region to be freed twice during the RSA KEX handshake. Exploitation produces memory corruption that can crash the PuTTY client process. The issue affects the widely used Windows SSH and Telnet client maintained by Simon Tatham.

Critical Impact

A hostile SSH server performing RSA key exchange can corrupt heap memory in connecting PuTTY clients, causing denial of service and potentially enabling further memory-safety exploitation.

Affected Products

  • PuTTY 0.72 through 0.83
  • PuTTY-derived tools bundled with the affected releases (pscp, psftp, plink)
  • Third-party applications embedding the vulnerable PuTTY codebase

Discovery Timeline

  • 2026-05-25 - CVE-2026-48850 published to NVD
  • 2026-05-27 - Last updated in NVD database

Technical Details for CVE-2026-48850

Vulnerability Analysis

The vulnerability is a double free [CWE-415] in the RSA key exchange code path. RSA KEX, defined in RFC 4432, is one of several SSH key exchange methods PuTTY supports. During the handshake, the server sends a transient RSA public key that the client uses to encrypt a shared secret. The flaw causes a heap allocation tied to this exchange to be released twice. Double free conditions corrupt heap metadata, which can lead to allocator state inconsistencies, crashes, or controlled write primitives depending on the allocator in use.

The CWE-415 classification indicates the bug is a memory-safety defect rather than a protocol logic flaw. Attack complexity is high because the attacker must control or impersonate an SSH server and induce the client into negotiating RSA KEX specifically.

Root Cause

The root cause is improper memory ownership tracking inside the RSA KEX handler. A buffer or key structure is freed on one code path and then freed again when the same object is released by cleanup logic at the end of the exchange. The PuTTY maintainers document the issue in the PuTTY Wishlist Analysis.

Attack Vector

Exploitation requires a victim to initiate an SSH connection to an attacker-controlled server, or for an attacker to intercept and impersonate a legitimate server. The server must negotiate RSA KEX and send crafted handshake messages that drive PuTTY through the vulnerable free sequence. No user authentication is required because the bug triggers before credential exchange. Successful exploitation produces a client-side crash; weaponization into code execution would require additional heap-grooming primitives not described in the advisory.

No public proof-of-concept code or exploit is available. See the PuTTY Announcement List for vendor details.

Detection Methods for CVE-2026-48850

Indicators of Compromise

  • Unexpected crashes of putty.exe, plink.exe, pscp.exe, or psftp.exe shortly after initiating an SSH connection
  • Windows Error Reporting entries showing heap corruption faults in PuTTY processes
  • SSH sessions terminating during key exchange before authentication completes

Detection Strategies

  • Inventory installed PuTTY versions across endpoints and flag any build between 0.72 and 0.83 inclusive
  • Monitor process telemetry for PuTTY binaries terminating with access violation or heap corruption exit codes
  • Correlate client crashes with outbound SSH connections to untrusted or newly observed destinations

Monitoring Recommendations

  • Log outbound SSH connections (TCP/22 and non-standard ports) initiated by PuTTY binaries and review destinations against threat intelligence
  • Alert on SSH sessions that terminate before authentication completes, which may indicate KEX-stage exploitation attempts
  • Capture PuTTY crash dumps for forensic analysis when client processes terminate unexpectedly

How to Mitigate CVE-2026-48850

Immediate Actions Required

  • Upgrade PuTTY to version 0.84 or later on all systems where it is installed
  • Audit third-party software for embedded PuTTY components and apply vendor updates
  • Restrict outbound SSH connections to known, trusted hosts where operationally feasible

Patch Information

PuTTY 0.84 contains the fix for the RSA KEX double free. Download the patched release from the official PuTTY site and verify integrity using the published signatures. Refer to the PuTTY Announcement List for release notes and to the PuTTY Wishlist Analysis for technical details.

Workarounds

  • Disable RSA key exchange in PuTTY session configuration by removing it from the KEX algorithm preference list under Connection → SSH → Kex
  • Connect only to SSH servers under organizational control until patching is complete
  • Use SSH host key verification and pinning to reduce exposure to server impersonation
bash
# Configuration example: remove RSA KEX from preferred algorithms via PuTTY registry settings
# Edit HKEY_CURRENT_USER\Software\SimonTatham\PuTTY\Sessions\<SessionName>
# Set KEX value to exclude rsa, e.g.:
reg add "HKCU\Software\SimonTatham\PuTTY\Sessions\Default%20Settings" /v KEX /t REG_SZ /d "ecdh,dh-gex-sha1,dh-group14-sha1,WARN" /f

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.