CVE DatabaseCVE-2016-3235
한국어 권고문 →
CVE-2016-32357.8/HIGHCISA KEV

Microsoft Visio OLE DLL Side Loading Local Privilege Escalation Vulnerability (CVE-2016-3235, MS16-070)

⚡ Jump to Patch
Affected Vendors
microsoft
Affected Components
visio, visio_viewer
Published Date
2016-06-16
CVSS v3.1
7.8
HIGH
EPSS (30d)
43.3%
FIRST.org
CISA KEV
Exploited

Executive & SecOps Summary

SECOPS ASSESSMENT
Affected Scope

Microsoft Visio 2007 SP3, 2010 SP2, 2013 SP1, 2016, and Visio Viewer 2007/2010

Impact

Local attackers can execute arbitrary code and escalate privileges by tricking a user into opening a Visio file from a directory containing a malicious DLL

Mitigation

Apply the official Microsoft MS16-070 security update and restrict insecure DLL search paths via registry modifications

Affected Products & Version Scope

Microsoft Visio 2007 Service Pack 3, Visio 2010 Service Pack 2, Visio 2013 Service Pack 1, Visio 2016, Visio Viewer 2007 Service Pack 3, Visio Viewer 2010

Remediation & Live Workaround Commands

PATCH & WORKAROUND

1. Official Patch & Version Upgrade Commands

Deploy the official MS16-070 security updates. For enterprise environments, use WSUS or SCCM. For individual systems, you can force the installation of the required KBs using PowerShell:

powershell
# Install PSWindowsUpdate module and apply MS16-070 related KBs
Install-Module -Name PSWindowsUpdate -Force -SkipPublisherCheck
Get-WindowsUpdate -KBArticleID KB3115141, KB3115181, KB3115226 -AcceptAll -Install

2. Temporary Workaround & Hardening Configuration

If immediate patching is not feasible, mitigate the risk by configuring the CWDIllegalInDllSearch registry key to restrict DLL loading from the Current Working Directory (CWD).

powershell
# Restrict DLL search path to exclude the Current Working Directory (CWD)
New-Item -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager' -Name 'CWDIllegalInDllSearch' -Force
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager' -Name 'CWDIllegalInDllSearch' -Value 2 -Type DWord

3. Log Audit & IoC Verification Commands

Run the following script to scan common user directories for suspicious DLLs residing alongside Visio files, which is a strong indicator of a side-loading attempt.

powershell
# Scan the Downloads directory for DLLs co-located with Visio files
$TargetDir = '$env:USERPROFILE\Downloads'
Get-ChildItem -Path $TargetDir -Filter *.dll -Recurse | ForEach-Object {
    $ParentDir = $_.DirectoryName
    $HasVisio = Get-ChildItem -Path $ParentDir -Filter *.vsd*
    if ($HasVisio) {
        Write-Warning 'Suspicious DLL detected alongside Visio file: ' + $_.FullName
    }
}
Interactive SecOps Remediation Checklist
0/4 (0%)
Recommended Security Control & Mitigation Partner
SentinelOne Singularity AI EDR
Due to active exploitation in the wild, immediately apply the MS16-070 security update and enforce DLL search path restrictions.

Block Kernel Privilege Escalation & Ransomware Payloads Before You Can Reboot

Protect unpatched Windows, Linux, and macOS workloads against in-memory exploitation and lateral movement with autonomous EDR.

100% MITRE ATT&CK Detection · 1-Click Rollback

Technical Root Cause & Exploitation Mechanics

1. Vulnerability Overview & Root Cause

This vulnerability (CVE-2016-3235) exists in Microsoft Visio and Visio Viewer due to an insecure library loading mechanism when handling Object Linking and Embedding (OLE) objects. The application fails to validate the absolute path of required dynamic link libraries (DLLs) and prioritizes the Current Working Directory (CWD) during the resolution process. This design flaw allows an attacker to perform a 'DLL Side-Loading' or 'DLL Hijacking' attack by placing a crafted DLL in the directory from which the application is launched.

2. Exploitation Mechanics & Attack Scenario

An attacker crafts a malicious DLL and names it after a legitimate library that Visio attempts to load (e.g., mfc42u.dll). The attacker then packages this malicious DLL in the same directory as a legitimate Visio document (.vsd or .vsdx) and distributes it via social engineering (e.g., compressed archives, network shares, or USB drives). When the victim opens the Visio file, the application searches the current directory first, loading and executing the malicious DLL under the security context of the logged-in user, bypassing standard security controls.

3. Infrastructure & Business Impact

As a vulnerability listed in the CISA KEV catalog, CVE-2016-3235 has been actively exploited in the wild. Successful exploitation allows attackers to establish an initial foothold on the endpoint. In corporate environments where Visio diagrams are frequently shared among engineering, architecture, and IT teams, this vulnerability poses a severe threat, potentially leading to lateral movement, credential theft, and full domain compromise.

Official Vendor Advisories & References

Frequently Asked SecOps Questions (CVE-2016-3235)

FAQ

Q1. How critical is CVE-2016-3235 and is it actively exploited in the wild?

CVE-2016-3235 is rated CVSS 7.8 (HIGH) with a 30-day EPSS exploitation probability of 43.3%. It is listed in the CISA Known Exploited Vulnerabilities (KEV) catalog, requiring immediate emergency remediation.

Q2. Which vendors and products are affected by CVE-2016-3235?

Primary impacted vendors include microsoft across visio, visio_viewer. Scope summary: Microsoft Visio 2007 Service Pack 3, Visio 2010 Service Pack 2, Visio 2013 Service Pack 1, Visio 2016, Visio Viewer 2007 Service Pack 3, Visio Viewer 2010

Q3. What temporary mitigations or workarounds exist for CVE-2016-3235 before patching?

[Mitigation] Apply the official Microsoft MS16-070 security update and restrict insecure DLL search paths via registry modifications Follow the CLI remediation commands and interactive SecOps checklist on this page to restrict exposure prior to your maintenance window.

SECOPS WORKBENCH INTEGRATION

Generate an Internal Engineering Notice or CISO Report for CVE-2016-3235

Instantly format this advisory into an executive CISO summary or engineering patch ticket.

Generate Report →

🔗 Related Advisories in Similar Stack (microsoft)

View Category →
SecOps Advisory Dispatch & RSS Feed

Subscribe to Daily Vulnerability Briefings & KEV Alerts

Concise morning briefings for SecOps, DevSecOps, and SRE teams covering newly exploited CVEs and mitigation priorities.

Slack / Teams / RSS Feed:
PatchKO
CVE-2016-3235 Microsoft Visio OLE DLL Side Loading Local Privilege Escalation Vulnerability (CVE-2016-3235, MS16-070) (CVSS 7.8) - Patch & Workaround | CVE Pulse