CVE-2026-7010
Received Received - Intake
HTTP::Tiny Perl Module CRLF Injection Vulnerability

Publication date: 2026-05-11

Last updated on: 2026-05-12

Assigner: CPANSec

Description
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.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-05-11
Last Modified
2026-05-12
Generated
2026-06-01
AI Q&A
2026-05-12
EPSS Evaluated
2026-05-30
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
perl_toolchain_gang http_tiny to 0.093 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-113 The product receives data from an HTTP agent/component (e.g., web server, proxy, browser, etc.), but it does not neutralize or incorrectly neutralizes CR and LF characters before the data is included in outgoing HTTP headers.
Attack-Flow Graph
AI Powered Q&A
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

This vulnerability allows an attacker to inject additional HTTP headers and smuggle requests to upstream servers by exploiting unvalidated CRLF sequences in HTTP request lines and headers.

Such injection and request smuggling attacks can lead to unauthorized access, data leakage, or manipulation of HTTP traffic, which may compromise the confidentiality and integrity of data.

Consequently, this can impact compliance with standards and regulations like GDPR and HIPAA that require protection of personal and sensitive data against unauthorized access and data breaches.

Organizations using vulnerable versions of HTTP::Tiny may face increased risk of non-compliance due to potential exploitation of this vulnerability leading to data exposure or manipulation.


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability involves improper validation of CRLF sequences in HTTP request lines and headers, which can lead to HTTP request/response splitting and header injection.

To detect this vulnerability on your network or system, you can monitor HTTP requests for suspicious or malformed headers that include unexpected CRLF sequences or injected headers.

Specifically, you can use network traffic analysis tools like tcpdump or Wireshark to capture HTTP traffic and look for requests containing multiple headers injected via CRLF sequences.

  • Use tcpdump to capture HTTP traffic: tcpdump -i <interface> -A 'tcp port 80 or 443'
  • Use grep or similar tools to search logs or captured traffic for suspicious CRLF injection patterns, such as '%0d%0a' or '\r\n' sequences in HTTP request lines or headers.
  • Check application logs or webhook endpoints for user-supplied URLs or inputs that contain control characters or unexpected header delimiters.

Since the vulnerability is in HTTP::Tiny versions before 0.093, you can also check the version of HTTP::Tiny installed in your Perl environment to identify if it is vulnerable.

  • Run a Perl command to check HTTP::Tiny version: perl -MHTTP::Tiny -e 'print $HTTP::Tiny::VERSION, "\n"'

What immediate steps should I take to mitigate this vulnerability?

The primary mitigation step is to upgrade HTTP::Tiny to version 0.093-TRIAL or later, where the vulnerability has been fixed by adding validation checks to reject control characters in HTTP request methods, URIs, and headers.

Until you can upgrade, avoid passing untrusted user input directly to HTTP::Tiny request methods, especially user-supplied URLs or webhook inputs.

Implement input validation and sanitization on any user-supplied URLs or HTTP request components to ensure they do not contain CRLF sequences or control characters.

Monitor your systems for suspicious HTTP request patterns that could indicate exploitation attempts.


Can you explain this vulnerability to me?

This vulnerability exists in HTTP::Tiny versions before 0.093 for Perl, where the software does not validate CRLF (Carriage Return Line Feed) characters in HTTP request lines or control field header values.

Specifically, the inputs that are not validated include the HTTP 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 can control one of these inputs, such as a user-supplied URL passed to a webhook or URL fetch endpoint, can exploit this flaw to inject additional HTTP headers and perform request smuggling attacks to the upstream server.


How can this vulnerability impact me? :

This vulnerability can allow an attacker to inject additional HTTP headers and smuggle requests to the upstream server.

Such attacks can lead to unauthorized actions, bypassing security controls, or manipulating the behavior of the server or application that relies on HTTP::Tiny.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart