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-2021-36221

CVE-2021-36221: Golang Go Race Condition Vulnerability

CVE-2021-36221 is a race condition vulnerability in Golang Go that can cause net/http/httputil ReverseProxy to panic. This article covers the technical details, affected versions, security impact, and mitigation.

Published: February 25, 2026

CVE-2021-36221 Overview

CVE-2021-36221 is a race condition vulnerability in Go's net/http/httputil package that affects the ReverseProxy component. The vulnerability exists in Go versions prior to 1.15.15 and in the 1.16.x series before 1.16.7. When exploited, this race condition can trigger an ErrAbortHandler abort, causing the ReverseProxy to panic and resulting in a denial of service condition.

The vulnerability stems from improper synchronization in concurrent request handling within the ReverseProxy implementation. When multiple goroutines interact with the proxy during request processing, particularly when an abort occurs, the race condition can be triggered, leading to application crashes.

Critical Impact

This vulnerability enables remote attackers to cause denial of service by triggering panic conditions in Go applications using the ReverseProxy component, potentially disrupting critical proxy and gateway services.

Affected Products

  • Golang Go (versions before 1.15.15 and 1.16.x before 1.16.7)
  • Fedora Linux (versions 33, 34, and 35)
  • Debian Linux (9.0)
  • Oracle TimesTen In-Memory Database
  • Siemens SCALANCE LPE9403 Firmware
  • Siemens SCALANCE LPE9403

Discovery Timeline

  • August 8, 2021 - CVE-2021-36221 published to NVD
  • November 21, 2024 - Last updated in NVD database

Technical Details for CVE-2021-36221

Vulnerability Analysis

This race condition vulnerability (CWE-362) exists within the net/http/httputil package's ReverseProxy implementation. The vulnerability occurs during concurrent request processing when the proxy handles multiple simultaneous connections and one of those connections triggers an abort condition.

The ReverseProxy component is widely used in Go applications to create API gateways, load balancers, and reverse proxy servers. When the race condition is triggered, the internal state of the proxy becomes inconsistent, leading to a panic when ErrAbortHandler is processed. This panic causes the entire Go application to crash unless proper recovery mechanisms are in place.

The network-based attack vector allows remote attackers to exploit this vulnerability without authentication by sending specially crafted requests designed to trigger the race condition. The attack requires precise timing to exploit the window of vulnerability, which introduces some complexity to successful exploitation.

Root Cause

The root cause of CVE-2021-36221 is a race condition in the synchronization logic of the ReverseProxy component within Go's standard library. Specifically, the vulnerability arises from inadequate locking or coordination between concurrent goroutines that handle incoming proxy requests.

When a request is aborted via ErrAbortHandler, the cleanup process may race with ongoing request processing in other goroutines, leading to access of shared resources in an inconsistent state. This Time-of-Check Time-of-Use (TOCTOU) style vulnerability causes the proxy to panic when it encounters unexpected state during abort handling.

Attack Vector

The attack exploits the network-accessible ReverseProxy component by sending concurrent HTTP requests designed to trigger the abort handler while other requests are actively being processed. An attacker can craft requests that:

  1. Initiate multiple simultaneous connections to the reverse proxy
  2. Trigger abort conditions on some connections while others are in-flight
  3. Exploit the race window during abort handler execution
  4. Cause the proxy to panic due to inconsistent internal state

The vulnerability manifests in the ReverseProxy.ServeHTTP method when handling the ErrAbortHandler condition. During normal operation, when a backend server connection is aborted, the proxy should gracefully handle the error. However, due to the race condition, concurrent access to shared state during this cleanup phase can cause a panic.

For detailed technical information about this vulnerability, refer to the Golang Announcement Thread and the Siemens Security Advisory SSA-222547.

Detection Methods for CVE-2021-36221

Indicators of Compromise

  • Unexpected application crashes or panics in Go applications using ReverseProxy
  • Log entries showing ErrAbortHandler errors followed by panic stack traces
  • Increased rate of HTTP 502 or 503 errors from proxy services
  • Sudden termination of reverse proxy processes without graceful shutdown

Detection Strategies

  • Monitor application logs for panic messages originating from net/http/httputil package
  • Implement process monitoring to detect unexpected restarts of Go-based proxy services
  • Deploy network monitoring to identify unusual patterns of rapid connection establishment and abortion
  • Use application performance monitoring (APM) tools to track goroutine behavior and identify race conditions

Monitoring Recommendations

  • Configure alerting on process crashes for services using Go's ReverseProxy
  • Implement health checks with appropriate timeout thresholds for proxy endpoints
  • Monitor system metrics for unexpected CPU or memory patterns indicating crash loops
  • Review network flow data for anomalous connection patterns targeting proxy services

How to Mitigate CVE-2021-36221

Immediate Actions Required

  • Upgrade Go to version 1.15.15 or later for the 1.15.x branch
  • Upgrade Go to version 1.16.7 or later for the 1.16.x branch
  • Identify all applications using net/http/httputil.ReverseProxy in your environment
  • Prioritize patching for internet-facing proxy services

Patch Information

The Go team has released patched versions that address this race condition:

  • Go 1.15.15: Contains the fix for the 1.15.x release branch
  • Go 1.16.7: Contains the fix for the 1.16.x release branch

Additional vendor-specific patches are available:

  • Siemens Security Advisory SSA-222547 for SCALANCE LPE9403 devices
  • Oracle Security Alert January 2022 for TimesTen In-Memory Database
  • Debian LTS Announcements for Debian 9.0
  • Fedora Package Announcements for Fedora 33, 34, and 35
  • Gentoo GLSA 202208-02 for Gentoo Linux

Workarounds

  • Implement recovery handlers using defer and recover() in Go applications to gracefully handle panics
  • Deploy rate limiting on reverse proxy endpoints to reduce the likelihood of triggering the race condition
  • Use external load balancers or WAF solutions to add an additional layer of protection
  • Consider containerizing proxy services with automatic restart policies to minimize downtime from crashes
bash
# Check Go version for vulnerable installations
go version

# Update Go to patched version (example for Go 1.16.x)
# Download from https://go.dev/dl/
wget https://go.dev/dl/go1.16.7.linux-amd64.tar.gz
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.16.7.linux-amd64.tar.gz

# Verify the update
go version
# Output should show: go version go1.16.7 linux/amd64 (or later)

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

  • Vulnerability Details
  • TypeRace Condition

  • Vendor/TechGolang

  • SeverityMEDIUM

  • CVSS Score5.9

  • EPSS Probability0.23%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H
  • Impact Assessment
  • ConfidentialityHigh
  • IntegrityNone
  • AvailabilityHigh
  • CWE References
  • CWE-362
  • Technical References
  • Golang Announcement Forum

  • Golang Announcement Thread 1

  • Golang Announcement Thread 2

  • Debian LTS Announcement January 2022-1

  • Debian LTS Announcement January 2022-2

  • Debian LTS Announcement April 2023

  • Fedora Package Announcement 1

  • Fedora Package Announcement 2

  • Fedora Package Announcement 3

  • Gentoo GLSA 202208-02

  • Oracle Security Alert January 2022
  • Vendor Resources
  • Siemens Security Advisory SSA-222547
  • Related CVEs
  • CVE-2025-47907: Golang Go Race Condition Vulnerability

  • CVE-2025-68121: Golang Go Auth Bypass Vulnerability

  • CVE-2025-47911: Go html.Parse DoS Vulnerability

  • CVE-2025-58190: Golang x/net/html DoS Vulnerability
Default Legacy - Prefooter | 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