製品・ソフトウェアに関する情報
guzzlephpのpsr-7における複数の脆弱性
Title guzzlephpのpsr-7における複数の脆弱性
Summary

guzzlehttp/psr7はPHPで実装されたPSR-7 HTTPメッセージライブラリです。バージョン2.10.2未満には、生のHTTPリクエストメッセージを解析する際およびサーバ変数からサーバリクエストURIを導出する際に、Hostヘッダーの不適切な検証があります。攻撃者は`trusted.example@evil.example`のようなURI権限区切り文字を含む不正なHostヘッダーを提供できます。Host値がURIの構築に使用されると、この不正な値はURIのuserinfoおよびhostとして誤解釈される可能性があります。これにより、PSR-7リクエストURIのホストが元のHostヘッダー値と異なる場合があります。`GuzzleHttp\Psr7\Message::parseRequest()`やレガシーな1.xの`GuzzleHttp\Psr7\parse_request()`関数で攻撃者制御の生HTTPリクエストを解析する場合、または攻撃者制御のサーバ変数からサーバリクエストを構築し、その得られたURIホストをルーティング、許可リストチェック、転送判断に用いるアプリケーションが影響を受けます。影響を受ける転送やゲートウェイのシナリオでは、リクエストや認証情報が意図しないホストへ送信される可能性があります。この問題はバージョン2.10.2で修正されました。1.xはサポート終了済みで修正パッチは提供されません。一部の回避策として、不正なHTTPリクエストデータに対して`Message::parseRequest()`やレガシー`parse_request()`の呼び出し前、または解析済みのリクエストURIからルーティングや転送判断を行う前に、Hostヘッダーを`uri-host [ ":" port ]`形式として検証し、userinfo、パス、クエリ、フラグメントの区切り文字を含むHost値を拒否してください。

Possible impacts ・当該ソフトウェアが扱う情報の一部が外部に漏れる可能性があります。 ・当該ソフトウェアが扱う情報について、書き換えは発生しません。 ・当該ソフトウェアは停止しません。 
Solution

ベンダ情報を参照して適切な対策を実施してください。

Publication Date June 11, 2026, midnight
Registration Date June 16, 2026, 1:36 p.m.
Last Update June 16, 2026, 1:36 p.m.
CVSS3.0 : 警告
Score 5.3
Vector CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Affected System
guzzlephp
psr-7 2.10.2 未満
CVE (情報セキュリティ 共通脆弱性識別子)
CWE (共通脆弱性タイプ一覧)
ベンダー情報
Change Log
No Changed Details Date of change
1 [2026年06月16日]
  掲載
June 16, 2026, 1:36 p.m.

NVD Vulnerability Information
CVE-2026-48998
Summary

guzzlehttp/psr7 is a PSR-7 HTTP message library implementation in PHP. Versions prior to 2.10.2 contain improper Host header validation when parsing raw HTTP request messages and when deriving a server request URI from server variables. An attacker can provide a malformed Host header containing URI authority delimiters, such as `trusted.example@evil.example`. When the Host value is used to construct a URI, the malformed value can be reinterpreted as URI userinfo and host. This can cause the PSR-7 request URI host to differ from the original Host header value. Applications are affected if they parse attacker-controlled raw HTTP requests with `GuzzleHttp\Psr7\Message::parseRequest()` or the legacy 1.x `GuzzleHttp\Psr7\parse_request()` function, or if they build server requests from attacker-controlled server variables, then rely on the resulting URI host for routing, allow-list checks, or forwarding decisions. In affected forwarding or gateway scenarios, this may cause requests or credentials to be sent to an unintended host. The issue is patched in `2.10.2`. `1.x` is end-of-life and will not receive a patch. Some workarounds are available. Validate the `Host` header as `uri-host [ ":" port ]` before calling `Message::parseRequest()` or legacy `parse_request()` on untrusted HTTP request data, or before deriving routing and forwarding decisions from a parsed request URI. Reject Host values containing userinfo, path, query, or fragment delimiters.

Publication Date June 11, 2026, 10:16 p.m.
Registration Date June 12, 2026, 4:18 a.m.
Last Update June 15, 2026, 11:52 p.m.
Affected software configurations
Configuration1 or higher or less more than less than
cpe:2.3:a:guzzlephp:psr-7:*:*:*:*:*:*:*:* 2.10.2
Related information, measures and tools
Common Vulnerabilities List