English version →
Webアプリケーション
CVE-2026-71259 high CVSS 8.6

ESPHome through 2026.7.0-dev contains an operator-precedence bug in the cv.url() validator in...

概要

ESPHome through 2026.7.0-dev contains an operator-precedence bug in the cv.url() validator in...

原文の説明

取得元が公開している説明をそのまま載せています (多くは英語)。

ESPHome through 2026.7.0-dev contains an operator-precedence bug in the cv.url() validator in esphome/config_validation.py: if parsed.scheme and parsed.netloc or parsed.scheme == "file": return parsed.geturl(). Because and binds tighter than or, any file: URI passes validation regardless of netloc. This validator gates the url: field of the external_components YAML directive's git source schema, which is passed to git clone (git supports file:// natively). A crafted external_components block with url: "file:///attacker/repo" clones an attacker-controlled local path, which is then added to Python's import machinery via ESPHome's component loader, executing arbitrary Python code when the YAML configuration is processed (e.g. via esphome config/esphome run).

出典: NIST National Vulnerability Database NVD GitHub Advisory

AI要約

外部の AI が作成した要約です。誤りを含むことがあります。重要な判断の前に、下の原文と参照URLを確認してください。

ESPHomeのバージョン2026.7.0-devまでに、cv.url()バリデータで演算子優先度のバグがあります。andはorよりも強く結びつくため、任意のfile: URIが検証を通過する可能性があります。このバグを利用すると、攻撃者が作成したローカルパスをクローンし、Pythonのインポート機構に追加して任意のPythonコードを実行できます。

❓ 何が問題か

ESPHomeのcv.url()バリデータでの演算子優先度バグ。

📍 影響範囲

esphome/config_validation.py

🔥 重要度

任意のPythonコードを実行可能で深刻。

🔧 修正方法

演算子優先度を修正し、or条件が期待通りに機能するようにする。

🛡️ 暫定回避

不正なfile: URIの使用を制限。

🔍 検知方法

設定ファイル中の不正なfile: URIを確認する。

参照URL

当サイトでは、アクセス解析と広告の効果測定のために Cookie を使います。株式会社Game のサイト共通の設定です。 詳しく