CVE-2026-56813
LowCVSS 2.1Exploitation Probability (EPSS)
Low risk11th percentile - higher than 11% of all known CVEs
Summary
In the elixir-plug plug library, Plug.Conn.Cookies.encode/2 builds the Set-Cookie response header by interpolating the cookie value and its path, domain, same_site, and extra attributes without neutralizing the ; delimiter. An application that places attacker-controlled data into a cookie value or attribute lets an attacker inject a ; to append or override cookie attributes.
Risk Assessment
This enables cookie tossing and session fixation, e.g. by changing Domain and Path scope or dropping the Secure and HttpOnly flags. Attribute injection through ; is not prevented, although CR, LF, and null bytes are rejected, so HTTP response splitting is not possible.
Recommendation
Update plug to version 1.16.6, 1.17.4, 1.18.5, 1.19.5, or 1.20.3 (depending on the branch) or later. Ensure user data is not placed directly into cookie values or attributes.
Other vulnerabilities in Plug
See all- CVE-2026-54892High
Plug has an efficiency issue in the nested-parameter decoder that allows an unauthenticated remote attacker to cause denial of service. The decoding algorithm's complexity is quadratic in relation to the number of nesting levels, which can lead to server unresponsiveness.
- CVE-2026-56814Medium
The multipart parser in Plug.Parsers.MULTIPART does not enforce its :length budget against all consumed resources, allowing an unauthenticated attacker to cause denial of service. Part headers are not counted, and empty parts create temporary files, leading to inode, disk, and memory exhaustion. Affected versions: plug from 1.4.0-rc.0 before 1.16.6, 1.17.0 before 1.17.4, 1.18.0 before 1.18.5, 1.19.1 before 1.19.5, and 1.20.0 before 1.20.3.
Original NVD description (English source)
Improper Neutralization of Parameter/Argument Delimiters vulnerability in elixir-plug plug allows an attacker to inject or override HTTP cookie attributes. The Plug.Conn.Cookies.encode/2 function in lib/plug/conn/cookies.ex builds the Set-Cookie response header by interpolating the cookie value and its path, domain, same_site, and extra attributes directly into the header without neutralizing the ; delimiter that separates cookie attributes. An application that places attacker-controlled data into a cookie value or attribute (for example via Plug.Conn.put_resp_cookie/4 when reflecting a username or preference) lets an attacker inject a ; to append or override cookie attributes (such as Domain and Path scope, or dropping the Secure and HttpOnly flags), enabling cookie tossing and session fixation. Carriage return, line feed, and null bytes are rejected by Plug.Conn header validation, so HTTP response splitting is not possible, but attribute injection through ; is not prevented. This issue affects plug: from 0.1.0 before 1.16.6, from 1.17.0 before 1.17.4, from 1.18.0 before 1.18.5, from 1.19.1 before 1.19.5, and from 1.20.0 before 1.20.3.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

