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-2023-30589

CVE-2023-30589: Node.js HTTP Request Smuggling Vulnerability

CVE-2023-30589 is an HTTP Request Smuggling flaw in Node.js llhttp parser that allows improper delimiting of HTTP headers. This vulnerability affects Node.js versions 16, 18, and 20, enabling potential security bypasses.

Published: February 4, 2026

CVE-2023-30589 Overview

CVE-2023-30589 is an HTTP Request Smuggling vulnerability discovered in the llhttp parser within the HTTP module of Node.js. The vulnerability arises because the llhttp parser does not strictly enforce the CRLF (Carriage Return Line Feed) sequence to delimit HTTP requests. Instead, the parser incorrectly accepts a standalone CR character (without LF) as sufficient to delimit HTTP header fields, which violates RFC7230 section 3 specifications that mandate only the CRLF sequence should delimit each header-field.

This parsing inconsistency can be exploited to perform HTTP Request Smuggling (HRS) attacks, where an attacker can manipulate HTTP request boundaries to bypass security controls, poison web caches, or hijack user sessions in environments where Node.js applications sit behind load balancers or reverse proxies.

Critical Impact

HTTP Request Smuggling can lead to bypass of security controls, cache poisoning, session hijacking, and unauthorized access to sensitive data in Node.js web applications.

Affected Products

  • Node.js v16 (all active versions)
  • Node.js v18 (all active versions)
  • Node.js v20 (specifically v20.2.0 and related versions)
  • Fedora 37
  • Fedora 38

Discovery Timeline

  • 2023-07-01 - CVE-2023-30589 published to NVD
  • 2025-11-04 - Last updated in NVD database

Technical Details for CVE-2023-30589

Vulnerability Analysis

The llhttp parser is a core component of Node.js responsible for parsing HTTP/1.x messages. This vulnerability stems from the parser's overly permissive handling of line delimiters in HTTP headers. According to RFC7230, HTTP header fields must be delimited using the CRLF sequence (\r\n), but the vulnerable llhttp parser accepts a bare CR character (\r) without the subsequent LF (\n) as a valid delimiter.

This deviation from the HTTP specification creates a desynchronization opportunity between the Node.js server and any front-end proxies or load balancers that strictly follow RFC7230. When these systems interpret HTTP request boundaries differently, attackers can craft malicious requests that appear as one request to the proxy but are processed as multiple requests by the Node.js backend.

The vulnerability affects the integrity of HTTP request processing, enabling attackers to inject unauthorized requests, bypass authentication mechanisms, or access resources belonging to other users without requiring any special privileges or user interaction.

Root Cause

The root cause lies in the llhttp parser's lenient implementation of HTTP message parsing. The parser was designed to be tolerant of malformed input for backward compatibility, but this tolerance extends to accepting non-compliant line terminators. Specifically, the state machine in llhttp transitions on encountering a CR character alone, rather than waiting for the complete CRLF sequence before considering a header line complete.

This implementation choice violates the principle of being strict in what you send and somewhat liberal in what you receive, as the liberal parsing creates security vulnerabilities when different HTTP intermediaries apply stricter parsing rules.

Attack Vector

HTTP Request Smuggling attacks exploiting CVE-2023-30589 leverage the discrepancy between how front-end proxies and the Node.js backend interpret request boundaries. An attacker sends a specially crafted HTTP request containing CR-only delimiters that the proxy may ignore or interpret differently than Node.js.

The attack typically follows this pattern: A malicious request is constructed where the front-end proxy sees one complete request, while the Node.js server interprets the payload as containing additional embedded requests. This allows the attacker to "smuggle" requests past security controls, potentially accessing restricted endpoints, poisoning caches with malicious content, or hijacking requests from other users.

Since this is a network-based attack requiring no authentication or user interaction, it poses a significant risk to any Node.js application accessible from untrusted networks, particularly those deployed behind reverse proxies or load balancers.

Detection Methods for CVE-2023-30589

Indicators of Compromise

  • Unusual HTTP requests in server logs containing bare CR characters (\r) without corresponding LF characters
  • Unexpected requests appearing to originate from legitimate user sessions
  • Cache entries containing unexpected or malicious content
  • Web application firewall logs showing request parsing anomalies

Detection Strategies

  • Implement network intrusion detection rules to identify HTTP requests with non-standard line terminators
  • Monitor for discrepancies between proxy access logs and backend server logs indicating request desynchronization
  • Deploy application-layer monitoring to detect unexpected request patterns or session anomalies
  • Use HTTP protocol analyzers to identify malformed requests at network ingress points

Monitoring Recommendations

  • Enable detailed HTTP request logging on both proxy and Node.js application layers
  • Implement correlation analysis between front-end and back-end request logs to identify smuggling attempts
  • Configure alerting for unusual request patterns or parsing errors in the llhttp module
  • Monitor for cache poisoning indicators such as unexpected content served to users

How to Mitigate CVE-2023-30589

Immediate Actions Required

  • Upgrade Node.js to the latest patched version for your active release line (v16.x, v18.x, or v20.x)
  • Review and audit any HTTP proxies or load balancers in front of Node.js applications for consistent parsing behavior
  • Implement strict HTTP parsing rules at network boundaries where possible
  • Consider deploying a Web Application Firewall (WAF) with HTTP normalization capabilities

Patch Information

Security patches addressing this vulnerability have been released for all affected Node.js active version lines. Users should upgrade to the latest available version within their release line. Additional security advisories have been published by Fedora, NetApp, and Debian with distribution-specific patch information.

The original vulnerability was reported via the HackerOne bug bounty program.

Workarounds

  • Configure front-end proxies to normalize HTTP requests by rejecting or sanitizing requests with non-standard line terminators
  • Implement strict HTTP parsing at the reverse proxy layer to ensure consistent request interpretation
  • Use HTTP/2 for client-to-proxy communication where possible, as HTTP/2 uses a binary framing layer not susceptible to this class of vulnerability
  • Deploy network-level filtering to detect and block requests containing bare CR characters in header fields
bash
# Example: Check Node.js version and upgrade
node --version
# If vulnerable, upgrade using your package manager
# For npm-based Node.js version management:
nvm install --lts
nvm use --lts

# Verify the upgrade
node --version

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

  • Vulnerability Details
  • TypeOther

  • Vendor/TechNodejs

  • SeverityHIGH

  • CVSS Score7.5

  • EPSS Probability1.14%

  • Known ExploitedNo
  • CVSS Vector
  • CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
  • Impact Assessment
  • ConfidentialityLow
  • IntegrityNone
  • AvailabilityNone
  • CWE References
  • NVD-CWE-Other
  • Technical References
  • HackerOne Report #2001873

  • Fedora Package Announcement

  • Fedora Package Announcement

  • Fedora Package Announcement

  • Fedora Package Announcement

  • NetApp Security Advisory NTAP-20230803-0009

  • NetApp Security Advisory NTAP-20240621-0006

  • Debian LTS Announcement
  • Vendor Resources
  • Fedora Package Announcement

  • Fedora Package Announcement
  • Related CVEs
  • CVE-2022-35256: Node.js HTTP Request Smuggling Flaw

  • CVE-2022-32215: Llhttp HTTP Request Smuggling Vulnerability

  • CVE-2022-32213: Llhttp HTTP Request Smuggling Vulnerability

  • CVE-2022-21824: Node.js Prototype Pollution 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