CVE-2023-39969

Critical

Description

uthenticode is a small cross-platform library for partially verifying Authenticode digital signatures. Version 1.0.9 of uthenticode hashed the entire file rather than hashing sections by virtual address, in violation of the Authenticode specification. As a result, an attacker could modify code within a binary without changing its Authenticode hash, making it appear valid from uthenticode's perspective. Versions of uthenticode prior to 1.0.9 are not vulnerable to this attack, nor are versions in the 2.x series. By design, uthenticode does not perform full-chain validation. However, the malleability of signature verification introduced in 1.0.9 was an unintended oversight. The 2.x series addresses the vulnerability. Versions prior to 1.0.9 are also not vulnerable, but users are encouraged to upgrade rather than downgrade. There are no workarounds to this vulnerability.

SeverityCritical
CVSS9.0
Exploit probability—
ProductTrailofbits Uthenticode
PublishedAug 9, 2023
First seenAug 9, 2023
Weakness typeCWE-347CWE-347

How to fix

Update
  • trailofbits uthenticode1.0.9 or later

Affected products

ProductAffected versionsFixed in
trailofbits uthenticodev < 1.0.91.0.9

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.