Skip to main content
Live Webinar with SANS (June 25)— Agentic CTI Automation for Fun & ProfitRegister Free
Mallory
MediumCISA KEVExploited in the wildPublic exploit

Microsoft Authenticode WinVerifyTrust signature verification bypass in PE files

IdentifiersCVE-2013-3900CWE-347· Improper Verification of…

CVE-2013-3900 is a remote code execution vulnerability in Microsoft Windows related to how the WinVerifyTrust function validates Authenticode signatures on portable executable (PE) files. The flaw arises because specially crafted modifications can be made to an existing signed PE file by abusing unverified portions of the file, particularly data appended in or around the certificate table / signature area, without invalidating the apparent digital signature. As described by Microsoft, an attacker can modify a legitimately signed executable and add malicious code while the file may still be treated as properly signed. Microsoft associated the issue with MS13-098 and later documented stricter verification through the EnableCertPaddingCheck registry setting, which remains opt-in rather than enforced by default on supported Windows versions.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation can allow execution of attacker-controlled code from a PE file that still appears validly signed, undermining trust decisions based on Authenticode verification. If the malicious file is run or installed, the attacker may gain the ability to execute arbitrary code and potentially take complete control of the affected system. Impact includes installation of programs, viewing/modifying/deleting data, and creation of accounts with the privileges of the current user; systems where the victim runs with administrative rights are at greatest risk. The vulnerability also enables bypass of trust-based controls that rely on signature validity or publisher trust.

Mitigation

If you can’t patch tonight, do this now.

Enable strict Authenticode padding checks via the EnableCertPaddingCheck registry setting under the Wintrust/Cryptography configuration paths documented by Microsoft, including 32-bit compatibility paths where relevant. Do not rely solely on Authenticode signature presence for trust decisions; supplement with application control policies based on hashes or other integrity mechanisms, reputation controls, and behavioral detection. Restrict execution of untrusted signed binaries, especially those delivered through email, archives, or web downloads, and inspect PE certificate-table anomalies or appended overlay data during malware triage.

Remediation

Patch, then assume compromise.

Apply Microsoft's security update guidance associated with MS13-098 where applicable, and enable the stricter Authenticode verification behavior by configuring the EnableCertPaddingCheck registry value as documented by Microsoft. Microsoft states that supported Windows 10 and Windows 11 releases already contain the supporting code, but the registry key must be explicitly set because stricter verification is not enabled by default. Validate deployment compatibility before broad rollout, as Microsoft historically kept this behavior opt-in due to potential impact on existing software.
PUBLIC EXPLOITS

Exploits

2 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos (11 hidden).

VALID 2 / 13 TOTALView more in app
CVE-2013-3900-PowerShell-PoCMaturityPoCVerified exploit

This repository is a small standalone PowerShell proof-of-concept for CVE-2013-3900, the Windows Authenticode certificate padding issue. It is not part of a larger exploit framework. The repository contains four files: the main PowerShell PoC, a README explaining the vulnerability and usage, a .reg remediation file that enables EnableCertPaddingCheck, and a license file. The main script, CVE-2013-3900-PoC-padding-injection.ps1, operates entirely locally on PE files. It takes an input executable, verifies that it has a valid embedded Authenticode signature, parses the PE header to locate DataDirectory[4] (the Certificate Table), reads the first WIN_CERTIFICATE structure, inserts attacker-controlled padding bytes into the certificate blob, updates the certificate length metadata, and writes out a modified executable. The default padding is 4096 bytes of 0x41. After modification, it checks the resulting file with both Get-AuthenticodeSignature and a direct P/Invoke call to WinVerifyTrust from wintrust.dll using the generic verification GUID. This lets the operator observe whether the host still trusts the tampered file under current policy. The exploit capability is therefore simulation and validation of the CVE-2013-3900 condition, not remote compromise or code execution. It demonstrates how a signed PE can be altered in its certificate area while potentially retaining a trusted status on systems where strict padding checks are disabled. The included remediation-64bit-win.reg file sets EnableCertPaddingCheck=1 in both native and Wow6432Node Wintrust registry paths, which causes modified files with extra certificate padding to be rejected. There are no network callbacks, C2 endpoints, or remote targets in the code. The only fingerprintable artifacts are local file paths, the Wintrust DLL/API usage, the verification GUID, and the registry keys used for remediation. Overall, this is a legitimate educational PoC and local test harness for assessing whether a Windows system remains susceptible to the Authenticode padding behavior associated with CVE-2013-3900.

