CVE DatabaseCVE-2020-1147
한국어 권고문 →
CVE-2020-11477.8/HIGHCISA KEV

Microsoft .NET Framework, SharePoint, and Visual Studio XML Deserialization Remote Code Execution Vulnerability (CVE-2020-1147)

⚡ Jump to Patch
Affected Vendors
microsoft
Affected Components
.net framework, sharepoint server, visual studio
Published Date
2020-07-14
CVSS v3.1
7.8
HIGH
EPSS (30d)
95.8%
FIRST.org
CISA KEV
Exploited

Executive & SecOps Summary

SECOPS ASSESSMENT
Affected Scope

Unpatched installations of .NET Framework, Microsoft SharePoint Server, and Visual Studio

Impact

Remote attackers can execute arbitrary code (RCE) with high privileges by sending a specially crafted XML payload to vulnerable endpoints

Mitigation

Apply the official Microsoft security updates immediately and restrict untrusted XML deserialization using DataSet/DataTable

Affected Products & Version Scope

.NET Framework 2.0 SP2 through 4.8, Microsoft SharePoint Server 2013/2016/2019, and Visual Studio 2012 through 2019 without the July 2020 security updates

Remediation & Live Workaround Commands

PATCH & WORKAROUND

1. Official Patch & Version Upgrade Commands

The primary remediation is to apply the official Microsoft security updates. Use the following PowerShell commands to force Windows Update to retrieve and install the latest cumulative updates for .NET Framework and SharePoint.

powershell
# Install Windows Update module and apply all pending security patches
Install-Module PSWindowsUpdate -Force -Verbose
Get-WindowsUpdate -Category 'Security Updates' -AcceptAll -Install -AutoReboot

2. Temporary Workaround & Hardening Configuration

If immediate patching is not feasible, deploy Web Application Firewall (WAF) rules to block incoming XML payloads containing serialized DataSet or DataTable structures. Below is an Nginx configuration snippet to block suspicious XML payloads.

nginx
# Block malicious XML deserialization payloads at the reverse proxy level
server {
    listen 443 ssl;
    server_name sharepoint.company.com;

    location / {
        # Block requests containing common .NET deserialization gadget indicators
        if ($request_body ~* '(System.Data.DataSet|System.Data.DataTable|TypeSerializer)') {
            return 403 'Access Denied: Malicious XML Payload Detected';
        }
        proxy_pass http://sharepoint_backend;
    }
}

3. Log Audit & IoC Verification Commands

Run the following PowerShell script to verify the installed .NET Framework version and inspect IIS logs for potential exploitation attempts.

powershell
# Check the installed .NET Framework release version
Get-ItemProperty -Path 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full' | Select-Object Release, Version

# Search IIS log files for suspicious DataSet/DataTable references in requests
Select-String -Path 'C:\inetpub\logs\LogFiles\W3SVC1\*.log' -Pattern 'DataSet' -Context 0, 2
Interactive SecOps Remediation Checklist
0/4 (0%)
Recommended Security Control & Mitigation Partner
Cloudflare Enterprise & Pro WAF
Due to active exploitation in the wild (CISA KEV), immediately apply the July 2020 Microsoft Security Updates to all affected systems.

Block Exploits Instantly with Managed Virtual Patching Rules

Can't patch production immediately? Deploy managed WAF rules at the edge to intercept RCE, SQLi, and deserialization payloads before they hit your origin server.

3-min setup · Automated Zero-Day Managed Rules
Practice Exploiting & Patching This Web Vulnerability in an Interactive Lab
Launch Hands-On Security Lab

Technical Root Cause & Exploitation Mechanics

1. Vulnerability Overview & Root Cause

A remote code execution vulnerability exists in .NET Framework, Microsoft SharePoint, and Visual Studio due to a failure to properly validate the source markup of XML file inputs. Specifically, the System.Data.DataSet and System.Data.DataTable classes in .NET utilize internal XML parsing mechanisms (such as ReadXml) that are susceptible to insecure deserialization. When processing untrusted XML schemas, the application can be coerced into instantiating arbitrary object types, leading to unexpected code execution in the context of the running process.

2. Exploitation Mechanics & Attack Scenario

An attacker exploits this vulnerability by submitting a crafted XML payload containing serialized objects designed to trigger a specific gadget chain during deserialization. When the target application parses this XML via vulnerable .NET APIs, the deserializer instantiates the malicious payload, executing arbitrary system commands or loading unauthorized DLLs. Public exploits demonstrate that this can be achieved remotely against SharePoint web parts or custom .NET web applications without requiring high-level administrative privileges.

3. Infrastructure & Business Impact

This vulnerability is highly critical, as evidenced by its inclusion in the CISA KEV catalog and an EPSS score of 0.958 (95.8%). Successful exploitation grants the attacker full control over the affected SharePoint or web application server. This can lead to lateral movement within the corporate network, sensitive data exfiltration, ransomware deployment, and severe operational disruption.

Official Vendor Advisories & References

Frequently Asked SecOps Questions (CVE-2020-1147)

FAQ

Q1. How critical is CVE-2020-1147 and is it actively exploited in the wild?

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

Q2. Which vendors and products are affected by CVE-2020-1147?

Primary impacted vendors include microsoft across .net framework, sharepoint server, visual studio. Scope summary: .NET Framework 2.0 SP2 through 4.8, Microsoft SharePoint Server 2013/2016/2019, and Visual Studio 2012 through 2019 without the July 2020 security updates

Q3. What temporary mitigations or workarounds exist for CVE-2020-1147 before patching?

[Mitigation] Apply the official Microsoft security updates immediately and restrict untrusted XML deserialization using DataSet/DataTable 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-2020-1147

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-2020-1147 Microsoft .NET Framework, SharePoint, and Visual Studio XML Deserialization Remote Code Execution Vulnerability (CVE-2020-1147) (CVSS 7.8) - Patch & Workaround | CVE Pulse