What is GDI?
The Windows Graphics Device Interface (GDI) is a legacy but still heavily used API for rendering graphics, text, and images — used internally by Windows itself as well as by Office applications, PDF readers, and countless line-of-business tools whenever they draw text, images, or metafiles. Because GDI routinely parses image and font data that can originate from untrusted documents or web content, it has long been a rich source of memory-corruption vulnerabilities reachable simply by opening a file.
Overview
CVE-2019-0903 is a High-severity remote code execution vulnerability in Windows GDI caused by improper handling of objects in memory. An attacker who convinced a victim to open a specially crafted document, or to visit a page hosting malicious content processed by GDI, could execute arbitrary code with the privileges of the current user. Microsoft fixed it in the May 2019 Patch Tuesday update.
Technical Details
The flaw is a memory-corruption bug in GDI's object-handling routines, most plausibly a use-after-free or out-of-bounds condition triggered while parsing a crafted image, font, or metafile object. Exploitation requires the victim to open a malicious file or interact with malicious content (CVSS user interaction: Required) but no prior privileges, and grants full confidentiality, integrity, and availability impact through code execution in the current user's context — a common entry point for document-based malware delivery.
Discovery
Fixed through Microsoft's routine internal security review as part of the May 2019 Patch Tuesday cycle; no external researcher has been broadly credited publicly for this specific finding.
Exploitation Context
CISA's KEV catalog confirms this vulnerability has been exploited in the wild. GDI memory-corruption bugs have historically been popular in document-based phishing campaigns (malicious Office attachments, embedded images, or crafted fonts) because they provide a reliable initial code-execution vector that doesn't rely on macros, which are increasingly blocked or flagged by default in modern Office configurations.
Remediation
- Apply the May 2019 Patch Tuesday cumulative update (or any later update) for the affected Windows version.
- Enable Protected View and disable automatic preview of untrusted documents in Office and other GDI-consuming applications.
- Deploy Attack Surface Reduction rules to block Office applications from creating child processes or injecting code.
- Filter email attachments and downloads through a gateway capable of detonating and inspecting untrusted documents.
- Monitor endpoint logs for anomalous process spawning from document viewers, a common indicator of successful exploitation.
Key Details
| Property | Value |
|---|---|
| CVE ID | CVE-2019-0903 |
| Vendor / Product | Microsoft — Graphics Device Interface (GDI) |
| NVD Published | 2019-05-16 |
| NVD Last Modified | 2025-10-29 |
| CVSS 3.1 Score | 8.8 |
| CVSS 3.1 Vector | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H |
| Severity | HIGH |
| CISA KEV Added | 2022-03-25 |
| CISA KEV Deadline | 2022-04-15 |
| Known Ransomware Use | No |
CVSS 3.1 Breakdown
Required Action
Timeline
| Date | Event |
|---|---|
| 2019-05-14 | Fixed as part of Microsoft's May 2019 Patch Tuesday release |
| 2022-03-25 | Added to CISA Known Exploited Vulnerabilities catalog |
| 2022-04-15 | CISA BOD 22-01 remediation deadline |
References
| Resource | Type |
|---|---|
| NVD — CVE-2019-0903 | Vulnerability Database |
| CISA KEV Catalog Entry | US Government |