norvethilDisclosed Aug 18, 2025powershellmarkdownlocalfile
CVE-2013-3900-PowerShell-PoCMaturityPoCVerified exploit

This repository provides a PowerShell proof-of-concept (PoC) exploit for CVE-2013-3900, a vulnerability in the Windows Authenticode signature validation process. The main script, 'CVE-2013-3900-PoC-padding-injection.ps1', takes a signed PE file (by default, MSBuild.exe), injects artificial padding into its certificate section, and saves a modified copy. It then checks the digital signature status of both the original and modified files using Authenticode and the WinVerifyTrust API, demonstrating whether the system accepts or rejects the altered file. The exploit shows that, on unpatched systems, the signature remains valid even after modification, highlighting the risk of malicious code injection into signed binaries. The repository also includes a registry file ('remediation-64bit-win.reg') to enable the mitigation (EnableCertPaddingCheck=1), which causes Windows to reject such tampered files. The README provides context, usage instructions, and a link to the official Microsoft advisory. The repository is structured for educational and research purposes, with clear separation between the exploit script, documentation, and mitigation instructions.

PREN0MENDisclosed Aug 18, 2025powershellreglocal
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
Microsoft CorporationWindows 10 1507operating_system
Microsoft CorporationWindows 10 1607operating_system
Microsoft CorporationWindows 10 1809operating_system
Microsoft CorporationWindows 10 1909operating_system
Microsoft CorporationWindows 10 20h2operating_system
Microsoft CorporationWindows 10 21h1operating_system
Microsoft CorporationWindows 10 21h2operating_system
Microsoft CorporationWindows 10 22h2operating_system
Microsoft CorporationWindows 11 21h2operating_system
Microsoft CorporationWindows 11 22h2operating_system
Microsoft CorporationWindows 11 23h2operating_system
Microsoft CorporationWindows 11 24h2operating_system
Microsoft CorporationWindows 7operating_system
Microsoft CorporationWindows 8.1operating_system
Microsoft CorporationWindows Rt 8.1operating_system
Microsoft CorporationWindows Server 2008operating_system
Microsoft CorporationWindows Server 2008 R2operating_system
Microsoft CorporationWindows Server 2008 Sp2operating_system
Microsoft CorporationWindows Server 2012operating_system
Microsoft CorporationWindows Server 2012 R2operating_system
Microsoft CorporationWindows Server 2016operating_system
Microsoft CorporationWindows Server 2019operating_system
Microsoft CorporationWindows Server 2022operating_system
Microsoft CorporationWindows Server 2022 23h2operating_system
Microsoft CorporationWindows Server 2025operating_system
Microsoft CorporationWindows Server 23h2operating_system

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

ACTIVITY FEED

Recent activity

4 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.

codebyNews
Jun 11, 2026
Детальный разбор цифровых подписей РЕ-файлов

A Windows Authenticode/WinVerifyTrust signature validation flaw that can allow extra data to be appended to a signed PE file without invalidating the signature unless stricter certificate padding checks are enabled.

Read more
alyac blogNews
Jun 1, 2026
디지털 서명 검증을 우회하는 MS Word 변조 악성코드 주의 (CVE-2013-3900)

Windows Authenticode 검증의 구조적 특성을 악용해 PE 파일의 인증서 테이블 뒤에 임의 데이터를 삽입해도 디지털 서명이 유효하게 유지되도록 만드는 취약점으로, 신뢰 기반 보안 통제를 우회하는 데 사용된다.

Read more
trend micro researchNews
Nov 19, 2024
Spot the Difference: Earth Kasha's New LODEINFO Campaign And The Correlation Analysis With The APT10 Umbrella

A vulnerability in Windows that allows attackers to embed malicious payloads in digital signatures, used for DLL side-loading and stealthy malware delivery (e.g., LODEINFO, NOOPDOOR).

Read more
checkpoint research blogNews
Jan 5, 2022
Can You Trust a File’s Digital Signature? New Zloader Campaign exploits Microsoft’s Signature Verification putting users at risk - Check Point Research

A weakness in Windows Authenticode/WinVerifyTrust signature verification that can allow a PE file to retain a valid Microsoft signature even after data is appended/modified in the signature section (certificate padding). In the described Zloader chain, attackers append script content to a signed DLL and execute it via mshta.exe to evade defenses.

Read more
What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware1

Malware families riding this exploit, with evidence and IOCs.

Detection signatures1

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity

Community discussion across Reddit, Mastodon, and other social sources.