The SentinelOne Annual Threat Report - A Defenders Guide from the FrontlinesThe SentinelOne Annual Threat ReportGet the Report
Experiencing a Breach?Blog
Get StartedContact Us
SentinelOne
  • Platform
    Platform Overview
    • Singularity Platform
      Welcome to Integrated Enterprise Security
    • AI for Security
      Leading the Way in AI-Powered Security Solutions
    • Securing AI
      Accelerate AI Adoption with Secure AI Tools, Apps, and Agents.
    • How It Works
      The Singularity XDR Difference
    • Singularity Marketplace
      One-Click Integrations to Unlock the Power of XDR
    • Pricing & Packaging
      Comparisons and Guidance at a Glance
    Data & AI
    • Purple AI
      Accelerate SecOps with Generative AI
    • Singularity Hyperautomation
      Easily Automate Security Processes
    • AI-SIEM
      The AI SIEM for the Autonomous SOC
    • Singularity Data Lake
      AI-Powered, Unified Data Lake
    • Singularity Data Lake for Log Analytics
      Seamlessly Ingest Data from On-Prem, Cloud or Hybrid Environments
    Endpoint Security
    • Singularity Endpoint
      Autonomous Prevention, Detection, and Response
    • Singularity XDR
      Native & Open Protection, Detection, and Response
    • Singularity RemoteOps Forensics
      Orchestrate Forensics at Scale
    • Singularity Threat Intelligence
      Comprehensive Adversary Intelligence
    • Singularity Vulnerability Management
      Application & OS Vulnerability Management
    • Singularity Identity
      Identity Threat Detection and Response
    Cloud Security
    • Singularity Cloud Security
      Block Attacks with an AI-Powered CNAPP
    • Singularity Cloud Native Security
      Secure Cloud and Development Resources
    • Singularity Cloud Workload Security
      Real-Time Cloud Workload Protection Platform
    • Singularity Cloud Data Security
      AI-Powered Threat Detection for Cloud Storage
    • Singularity Cloud Security Posture Management
      Detect and Remediate Cloud Misconfigurations
    Securing AI
    • Prompt Security
      Secure AI Tools Across Your Enterprise
  • Why SentinelOne?
    Why SentinelOne?
    • Why SentinelOne?
      Cybersecurity Built for What’s Next
    • Our Customers
      Trusted by the World’s Leading Enterprises
    • Industry Recognition
      Tested and Proven by the Experts
    • About Us
      The Industry Leader in Autonomous Cybersecurity
    Compare SentinelOne
    • Arctic Wolf
    • Broadcom
    • CrowdStrike
    • Cybereason
    • Microsoft
    • Palo Alto Networks
    • Sophos
    • Splunk
    • Trellix
    • Trend Micro
    • Wiz
    Verticals
    • Energy
    • Federal Government
    • Finance
    • Healthcare
    • Higher Education
    • K-12 Education
    • Manufacturing
    • Retail
    • State and Local Government
  • Services
    Managed Services
    • Managed Services Overview
      Wayfinder Threat Detection & Response
    • Threat Hunting
      World-Class Expertise and Threat Intelligence
    • Managed Detection & Response
      24/7/365 Expert MDR Across Your Entire Environment
    • Incident Readiness & Response
      DFIR, Breach Readiness, & Compromise Assessments
    Support, Deployment, & Health
    • Technical Account Management
      Customer Success with Personalized Service
    • SentinelOne GO
      Guided Onboarding & Deployment Advisory
    • SentinelOne University
      Live and On-Demand Training
    • Services Overview
      Comprehensive Solutions for Seamless Security Operations
    • SentinelOne Community
      Community Login
  • Partners
    Our Network
    • MSSP Partners
      Succeed Faster with SentinelOne
    • Singularity Marketplace
      Extend the Power of S1 Technology
    • Cyber Risk Partners
      Enlist Pro Response and Advisory Teams
    • Technology Alliances
      Integrated, Enterprise-Scale Solutions
    • SentinelOne for AWS
      Hosted in AWS Regions Around the World
    • Channel Partners
      Deliver the Right Solutions, Together
    • SentinelOne for Google Cloud
      Unified, Autonomous Security Giving Defenders the Advantage at Global Scale
    • Partner Locator
      Your Go-to Source for Our Top Partners in Your Region
    Partner Portal→
  • Resources
    Resource Center
    • Case Studies
    • Data Sheets
    • eBooks
    • Reports
    • Videos
    • Webinars
    • Whitepapers
    • Events
    View All Resources→
    Blog
    • Feature Spotlight
    • For CISO/CIO
    • From the Front Lines
    • Identity
    • Cloud
    • macOS
    • SentinelOne Blog
    Blog→
    Tech Resources
    • SentinelLABS
    • Ransomware Anthology
    • Cybersecurity 101
  • About
    About SentinelOne
    • About SentinelOne
      The Industry Leader in Cybersecurity
    • Investor Relations
      Financial Information & Events
    • SentinelLABS
      Threat Research for the Modern Threat Hunter
    • Careers
      The Latest Job Opportunities
    • Press & News
      Company Announcements
    • Cybersecurity Blog
      The Latest Cybersecurity Threats, News, & More
    • FAQ
      Get Answers to Our Most Frequently Asked Questions
    • DataSet
      The Live Data Platform
    • S Foundation
      Securing a Safer Future for All
    • S Ventures
      Investing in the Next Generation of Security, Data and AI
  • Pricing
