Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAttacker controls user-supplied URL
-
DeliveryApplication passes URL to HTTP::Tiny
-
ExploitCRLF characters in URL bypass validation
-
ExecutionMalicious headers injected into HTTP request
-
PersistRequest smuggling or header injection on upstream server
-
ImpactInformation disclosure or request forgery
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization HTTP response header sanitization
|
| Exploitation Conditions | The vulnerability requires an application to pass attacker-controlled input (a user-supplied URL string or header field value) directly to HTTP::Tiny methods such as |
| Impact | CVSS 6.5 (Medium, AV:N/AC:L/PR:N/UI:N/S:U) indicates network-accessible, unauthenticated exploitation without user interaction, but with limited impact (C:L/I:L/A:N - partial confidentiality and integrity loss, no availability impact). However, EPSS 0.03% (percentile 7%) is extremely low, suggesting minimal real-world exploitation probability. This discrepancy is explained by the specific exploitation prerequisites: the attacker must control the input URL or header values, which requires deployment in a context where untrusted user input feeds directly into HTTP::Tiny calls (e.g., a webhook receiver or URL fetch endpoint). The SSVC framework would classify this as: exploitation=Proof-of-Concept (fix is committed, not yet in stable release), automatable=Yes (CRLF injection is straightforward), technical_impact=Partial (header injection enables request smuggling but does not directly compromise confidentiality of sensitive data at the HTTP::Tiny level - impact depends on upstream server behavior). The low EPSS despite Medium CVSS is justified: while technically exploitable, the narrow attack surface (requires controlled input) and indirect impact (depends on upstream server mishandling smuggled requests) limit real-world risk. Organizations using HTTP::Tiny for internal, controlled requests face minimal risk; those exposing URL-fetch or webhook endpoints to untrusted input should prioritize patching. |
| Exploit ScenarioDerived | An attacker discovers a web service with a URL-fetch endpoint that accepts user-supplied URLs and fetches them using HTTP::Tiny (e.g., a URL preview service or webhook receiver). The attacker crafts a URL like |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – May 12, 2026
HTTP::Tiny versions before 0.093 for Perl fail to validate carriage return and line feed (CRLF) characters in HTTP request lines and header values, allowing attackers who control input URLs or headers to inject additional HTTP headers and smuggle requests to upstream servers. Remote unauthenticated attackers can exploit this via crafted URLs passed to webhook or URL fetch endpoints, achieving limited information disclosure and integrity compromise. EPSS score of 0.03% (percentile 7%) indicates low practical exploitation probability despite network-vector accessibility.
RemediationAI
Upgrade HTTP::Tiny to version 0.093 or later. Install via CPAN: cpan HTTP::Tiny or cpanm HTTP::Tiny. For systems using Perl distributions, upgrade via the package manager (e.g., apt-get install libhttp-tiny-perl, yum install perl-HTTP-Tiny). The patch is available in the upstream repository at https://github.com/Perl-Toolchain-Gang/HTTP-Tiny/commit/d73c7651e82ace02693842df55928b6c3ae7c38d.patch. As a compensating control prior to patching, sanitize all untrusted URL and header inputs by rejecting any strings containing carriage returns (\x0D), line feeds (\x0A), or null bytes (\x00); alternatively, validate that method and URI components conform to RFC 3986 for URIs and RFC 9110 for HTTP methods (alphanumeric only for methods). However, sanitization at the application layer is less reliable than upgrading the library, so patch deployment is strongly preferred. Applications should audit codebase for instances where HTTP::Tiny processes user-supplied URLs and prioritize those for testing after patching.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
HTTP::Tiny is a lightweight Perl HTTP client library used in build toolchains and web applications for making HTTP requests. The vulnerability exists in the request header construction logic, specifically in the write_request_header() and write_header_lines() subroutines. The library accepts method, URI, and Host header values without sanitizing for CRLF sequences (\x0D\x0A / \r\n). An attacker who injects a CRLF into the URI or method name can terminate the current header line and inject arbitrary additional headers or even entire new HTTP requests before the request reaches the upstream server. This is fundamentally a CWE-113 (Improper Neutralization of CRLF Sequences in HTTP Headers) issue. The fix (commit d73c7651e82ace02693842df55928b6c3ae7c38d) adds validation using a $Field_Content regex pattern and explicit character class checks to reject any byte in the range \x00-\x20 (control characters and space) and \x7F (DEL) in the method and request-URI, effectively preventing CRLF injection.
Know when Http gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
3DescriptionCVE.org
HTTP::Tiny versions before 0.093 for Perl do not validate CRLF in HTTP request lines or control field header values.
The unvalidated inputs are the method and URI in the request line, the URL host that becomes the Host: header, and HTTP/1.1 control data field values.
An attacker who controls one of these inputs, for example a user supplied URL passed to a webhook or URL fetch endpoint, can inject additional headers and smuggle requests to the upstream server.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Remote, unauthenticated denial of service affects react/http versions 0.6.0 through 1.11.0, where a malformed Transfer-E
An issue was discovered in the http crate before 0.1.20 for Rust. Rated high severity (CVSS 7.5), this vulnerability is
HTTP::Daemon is a simple http server class written in perl. Rated medium severity (CVSS 6.5), this vulnerability is remo
An issue was discovered in the http package through 0.12.2 for Dart. Rated medium severity (CVSS 6.1), this vulnerabilit
HTTP::Session versions through 0.53 for Perl defaults to using insecurely generated session ids.
HTTP::Tiny before 0.083, a Perl core module since 5.13.9 and available standalone on CPAN, has an insecure default TLS c
Unbounded response-header buffering in ReactPHP's HTTP client (react/http) versions 1.0.0 through 1.11.0 allows a malici
Credential leakage in the Perl HTTP::Tiny client (all versions before 0.095) lets an attacker who controls a redirect de
HTTP::Session2 versions through 1.09 for Perl does not validate the format of user provided session ids, enabling code i
HTTP::Session2 before version 1.12 for Perl generates predictable session identifiers on Windows systems when /dev/urand
react/http is an event-driven, streaming HTTP client and server implementation for ReactPHP. Rated medium severity (CVSS
EUVD-2026-29344
GHSA-x3qr-8f53-fg74
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB