Description
gdi32.dll in Graphics Device Interface (GDI) in Microsoft Windows Vista SP2, Windows Server 2008 SP2 and R2 SP1, Windows 7 SP1, Windows 8.1, Windows Server 2012 Gold and R2, Windows RT 8.1, and Windows 10 Gold, 1511, and 1607 allows remote attackers to obtain sensitive information from process heap memory via a crafted EMF file, as demonstrated by an EMR_SETDIBITSTODEVICE record with modified Device Independent Bitmap (DIB) dimensions. NOTE: this vulnerability exists because of an incomplete fix for CVE-2016-3216, CVE-2016-3219, and/or CVE-2016-3220.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Microsoft | Windows Graphics Component | The Graphics Device Interface (GDI) component in Microsoft Windows Vista SP2; Windows Server 2008 SP2 and R2 SP1; Windows 7 SP1; Windows 8.1; Windows Server 2012 Gold and R2; Windows RT 8.1; and Windows 10 Gold, 1511, and 1607 | — |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
Exploit-DB 1
- Microsoft Windows - 'gdi32.dll' EMR_SETDIBITSTODEVICE Heap Out-of-Bounds Reads / Memory Disclosure EDB-41363 · dos · Feb 15, 2017 · verified
GitHub 1 repository
-
k0keoyo/CVE-2017-0038-EXP-C-JS ★ 6 · Mar 22, 2017
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
References
- https://bugs.chromium.org/p/project-zero/issues/detail?id=992
- https://portal.msrc.microsoft.com/en-US/security-guidance/advisory/CVE-2017-0038
- https://0patch.blogspot.com/2017/02/0patching-0-day-windows-gdi32dll-memory.html
- 1037845 vdb-entry
- 96023 vdb-entry
- https://github.com/k0keoyo/CVE-2017-0038-EXP-C-JS
- 41363 exploit