Get StartedContact Us
CVE Vulnerability Database
Vulnerability Database/CVE-2020-27619

CVE-2020-27619: Python RCE Vulnerability via eval()

CVE-2020-27619 is a remote code execution vulnerability in Python 3 through 3.9.0 where CJK codec tests call eval() on HTTP-retrieved content. This post covers technical details, affected versions, impact, and mitigation.

Published: March 11, 2026

CVE-2020-27619 Overview

In Python 3 through 3.9.0, the Lib/test/multibytecodec_support.py CJK codec tests call eval() on content retrieved via HTTP. This vulnerability allows remote code execution when an attacker can control or intercept the HTTP response that the test module fetches, enabling arbitrary Python code execution within the context of the running Python process.

Critical Impact

An attacker who can perform a man-in-the-middle attack or compromise the remote server providing test data can execute arbitrary code on systems running the affected CJK codec tests.

Affected Products

  • Python 3.x through 3.9.0
  • Fedora 33 and 34
  • Oracle Communications Cloud Native Core Network Function Cloud Native Environment 22.2.0

Discovery Timeline

  • 2020-10-22 - CVE CVE-2020-27619 published to NVD
  • 2024-11-21 - Last updated in NVD database

Technical Details for CVE-2020-27619

Vulnerability Analysis

This vulnerability represents a classic code injection flaw resulting from the unsafe use of Python's eval() function on untrusted data retrieved over an insecure HTTP connection. The Lib/test/multibytecodec_support.py module, which is part of Python's standard library test suite for CJK (Chinese, Japanese, Korean) multibyte character codecs, fetches test data from remote HTTP sources and directly passes this content to eval() without any validation or sanitization.

The attack surface exists because the test infrastructure retrieves codec test data over plaintext HTTP, making it susceptible to network-based attacks. An adversary positioned to intercept or modify network traffic could inject malicious Python code that would be executed when the test suite processes the response.

Root Cause

The root cause is the direct invocation of Python's eval() function on data retrieved from an external HTTP source without proper input validation. The eval() function executes arbitrary Python expressions, and when combined with untrusted input from a network source, it creates a remote code execution vector. The test module implicitly trusted that the HTTP response would contain only legitimate test data, failing to implement any integrity verification or input sanitization.

Attack Vector

The vulnerability is exploitable over the network when an attacker can intercept or manipulate HTTP traffic between the vulnerable Python instance and the remote server providing test data. This could be achieved through:

  • Man-in-the-middle attacks on the same network segment
  • DNS spoofing to redirect requests to attacker-controlled servers
  • Compromise of the legitimate remote server hosting test data
  • ARP spoofing or BGP hijacking for traffic interception

When a user runs the CJK codec tests, the test module fetches data via HTTP. If an attacker controls this response, they can inject arbitrary Python code that will be executed with the privileges of the Python process.

Detection Methods for CVE-2020-27619

Indicators of Compromise

  • Unusual outbound HTTP connections from Python test processes to unexpected destinations
  • Unexpected process spawning from Python interpreter sessions running codec tests
  • Network traffic containing Python code syntax in HTTP responses to test infrastructure
  • File system modifications or network connections initiated by multibytecodec_support.py processes

Detection Strategies

  • Monitor for execution of Python test modules, particularly multibytecodec_support.py, in production environments where such tests should not normally run
  • Implement network monitoring to detect plaintext HTTP requests originating from Python processes to external hosts
  • Use application-level logging to track eval() function calls with data originating from network sources
  • Deploy endpoint detection rules to identify suspicious child processes spawned by Python interpreter instances

