Skip to content
OpenAdvisories

Weakness (CWE)

CWE-93: Improper Neutralization of CRLF Sequences

Base Draft

The product uses CRLF (carriage return line feeds) as a special element, e.g. to separate lines or records, but it does not neutralize or incorrectly neutralizes CRLF sequences from inputs.

How to prevent it (2 mitigations)
  1. Implementation

    Avoid using CRLF as a special sequence.

  2. Implementation

    Appropriately filter or quote CRLF sequences in user-controlled input.

Source: MITRE CWE-93

284 results · Feed

  • Medium —

    SwiftNIO: CRLF Injection in outbound HTTP request URI via NIOHTTPRequestHeadersValidator

    Programs using swift-nio is vulnerable to HTTP request smuggling and HTTP response splitting attacks, caused by insufficient validation of outbound HTTP/1.1 request and response start line components. This vulnerability affects all swift-nio versions from 2.0…

  • Medium 5.3

    Apache CXF: OAuth2: Log Injection via Unsanitized Client Identifier

    The 'clientId' parameter from incoming HTTP requests is directly concatenated into OAuth2 server log warning messages without sanitizing control characters. This allows an attacker to inject arbitrary content, including fake log entries, into the server's log…

  • Medium 5.3

    guzzlehttp/psr7 has CRLF Injection via URI Host Component

    guzzlehttp/psr7 is a PSR-7 HTTP message library implementation in PHP. Versions prior to 2.10.2 did not reject ASCII control characters, whitespace, or DEL in first-party URI host components. A vulnerable flow is: First, an application accepts a user-controll…

  • Medium 6.5

    Metrics::Any::Adapter::SignalFx versions before 0.04 for Perl does not protect against metric injections

    Metrics::Any::Adapter::SignalFx versions before 0.04 for Perl does not protect against metric injections. The statsd protocol (and extensions such as dogstatsd) allow mutiple metrics, separated by newlines, to be sent per packet. Metrics::Any::Adapter::Signal…

  • Critical 9.1

    Metrics::Any::Adapter::DogStatsd versions before 0.04 for Perl does not protect against metric injections

    Metrics::Any::Adapter::DogStatsd versions before 0.04 for Perl does not protect against metric injections. The statsd protocol (and extensions such as dogstatsd) allow mutiple metrics, separated by newlines, to be sent per packet. Metrics::Any::Adapter::DogSt…

  • High 8.2

    Metrics::Any::Adapter::Statsd versions before 0.04 for Perl does not protect against metric injections

    Metrics::Any::Adapter::Statsd versions before 0.04 for Perl does not protect against metric injections. The statsd protocol (and extensions) allow mutiple metrics, separated by newlines, to be sent per packet. The send method does not validate the contents of…

  • Low 2.1

    Multipart form-data header injection in Req via unescaped name/filename/content_type

    Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in wojtekmach Req allows multipart parameter smuggling via attacker-influenced part metadata. Req.Utils.encode_form_part/2 in lib/req/utils.ex builds the per-part headers by interpolat…

  • Critical 9.8

    DataDog::DogStatsd versions through 0.07 for Perl allow metric injections from event tags

    DataDog::DogStatsd versions through 0.07 for Perl allow metric injections from event tags. DataDog::DogStatsd does not properly sanitise input, allowing metric injections of data from untrusted sources. The format_event method (used by the event method) does …

  • Critical 9.1

    DataDog::DogStatsd versions through 0.07 for Perl allow metric injections

    DataDog::DogStatsd versions through 0.07 for Perl allow metric injections. DataDog::DogStatsd does not properly sanitise input, allowing metric injections of data from untrusted sources. The send_stats method does not remove newlines from metric names ($stat …

  • High 7.4

    In libinput before 1.30.4 and 1.31.x before 1.31.3, libinput-device-group unescaped phys output can inject udev propert…

  • High 7.5

    Etsy::StatsD versions through 1.002002 for Perl allow metric injections

    Etsy::StatsD versions through 1.002002 for Perl allow metric injections. The metric names and values are not checked for newlines, colons or pipes. Metrics generated from untrusted sources could inject additional statsd metrics. Note that the git repository c…

  • Medium 5.3

    Net::Statsd versions before 0.13 for Perl allow metric injections

    Net::Statsd versions before 0.13 for Perl allow metric injections. The metric names are not checked for newlines, colons or pipes. Metrics generated from untrusted sources could inject additional statsd metrics. The update_stats (used for updating counters) a…

  • Medium 6.5

    Net::Async::Statsd::Client versions through 0.005 for Perl allow metric injections

    Net::Async::Statsd::Client versions through 0.005 for Perl allow metric injections. The metric names are not checked for newlines, colons or pipes. Metrics generated from untrusted sources could inject additional statsd metrics.

  • Low 2.1

    CRLF injection in Tesla.Multipart.add_content_type_param/2 allows HTTP header injection

    Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Request/Response Splitting') vulnerability in elixir-tesla tesla allows HTTP header injection via Tesla.Multipart.add_content_type_param/2. Tesla.Multipart.add_content_type_param/2 appends calle…

  • Low 2.1

    CRLF injection in HTTP/1 request line via unvalidated method in Mint

    Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in elixir-mint Mint allows HTTP Request Splitting and HTTP Request Smuggling. In lib/mint/http1/request.ex, the encode_request_line/2 function splices the caller-supplied method and ta…

  • Critical 9.9

    cpp-httplib: HTTP header value percent-decoding in server-side `parse_header` enables CRLF injection

    cpp-httplib is a C++11 single-file header-only cross platform HTTP/HTTPS library. Prior to 0.44.0, when cpp-httplib's server parses an incoming request, it applies percent-decoding to every header value except Location and Referer. The validity check (is_fiel…

  • Medium 5.3

    Music Player Daemon < 0.24.11 CRLF Injection via XspfPlaylistPlugin.cxx

    Music Player Daemon (MPD) before version 0.24.11 contains a CRLF injection vulnerability in the xspf_char_data function within the XSPF playlist plugin that allows attackers to embed literal CR/LF bytes in URI fields by supplying a malicious XSPF playlist wit…

  • Medium 5.3

    Mojolicious::Plugin::Statsd versions through 0.04 for Perl allowed metric injections

    Mojolicious::Plugin::Statsd versions through 0.04 for Perl allowed metric injections. The metric names and set values were not checked for newlines, colons or pipes. Metrics generated from untrusted sources could inject additional statsd metrics. Version 0.06…

  • Medium 5.8

    eventsource-encoder: SSE event injection via unsanitized event and id fields

    eventsource-encoder encodes events as well-formed EventSource/Server Sent Event (SSE) messages. Prior to 1.0.2, eventsource-encoder does not sanitize the event or id fields of an EventSourceMessage before serializing them. An attacker who controls either fiel…

  • Medium 6.9

    CRLF injection in WebSocket upgrade request in hackney

    Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in benoitc hackney allows HTTP Request/Response Splitting. The WebSocket upgrade code in src/hackney_ws.erl copies the host, path, headers (ExtraHeaders), and protocols options from th…

  • Medium 6.8

    CR/LF injection in query parameter in hackney

    Improper Neutralization of CRLF Sequences vulnerability in benoitc hackney allows HTTP Request Splitting. hackney does not percent-encode carriage return (\r) or line feed (\n) characters in the URL query component before constructing the HTTP/1.1 request tar…

  • Low 2.1

    CRLF injection in cookie domain/path options in hackney

    Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in benoitc hackney allows HTTP Response Splitting. The hackney_cookie:setcookie/3 function in src/hackney_cookie.erl validates the Name and Value arguments against CRLF and control cha…

  • High 7.3

    Net::Statsd::Lite versions through 0.10.0 for Perl allowed metric injections

    Net::Statsd::Lite versions through 0.10.0 for Perl allowed metric injections. The values from the set_add method were not checked for newlines, colons or pipes. Metrics generated from untrusted sources could inject additional statsd metrics. Note that version…

  • High 8.2

    Net::Statsd::Tiny versions before 0.3.8 for Perl allowed metric injections

    Net::Statsd::Tiny versions before 0.3.8 for Perl allowed metric injections. The metric names and set values were not checked for newlines, colons or pipes. Metrics generated from untrusted sources could inject additional statsd metrics.

  • Medium 6.5

    Net::Statsd::Lite versions before 0.9.0 for Perl allowed metric injections

    Net::Statsd::Lite versions before 0.9.0 for Perl allowed metric injections. The metric names were not checked for newlines, colons or pipes. Metrics generated from untrusted sources could inject additional statsd metrics.

  • High 8.3

    Improper sanitization of the `status` query parameter of the `/unprotected/nova_error` endpoint allows unauthenticated …

  • Medium 6.8

    Netty: CRLF Injection in Netty Redis Codec Encoder

    Netty is an asynchronous, event-driven network application framework. Prior to 4.2.13.Final and 4.1.133.Final, the Netty Redis codec encoder (RedisEncoder) writes user-controlled string content directly to the network output buffer without validating or sanit…

  • Low 2.9

    Netty: HTTP Header Injection via HttpProxyHandler Disabled Validation

    Netty is an asynchronous, event-driven network application framework. Prior to 4.2.13.Final and 4.1.133.Final, Netty's HttpProxyHandler constructs HTTP CONNECT requests with header validation explicitly disabled. The newInitialMessage() method creates headers…

  • Medium 5.5

    Subnet Solutions PowerSYSTEM Center CRLF injection

    PowerSYSTEM Center email notification service is affected by a CRLF injection vulnerability when using SMTPS communication.

  • Medium 6.6

    sse-channel: SSE Injection via unsanitized event fields

    sse-channel is an SSE-implementation which can be used to any node.js http request/response stream. Prior to 4.0.1, implementations that allow user-provided values to be passed to event, retry or id fields are susceptible to event spoofing, where an attacker …

  • Medium 4.3

    WWBN AVideo: Unauthenticated CRLF/ICS Injection in Scheduler downloadICS.php Allows Calendar Event Spoofing

    WWBN AVideo is an open source video platform. In versions up to and including 29.0, the unauthenticated plugin/Scheduler/downloadICS.php endpoint passes attacker-controlled title, description, and joinURL parameters into Scheduler::downloadICS(), which builds…

  • Medium 6.3

    CR Injection in SSE Encoder Enables Event Splitting via cow_sse:event/1

    Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in ninenines cowlib allows SSE event splitting and injection via unvalidated field values. cow_sse:event/1 in cowlib guards the id and event fields against \n but not against bare \r, …

  • Low 2.1

    Cookie Request Header Injection via Unvalidated Encoder in cow_cookie:cookie/1

    Improper Neutralization of CRLF Sequences ('CRLF Injection') vulnerability in ninenines cowlib allows HTTP request splitting and cookie smuggling via unvalidated cookie name and value fields. cow_cookie:cookie/1 in cowlib builds a client-side Cookie: request …

  • Medium 5.8

    net-imap: Command Injection via unvalidated Symbol inputs

    Net::IMAP implements Internet Message Access Protocol (IMAP) client functionality in Ruby. Prior to versions 0.4.24, 0.5.14, and 0.6.4, symbol arguments to commands are vulnerable to a CRLF Injection / IMAP Command injection via Symbol arguments passed to IMA…

  • Medium 5.8

    net-imap: Command Injection via "raw" arguments to multiple commands

    Net::IMAP implements Internet Message Access Protocol (IMAP) client functionality in Ruby. Prior to versions 0.4.24, 0.5.14, and 0.6.4, several Net::IMAP commands accept a raw string argument that is sent to the server without validation or escaping. If this …

  • High 7.8

    PHPUnit: Argument injection via newline in PHP INI values forwarded to child processes

    PHPUnit is a testing framework for PHP. In versions 12.5.21 and 13.1.5, PHPUnit forwards PHP INI settings to child processes (used for isolated/PHPT test execution) as -d name=value command-line arguments without neutralizing INI metacharacters. Because PHP's…

  • Medium 5.3

    Netty vulnerable to HTTP request smuggling and RTSP request injection via DefaultHttpRequest.setUri()

    Netty allows request-line validation to be bypassed when a `DefaultHttpRequest` or `DefaultFullHttpRequest` is created first and its URI is later changed via `setUri()`. The constructors reject CRLF and whitespace characters that would break the start-line, b…

  • High 8.7

    Pi-hole FTL remote code execution via newline injection in dns.interface configuration

    Pi-hole FTL is the core engine of the Pi-hole network-level advertisement and tracker blocker. In versions before 6.6.1, the `dns.interface` configuration field in Pi-hole FTL accepted newline characters without validation, allowing an attacker to inject arbi…

  • Critical 9.3

    Sandboxie-Plus privilege escalation via INI CRLF injection bypassing EditAdminOnly

    Sandboxie-Plus is an open source sandbox-based isolation software for Windows. In versions 1.17.2 and earlier, an INI injection vulnerability allows any standard local user to bypass configuration restrictions (EditAdminOnly and ConfigPassword) and inject arb…

  • High 8.8

    Authorization Bypass in TUBITAK BILGEM's Pardus Update

    Improper neutralization of CRLF sequences ('CRLF injection') vulnerability in TUBITAK BILGEM Software Technologies Research Institute Pardus Update allows Authentication Bypass. This issue affects Pardus Update: from 0.6.3 before 0.6.4.