CVE-2016-3309
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedThe kernel-mode drivers 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 allow local users to gain privileges via a crafted application, aka "Win32k Elevation of Privilege Vulnerability," a different vulnerability than CVE-2016-3308, CVE-2016-3310, and CVE-2016-3311.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceA local privilege escalation vulnerability exists in the Win32k.sys kernel-mode driver across multiple Windows versions (Vista SP2 through Windows 10 1607). The vulnerability allows a local authenticated user to execute arbitrary code with elevated (system) privileges by exploiting improper handling of objects in kernel mode through a specially crafted application.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE dataall versionsall versionsall versionsall versionsall versionsall versionsall versions= r2all versions= r2CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Local
- Complexity
- Low
- Privileges
- Low
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- High
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Identify Windows version and build numberRun 'winver' or 'systeminfo | findstr /B /C:"OS Name" /C:"OS Version"' from command prompt. For Windows 10, also run 'winver' to get the build number.Affected if The installed version is any Windows 10 1507, 1511, or 1607; Windows 7 any version; Windows 8.1; Windows Rt 8.1; Windows Server 2008 any version or R2; Windows Server 2012 any version or R2.
-
Verify if MS16-101 security update is installedRun 'wmic qfe list' or check 'Windows Update > View update history' for security update KB3178465 (or KB3178466 for Server editions).Affected if The security update KB3178465/KB3178466 is NOT listed as installed.
-
Confirm presence of Win32k.sys driverCheck that the file C:\Windows\System32\win32k.sys exists. Run 'driverquery /v | findstr win32k' to verify the driver is loaded.Affected if The win32k.sys driver is present (standard on all affected Windows versions).
-
Assess local user access exposureReview local users and groups via 'net user' and 'net localgroup' to determine if untrusted or standard user accounts exist on the system.Affected if Untrusted or standard-user accounts have local access to the system.
A system is affected if it runs any affected Windows version listed, lacks the MS16-101 security update (KB3178465/KB3178466), and allows untrusted local users to log in.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scopedApply the relevant Microsoft security update (MS16-101) to patch the Win32k.sys driver on all affected systems. For systems where patching is not immediately possible, consider restricting local user permissions and deploying additional monitoring until patches can be applied.
For systems on Windows 10 1507/1511/1607, upgrade to a supported Windows 10 release (such as Windows 10 21H1 or later). For Windows 7/8.1 and Windows Server 2008/2012, migrate to Windows 10/11 or Windows Server 2016/2019/2022 as these older versions are end-of-life.
- Check the installed Windows version by running 'winver' in the Run dialog
- Open Windows Update by navigating to Settings > Update & Security > Windows Update
- Click 'Check for updates' to install any available security updates
- Alternatively, manually download and install the specific security update for CVE-2016-3309 from the Microsoft Security Update Guide (portal.msrc.microsoft.com)
- After patching, verify the win32k.sys driver version has been updated by checking the file version in C:\Windows\System32\drivers\win32k.sys
- Restart the system after applying the update
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation4.0 h
- Implementation8.0 h
- Testing4.0 h
- Review / QA2.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $5,120.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2016-3309 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2016-3309 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data