Monitoring Recommendations

  • Configure SentinelOne to monitor for unusual Python process behavior and unexpected network connections during test execution
  • Implement network segmentation and monitoring for systems that may execute Python test suites
  • Review logs for HTTP traffic patterns associated with Python's test infrastructure
  • Establish baseline behavior for Python processes and alert on deviations indicative of code injection

How to Mitigate CVE-2020-27619

Immediate Actions Required

  • Upgrade Python to a patched version that addresses this vulnerability in the CJK codec test module
  • Avoid running Python's standard library test suite on production systems or systems exposed to untrusted networks
  • Implement network controls to prevent plaintext HTTP connections from Python processes to external servers
  • Consider disabling or removing the Lib/test/ directory from production Python installations

Patch Information

The Python development team has released fixes for this vulnerability across multiple branches. The official patches modify the test infrastructure to eliminate the unsafe eval() call on HTTP-retrieved content.

Relevant patches are available in the following commits:

  • GitHub CPython Commit #2ef5caa
  • GitHub CPython Commit #43e5231
  • GitHub CPython Commit #6c6c256
  • GitHub CPython Commit #b664a1d
  • GitHub CPython Commit #e912e94

For additional context, refer to the Python Issue Tracker Entry and the Oracle Security Alert July 2022.

Workarounds

  • Remove or rename the Lib/test/multibytecodec_support.py file from Python installations if the CJK codec tests are not required
  • Block outbound HTTP connections from systems running Python test suites using firewall rules
  • Use network proxies with content inspection to prevent malicious payloads in HTTP responses
  • Run Python tests only in isolated environments without network access to untrusted sources
bash
# Example: Remove test files from production Python installation
sudo rm -f /usr/lib/python3*/test/multibytecodec_support.py
# Or restrict network access for Python test processes
iptables -A OUTPUT -m owner --cmd-owner python -p tcp --dport 80 -j DROP

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

  • Vulnerability Details
  • TypeRCE

  • Vendor/TechPython

  • SeverityCRITICAL

  • CVSS Score9.8

  • EPSS Probability0.85%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityHigh
  • CWE References
  • NVD-CWE-noinfo
  • Technical References
  • Apache BookKeeper Thread Discussion

  • Apache BookKeeper Thread Discussion

  • Apache Mina Thread Discussion

  • Fedora Package Announcement

  • Fedora Package Announcement

  • Gentoo GLSA 202402-04

  • NetApp Security Advisory #ntap-20201123-0004
  • Vendor Resources
  • Python Issue Tracker Entry

  • GitHub CPython Commit #2ef5caa

  • GitHub CPython Commit #43e5231

  • GitHub CPython Commit #6c6c256

  • GitHub CPython Commit #b664a1d

  • GitHub CPython Commit #e912e94

  • Oracle Security Alert July 2022
  • Related CVEs
  • CVE-2025-15366: Python imaplib Module RCE Vulnerability

  • CVE-2021-3177: Python Buffer Overflow RCE Vulnerability

  • CVE-2024-9287: Python venv RCE Vulnerability

  • CVE-2020-15801: Python 3.8.4 RCE Vulnerability
Experience the World’s Most Advanced Cybersecurity Platform

Experience the World’s Most Advanced Cybersecurity Platform

See how our intelligent, autonomous cybersecurity platform can protect your organization now and into the future.

Try SentinelOne
  • Get Started
  • Get a Demo
  • Product Tour
  • Why SentinelOne
  • Pricing & Packaging
  • FAQ
  • Contact
  • Contact Us
  • Customer Support
  • SentinelOne Status
  • Language
  • Platform
  • Singularity Platform
  • Singularity Endpoint
  • Singularity Cloud
  • Singularity AI-SIEM
  • Singularity Identity
  • Singularity Marketplace
  • Purple AI
  • Services
  • Wayfinder TDR
  • SentinelOne GO
  • Technical Account Management
  • Support Services
  • Verticals
  • Energy
  • Federal Government
  • Finance
  • Healthcare
  • Higher Education
  • K-12 Education
  • Manufacturing
  • Retail
  • State and Local Government
  • Cybersecurity for SMB
  • Resources
  • Blog
  • Labs
  • Case Studies
  • Videos
  • Product Tours
  • Events
  • Cybersecurity 101
  • eBooks
  • Webinars
  • Whitepapers
  • Press
  • News
  • Ransomware Anthology
  • Company
  • About Us
  • Our Customers
  • Careers
  • Partners
  • Legal & Compliance
  • Security & Compliance
  • Investor Relations
  • S Foundation
  • S Ventures

©2026 SentinelOne, All Rights Reserved.

Privacy Notice Terms of Use

English