TGViewer
purple shift purple shift @purpleshift · 3.04K subscribers
Post #124 2.44K
HashiCorp Vault — мощный opensource-инструмент, предназначенный для хранения, управления и защиты доступа к чувствительным данным: паролям, API-ключам, сертификатам. Он централизует работу с секретами, автоматизирует их выдачу и отзыв, а также обеспечивает тонкий контроль доступа в сложных распределённых инфраструктурах. Взаимодействие с Vault возможно через API, веб-интерфейс или CLI, а аутентификация поддерживает широкий спектр методов, включая интеграцию с Kubernetes и облачными платформами.

Однако... в августе этого года в HashiCorp Vault было обнаружено 9 уязвимостей, одна из которых (CVE-2025-6000) критическая (score 9.1). И это первая в истории публично задокументированная RCE-уязвимость в HashiCorp Vault, просуществовавшая 9 лет до исправления.

Уязвимость позволяет привилегированному оператору Vault создать подконтрольный файл аудита и зарегистрировать его как плагин, чтобы получить возможность выполнения произвольного кода.

Для эксплуатации нужно:

0. Иметь root токен. Его получение выходит за рамки данной статьи, однако стоит упомянуть, что связка нескольких CVE даёт возможность это сделать: CVE-2025-6037 позволяет имперсонироваться через уязвимость проверки сертификатов, CVE-2025-5999 позволяет повысить привилегии до root.

Условие является необходимым, так как для создания аудита и регистрации плагина обычно нужны привилегии root.

1. Определить директорию с плагинами. При попытке загрузить несуществующий файл эндпоинт возвращает сообщение об ошибке, которое содержит полный путь к директории. Достаточно отправить

POST /v1/sys/plugins/catalog/non_existing_name 


и в ответ получить

1 error occurred:\n\t* failed to verify plugin plugin \"non_existing_name\" version \"v1.0.0\": extracted artifact directory not found: /home/vault/vault_plugins/non_existing_name_1.0.0_linux_amd64\n\n 


Полный путь до директории плагинов нужен для записи файла аудита в эту директорию. А запись именно в этот каталог необходима для последующей загрузки файла в качестве плагина. Плагины могут быть загружены только из этой директории.

2. Записать файл аудита в каталог плагинов. Для этого зарегистрировать аудит с такими параметрами:

file_path (путь к файлу аудита) = "/home/vault/vault_plugins/script.sh"

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

mode (права на файл аудита) = "0755"

Файл аудита должен быть исполняемым (rwxr-xr-x)

prefix (префикс будет добавлен перед каждым логом) = "#!/bin/bash\n(some bash payload)"

Эта часть содержит наш пейлоад. Содержимое префикса будет выполняться при загрузке плагина.

3. Зарегистрировать плагин. Для регистрации плагина необходимо указать его sha256, однако тут есть загвоздка: лог аудита содержит различные временные метки, а также хэшированные данные, предсказать которые практически невозможно. Поэтому для получения точной копии лога аудита, можно предварительно зарегистрировать еще один аудит, транслирующий логи на подконтрольный нам сокет. В этом случае добавляется шаг по удалению аудита с префиксом перед подсчетом sha256.

После регистрации исполняемого файла в качестве плагина, он выполняется от имени пользователя vault.

Как обнаружить эксплуатацию CVE-2025-6000:

1. Корреляция событий из шагов выше явно укажет на попытку эксплуатации:

- Попытка регистрации несуществующего плагина;
- Cоздание аудита с указанием prefix и mode;
- Удаление недавно созданного аудита (также рекомендуем мониторить удаление аудита в принципе, так как это событие само по себе должно вызывать подозрения);
- Регистрация подозрительного плагина.

2. Отслеживайте аномалии в цепочках процессов от vault. Например, запуск скриптов.

Методы защиты:

Уязвимость CVE-2025-6000 исправлена в Vault Community Edition 1.20.1 и Vault Enterprise 1.20.1, 1.19.7, 1.18.12 и 1.16.23.

Поэтому стоит обновиться до этих версий. В исправленных версиях аудит с префиксом требует явного указания в конфигурации vault, а также аудит не может использовать файлы с правами на выполнение (0777, 0755 и т.д.) и не может быть записан в директорию плагинов.
  • 👍 18
  • 🔥 8
  • ⚡ 4
  • ❤ 2
  • 🆒 2
More from @purpleshift
  1. Sep 21, 2026В конце лета число подписчиков нашего канала перевалило за 3 тысячи. Мы конечно же поздрав…
  2. Sep 16, 2026«Мир стоит на кодах и шифрах, Джон. Многомиллионные охранные системы в банках и простеньки…
  3. Sep 11, 2026Финал соревнований VolgaCTF 2026 пройдёт с 16 по 18 сентября в Самаре. И на этом мероприят…
  4. Sep 7, 2026В начале августа мы рассказали, что хакерская группировка Labooboo (Toy Ghouls, Bearlyfy,…
  5. Sep 4, 2026Атаки с использованием NTFS-потоков в Windows давно стали классикой. В Linux-средах про ра…
  6. Sep 1, 2026Cypher-инъекция для атаки на базу данных Neo4j возникает по тем же причинам, что и SQL‑инъ…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →