Description
Starman versions before 0.4019 for Perl send response bodies for HEAD requests, desynchronizing responses on keep-alive connections.

For a HEAD request Starman omits chunked framing but still writes the body returned by the application, on both the array and streaming response paths. Responses with a 1xx, 204 or 304 status also carry the body.

On a keep-alive or pipelined connection the client reads those bytes as the start of the next response. A front-end proxy that reuses upstream connections may then pair responses with the wrong requests.
Published: 2026-10-25
Score: n/a
EPSS: n/a
KEV: No
Impact: HTTP response desynchronization potentially leading to data leakage or service disruption
Action: Patch Immediately
AI Analysis

Impact

Starman, a Perl HTTP server, mistakenly includes body data in responses to HEAD requests for all pre‑0.4019 releases. This violates the HTTP specification, which requires HEAD responses to be empty apart from headers. Because the server omits chunked framing and still writes the body, clients receive stray bytes that are interpreted as the start of an unread response. This desynchronization can expose unintended data, confuse client logic, and trigger failures when a connection is reused or pipelined.

Affected Systems

All deployments of Starman for Perl running a version earlier than 0.4019 are affected. Users of newer releases are not vulnerable. The only vendor information is the Starman project maintained by Marek I. Y. Kawara.

Risk and Exploitability

The vulnerability is network‑based and can be triggered by normal HEAD requests sent over a keep‑alive or pipelined TCP connection. Attackers can craft requests that force the server to emit a body, causing a client or upstream proxy to misinterpret subsequent data. The CVSS score and EPSS are not provided, and the vulnerability is not listed in the CISA KEV catalog. No severity metrics are available to quantify the risk, but the described behaviour could lead to confusion in client logic and data leakage when connections are reused.

Generated by OpenCVE AI on October 25, 2026 at 21:49 UTC.

Remediation

Vendor Solution

Upgrade to Starman 0.4019 or later.


Vendor Workaround

For deployments that cannot upgrade to 0.4019, enable Plack::Middleware::Head, which removes the body from HEAD responses.


OpenCVE Recommended Actions

  • Upgrade Starman to version 0.4019 or later
  • If upgrading is not possible, enable Plack::Middleware::Head to strip bodies from HEAD responses
  • Configure upstream proxies or application logic to avoid reusing connections for HEAD responses

Generated by OpenCVE AI on October 25, 2026 at 21:49 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 26 Oct 2026 00:00:00 +0000

Type Values Removed Values Added
First Time appeared Miyagawa
Miyagawa starman
Vendors & Products Miyagawa
Miyagawa starman

Sun, 25 Oct 2026 17:15:00 +0000

Type Values Removed Values Added
Description Starman versions before 0.4019 for Perl send response bodies for HEAD requests, desynchronizing responses on keep-alive connections. For a HEAD request Starman omits chunked framing but still writes the body returned by the application, on both the array and streaming response paths. Responses with a 1xx, 204 or 304 status also carry the body. On a keep-alive or pipelined connection the client reads those bytes as the start of the next response. A front-end proxy that reuses upstream connections may then pair responses with the wrong requests.
Title Starman versions before 0.4019 for Perl send response bodies for HEAD requests, desynchronizing responses on keep-alive connections
Weaknesses CWE-444
References

Subscriptions

Miyagawa Starman
cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-10-25T16:51:19.961Z

Reserved: 2026-10-23T16:47:20.192Z

Link: CVE-2026-115823

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-25T17:17:01.743

Modified: 2026-10-25T17:17:01.743

Link: CVE-2026-115823

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-25T23:45:16Z

Weaknesses
  • CWE-444

    Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling')