製品・ソフトウェアに関する情報
Nine NinesのCowlibにおけるCRLF インジェクションの脆弱性
Title Nine NinesのCowlibにおけるCRLF インジェクションの脆弱性
Summary

nineninesのcowlibにおけるCRLFシーケンスの不適切な無害化(『CRLFインジェクション』)の脆弱性により、検証されていないクッキー名および値のフィールドを介してHTTPリクエストの分割およびクッキーのすり抜けが可能になります。cowlibのcow_cookie:cookie/1は、名前と値のペアのリストからクライアント側のCookieリクエストヘッダーを構築しますが、いずれのフィールドも検証しません。この関数に渡されるクッキー名または値を攻撃者が制御すると、シリアライズされたヘッダーに;、,、CR、LF、またはTAB文字を注入できます。これにより、一つのヘッダー内にクッキーをすり抜けさせる攻撃(例:「; admin=1」を注入して受信サーバーが正当とみなす幻のクッキーを導入する)およびHTTPリクエストヘッダーの分割(CRLFを注入して任意のヘッダーを追加し、共有アップストリームプロキシに対して完全な2番目のリクエストをすり抜ける)という2つの攻撃の種類が可能となります。デコーダ側(parse_cookie_name/1、parse_cookie_value/1)およびsetcookie/3は既にこれらの文字を検証して拒否していますが、エンコーダ側のみがこのチェックを欠いています。この問題はバージョン2.9.0以降のcowlibに影響します。

Possible impacts 当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 また、当該ソフトウェアが扱う情報の一部が書き換えられる可能性があります。 さらに、当該ソフトウェアは停止しません。 そして、この脆弱性を悪用した攻撃により、他のソフトウェアにも影響が及ぶ可能性があります。 
Solution

正式な対策が公開されています。ベンダ情報を参照して適切な対策を実施してください。

Publication Date May 11, 2026, midnight
Registration Date May 25, 2026, 10:24 a.m.
Last Update May 25, 2026, 10:24 a.m.
CVSS3.0 : 低
Score 3.2
Vector CVSS:3.0/AV:L/AC:H/PR:N/UI:N/S:C/C:N/I:L/A:N
Affected System
Nine Nines
Cowlib 2.9.0 から 2.16.1
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
その他
Change Log
No Changed Details Date of change
1 [2026年05月25日]
  掲載
May 25, 2026, 10:24 a.m.

NVD Vulnerability Information
CVE-2026-43969
Summary

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 header from a list of name-value pairs without validating either field. An attacker who controls the cookie names or values passed to this function can inject ;, ,, CR, LF, or TAB characters into the serialized header. This enables two classes of attack: cookie smuggling within a single header (e.g. injecting "; admin=1" to introduce a phantom cookie that the receiving server treats as authentic) and HTTP request header splitting (injecting CRLF to append arbitrary headers or smuggle a complete second request against a shared upstream proxy). The decoder side (parse_cookie_name/1, parse_cookie_value/1) and setcookie/3 already validate and reject these characters; the encoder alone is missing the check.

This issue affects cowlib from 2.9.0.

Publication Date May 12, 2026, 4:16 a.m.
Registration Date May 13, 2026, 4:10 a.m.
Last Update May 14, 2026, 12:57 a.m.
Related information, measures and tools
Common Vulnerabilities List