VDB-9945 · CVE-2013-4206 · BID 61599

Simon Tatham PuTTY up to 2010-06-01 Modular Multiplication modmul memory corruption

CVSS Meta Temp Score
CVSS is a standardized scoring system to determine possibilities of attacks. The Temp Score considers temporal factors like disclosure, exploit and countermeasures. The unique Meta Score calculates the average score of different sources to provide a normalized scoring system.
Current Exploit Price (≈)
Our analysts are monitoring exploit markets and are in contact with vulnerability brokers. The range indicates the observed or calculated exploit price to be seen on exploit markets. A good indicator to understand the monetary effort required for and the popularity of an attack.
CTI Interest Score
Our Cyber Threat Intelligence team is monitoring different web sites, mailing lists, exploit markets and social media networks. The CTI Interest Score identifies the interest of attackers and the security community for this specific vulnerability in real-time. A high score indicates an elevated risk to be targeted for this vulnerability.
9.5$0-$5k0.00

A vulnerability classified as critical has been found in Simon Tatham PuTTY (Connectivity Software). This affects the function modmul of the component Modular Multiplication Handler. The manipulation with an unknown input leads to a memory corruption vulnerability. CWE is classifying the issue as CWE-119. The product performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:

Heap-based buffer underflow in the modmul function in sshbn.c in PuTTY before 0.63 allows remote SSH servers to cause a denial of service (crash) and possibly trigger memory corruption or code execution via a crafted DSA signature, which is not properly handled when performing certain bit-shifting operations during modular multiplication.

The weakness was published 08/06/2013 by Mark Wooding as PuTTY vulnerability vuln-modmul as confirmed advisory (Website). The advisory is shared at chiark.greenend.org.uk. The public release has been coordinated with Simon Tatham. This vulnerability is uniquely identified as CVE-2013-4206 since 06/12/2013. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. Technical details are known, but no exploit is available. The advisory points out:

In order to get as many useful bits as possible out of each division, modmul starts by shifting the modulus left so that its highest set bit appears at the top of a machine word. To correct for that shift in the following calculation, the last thing it does is to shift the entire output value left by the same number of bits, reduce it again, and shift back down. A missing bounds check can cause it to allocate the array it uses to store that output value with too little capacity, with the effect that the bit-shifting process runs off the beginning of the array and corrupts data preceding it in memory. The corrupted data will typically consist of other values involved in the same modular multiplication, and the heap block headers in between them. Since the shifted data is shifted back again immediately after the final modular reduction, this bug would be harmless (though still wrong) except for the fact that one word at the bottom of the data is not shifted back down. By choosing the inputs to modmul to have appropriate lengths relative to each other, that one unrestored word can be made to point at a heap block header. The modmul function is called during validation of any DAS signature received by PuTTY, including during the initial key exchange phase. Therefore, this bug can be exploited by a malicious server, before the client has received and verified a host key signature. So this attack can be performed by a man-in-the-middle between the SSH client and server, and the normal host key protections against MITM attacks are bypassed. Even if you trust the server you think you are connecting to, you are not safe.

The vulnerability scanner Nessus provides a plugin with the ID 69318 (PuTTY 0.52 to 0.62 Multiple Vulnerabilities), which helps to determine the existence of the flaw in a target environment. It is assigned to the family Windows. The commercial vulnerability scanner Qualys is able to test this issue with plugin 166403 (OpenSuSE Security Update for Filezilla (openSUSE-SU-2013:1347-1)). The advisory illustrates:

We are currently unaware of any way in which this can lead to remote code execution or controlled memory overwriting, since the overwritten heap block cannot be assigned an arbitrary value by the attacker, only shifted left by a chosen number of bits. However, we cannot be sure of that.

Upgrading to version 0.63 eliminates this vulnerability. The upgrade is hosted for download at chiark.greenend.org.uk. A possible mitigation has been published immediately after the disclosure of the vulnerability. The advisory contains the following remark:

This bug does not affect RSA keys.

The vulnerability is also documented in the vulnerability database at Tenable (69318). Further details are available at seclists.org. Similar entries are available at 9860, 9901 and 9902.

Productinfo

Type

Vendor

Name

Version

License

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB CVSS-B Score: 🔍
VulDB CVSS-BT Score: 🔍
VulDB Vector: 🔍
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 10.0
VulDB Meta Temp Score: 9.5

VulDB Base Score: 10.0
VulDB Temp Score: 9.5
VulDB Vector: 🔍
VulDB Reliability: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexityAuthenticationConfidentialityIntegrityAvailability
unlockunlockunlockunlockunlockunlock
unlockunlockunlockunlockunlockunlock
unlockunlockunlockunlockunlockunlock

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍

NVD Base Score: 🔍

Exploitinginfo

Class: Memory corruption
CWE: CWE-119
CAPEC: 🔍
ATT&CK: 🔍

Local: No
Remote: Yes

Availability: 🔍
Status: Not defined

EPSS Score: 🔍
EPSS Percentile: 🔍

Price Prediction: 🔍
Current Price Estimation: 🔍

0-Dayunlockunlockunlockunlock
Todayunlockunlockunlockunlock

Nessus ID: 69318
Nessus Name: PuTTY 0.52 to 0.62 Multiple Vulnerabilities
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍

OpenVAS ID: 892736
OpenVAS Name: Debian Security Advisory DSA 2736-1 (putty - several vulnerabilities
OpenVAS File: 🔍
OpenVAS Family: 🔍

Qualys ID: 🔍
Qualys Name: 🔍

Threat Intelligenceinfo

Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍

Upgrade: PuTTY 0.63

Timelineinfo

06/12/2013 🔍
08/05/2013 +54 days 🔍
08/05/2013 +0 days 🔍
08/06/2013 +1 days 🔍
08/06/2013 +0 days 🔍
08/06/2013 +0 days 🔍
08/12/2013 +6 days 🔍
08/13/2013 +1 days 🔍
08/15/2013 +2 days 🔍
08/19/2013 +4 days 🔍
05/21/2021 +2832 days 🔍

Sourcesinfo

Advisory: PuTTY vulnerability vuln-modmul
Researcher: Mark Wooding
Status: Confirmed
Confirmation: 🔍
Coordinated: 🔍

CVE: CVE-2013-4206 (🔍)
OVAL: 🔍

Vulnerability Center: 40972 - PuTTY 0.52 - 0.62 \x27modmul\x27 Heap-Corruption Buffer Vulnerability Allows Remote DoS, Medium
SecurityFocus: 61599 - PuTTY 'getstring()' Function Multiple Integer Overflow Vulnerabilities
Secunia: 54354 - PuTTY Multiple Integer Overflow Vulnerabilities, Moderately Critical
OSVDB: 96210

Misc.: 🔍
See also: 🔍

Entryinfo

Created: 08/15/2013 12:09
Updated: 05/21/2021 14:34
Changes: 08/15/2013 12:09 (87), 05/08/2017 09:03 (4), 05/21/2021 14:34 (2)
Complete: 🔍

Discussion

No comments yet. Languages: en.

Please log in to comment.

Want to stay up to date on a daily basis?

Enable the mail alert feature now!