← Back to CVE Explorer

CVE-2025-40927

Full vulnerability record from the local CVENow database.

Description

CGI::Simple versions before 1.282 for Perl has a HTTP response splitting flaw This vulnerability is a confirmed HTTP response splitting flaw in CGI::Simple that allows HTTP response header injection, which can be used for reflected XSS or open redirect under certain conditions. Although some validation exists, it can be bypassed using URL-encoded values, allowing an attacker to inject untrusted content into the response via query parameters. As a result, an attacker can inject a line break (e.g. %0A) into the parameter value, causing the server to split the HTTP response and inject arbitrary headers or even an HTML/JavaScript body, leading to reflected cross-site scripting (XSS), open redirect or other attacks. The issue documented in CVE-2010-4410 https://www.cve.org/CVERecord?id=CVE-2010-4410 is related but the fix was incomplete. Impact By injecting %0A (newline) into a query string parameter, an attacker can: * Break the current HTTP header * Inject a new header or entire body * Deliver a script payload that is reflected in the server’s response That can lead to the following attacks: * reflected XSS * open redirect * cache poisoning * header manipulation

Severity
HIGH
CVSS score
7.3 (v3.1)
Vulnerability status
Deferred
Source identifier
9b29abf9-4ab0-4765-b253-1875cd9b441e
Published
2025-08-29 01:15:34.553000
Last modified
2026-10-18 21:10:00.120000
View original CVE JSON
{
  "id": "CVE-2025-40927",
  "sourceIdentifier": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
  "published": "2025-08-29T01:15:34.553",
  "lastModified": "2026-10-18T21:10:00.120",
  "vulnStatus": "Deferred",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "CGI::Simple versions before 1.282 for Perl has a HTTP response splitting flaw\nThis vulnerability is a confirmed HTTP response splitting flaw in CGI::Simple that allows HTTP response header injection, which can be used for reflected XSS or open redirect under certain conditions.\n\nAlthough some validation exists, it can be bypassed using URL-encoded values, allowing an attacker to inject untrusted content into the response via query parameters.\n\n\n\nAs a result, an attacker can inject a line break (e.g. %0A) into the parameter value, causing the server to split the HTTP response and inject arbitrary headers or even an HTML/JavaScript body, leading to reflected cross-site scripting (XSS), open redirect or other attacks.\n\nThe issue documented in CVE-2010-4410 https://www.cve.org/CVERecord?id=CVE-2010-4410 is related but the fix was incomplete.\n\nImpact\n\nBy injecting %0A (newline) into a query string parameter, an attacker can:\n\n  *  Break the current HTTP header\n  *  Inject a new header or entire body\n  *  Deliver a script payload that is reflected in the server’s response\nThat can lead to the following attacks:\n\n  *  reflected XSS\n  *  open redirect\n  *  cache poisoning\n  *  header manipulation"
    },
    {
      "lang": "es",
      "value": "Las versiones de CGI::Simple anteriores a la 1.282 para Perl tienen una falla de división de respuesta HTTP.\nEsta vulnerabilidad es una falla confirmada de división de respuesta HTTP en CGI::Simple que permite la inyección de encabezados de respuesta HTTP, la cual puede usarse para XSS reflejado o redirección abierta bajo ciertas condiciones.\n\nAunque existe cierta validación, puede ser evadida usando valores codificados en URL, permitiendo a un atacante inyectar contenido no confiable en la respuesta a través de parámetros de consulta.\n\nComo resultado, un atacante puede inyectar un salto de línea (por ejemplo, %0A) en el valor del parámetro, haciendo que el servidor divida la respuesta HTTP e inyecte encabezados arbitrarios o incluso un cuerpo HTML/JavaScript, lo que lleva a cross-site scripting (XSS) reflejado, redirección abierta u otros ataques.\n\nEl problema documentado en CVE-2010-4410 https://www.cve.org/CVERecord?id=CVE-2010-4410 está relacionado pero la solución fue incompleta.\n\nImpacto\n\nAl inyectar %0A (salto de línea) en un parámetro de cadena de consulta, un atacante puede:\n\n*   Romper el encabezado HTTP actual\n*   Inyectar un nuevo encabezado o un cuerpo completo\n*   Entregar una carga útil de script que se refleja en la respuesta del servidor\n\nEso puede llevar a los siguientes ataques:\n\n*   XSS reflejado\n*   redirección abierta\n*   envenenamiento de caché\n*   manipulación de encabezados"
    }
  ],
  "affected": [
    {
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
      "affectedData": [
        {
          "vendor": "MANWAR",
          "product": "CGI::Simple",
          "defaultStatus": "unaffected",
          "collectionURL": "https://cpan.org/modules",
          "packageName": "CGI-Simple",
          "programFiles": [
            "lib/CGI/Simple.pm"
          ],
          "repo": "https://github.com/manwar/CGI--Simple",
          "versions": [
            {
              "version": "0",
              "lessThan": "1.282",
              "versionType": "custom",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
          "baseScore": 7.3,
          "baseSeverity": "HIGH",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "NONE",
          "userInteraction": "NONE",
          "scope": "UNCHANGED",
          "confidentialityImpact": "LOW",
          "integrityImpact": "LOW",
          "availabilityImpact": "LOW"
        },
        "exploitabilityScore": 3.9,
        "impactScore": 3.4
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2025-08-29T13:18:01.758812Z",
          "id": "CVE-2025-40927",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "partial"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-113"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-2320",
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
    },
    {
      "url": "https://datatracker.ietf.org/doc/html/rfc7230#section-3",
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
    },
    {
      "url": "https://metacpan.org/release/MANWAR/CGI-Simple-1.281/diff/MANWAR/CGI-Simple-1.282/lib/CGI/Simple.pm",
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
    },
    {
      "url": "https://metacpan.org/release/MANWAR/CGI-Simple-1.281/source/lib/CGI/Simple.pm#L1031-1035",
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
    },
    {
      "url": "https://owasp.org/www-community/attacks/HTTP_Response_Splitting",
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
    },
    {
      "url": "https://rt.perl.org/Public/Bug/Display.html?id=21951",
      "source": "9b29abf9-4ab0-4765-b253-1875cd9b441e"
    }
  ]
}