Microsoft Windows Kernel - Null Pointer Dereference with Window Station and Clipboard (MS15-061)
| Reporter | Title | Published | Views | Family All 13 |
|---|---|---|---|---|
| The vulnerability of the Windows operating system, which allows a perpetrator to increase their privileges or cause service failures | 20 Jan 201600:00 | – | bdu_fstec | |
| CVE-2015-1721 | 22 Sep 201500:00 | – | circl | |
| Microsoft Windows Kernel 'Win32k.sys' Null Pointer Reference Vulnerability | 10 Jun 201500:00 | – | cnvd | |
| CVE-2015-1721 | 10 Jun 201501:00 | – | cve | |
| CVE-2015-1721 | 10 Jun 201501:00 | – | cvelist | |
| EUVD-2015-1851 | 7 Oct 202500:30 | – | euvd | |
| KLA10599 Multiple vulnerabilities in Microsoft Products | 9 Jun 201500:00 | – | kaspersky | |
| CVE-2015-1721 | 10 Jun 201501:59 | – | nvd | |
| Microsoft Windows Kernel-Mode Driver Privilege Elevation Vulnerabilities (3057839) | 10 Jun 201500:00 | – | openvas | |
| Null pointer dereference | 10 Jun 201501:59 | – | prion |
10
Source: https://code.google.com/p/google-security-research/issues/detail?id=294
Platform: Win7 32-bit.
trigger.cpp should fire the issue, with a caveat
- PoC might NOT work if compiled as a debug build.
windbg.txt is a sample crash log.
Analysis from Nils:
---
please find attached a C trigger, windbg output and the minimised testcase of a null pointer issue (exploitable on Win 7 32-bit). The trigger also demonstrates that the null page can be mapped in user mode and accessed from kernel mode.
Quick analysis:
The trigger creates a new window station which is freed during the process clean up. Through the clipboard operations the window's last reference is hold by the clipboard which is freed during the clean up of the window station object. This will also result in destroying the window object at a time where _gptiCurrent (threadinfo) is already set to null. This is used in xxxDestroyWindow in multiple locations. Depending on the window type it is potentially possible to trigger different kinds of crashes, this one demonstrates a write to a chosen memory location:
win32k!HMChangeOwnerThread+0x40:
96979765 ff412c inc dword ptr [ecx+2Ch] ds:0023:bebebeea=????????
---
Proof of Concept:
https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/38274.zipData
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
22 Sep 2015 00:00Current
5.2Medium risk
Vulners AI Score5.2
CVSS 27.2
EPSS0.03296