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

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

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

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

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

Категории

Все категории
Loading categories
CVE-2019-9702_Symantec_Encryption_Desktop_LPE_PoC — Локальное повышение привилегий PoC для получения shell с правами SYSTEM для CVE-2019-9702 в Symantec Encryption Desktop. | Kitploit
Инструменты/GitHubGitHub/davidcarliez/cve-2019-9702_symantec_encryption_desktop_lpe_poc
Повышение привилегийАнализ уязвимостейЭксплуатацияПост-эксплуатацияТестирование на ПроникновениеРазработка Полезной НагрузкиЭксплуатация Бинарных Файлов
GitHub

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться
davidcarliez/cve-2019-9702_symantec_encryption_desktop_lpe_poc

CVE-2019-9702_Symantec_Encryption_Desktop_LPE_PoC

Локальное повышение привилегий PoC для получения shell с правами SYSTEM для CVE-2019-9702 в Symantec Encryption Desktop.

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

Symantec Encryption Desktop PGPwded.sys локальное повышение привилегий PoC

Этот репозиторий содержит proof-of-concept для пути локального повышения привилегий в драйвере фильтра хранения PGPwded.sys из Symantec Encryption Desktop, основанный на низкопривилегированном примитиве чтения/записи сырого диска.

PoC был разработан и протестирован против Symantec Encryption Desktop Pro 10.4.2 MP3. Другие версии не тестировались с этой реализацией.

Работа вдохновлена и основана на оригинальных открытых исследованиях Kyriakos Economou / Nettitude, теперь LRQA Nettitude:

  • CVE-2019-9702: Symantec Encryption Desktop Local Privilege Escalation - Exploiting an Arbitrary Hard Disk Read/Write Vulnerability Over NTFS

В их статье описываются проверка доступа к устройству PGPwded.sys, идея внедрения доверенного PGP-процесса, IOCTL-ы сырого чтения/записи и подходы к эксплуатации на основе NTFS. Этот PoC фокусируется на варианте перезаписи бинарного файла службы, срабатывающем после перезагрузки, и включает утилиту предварительной проверки, работающую только на чтение.

Содержимое репозитория

src/
  sym_portable_launcher.c      # single-EXE launcher; embeds and drops the staging worker
  portable_stage_worker.c      # injected worker; maps C:, opens PGPwded, stages payload
  spooler_payload.c            # service payload run by Spooler as LocalSystem after reboot
  sym_portable_precheck.c      # single-EXE read-only precheck launcher
  precheck_worker.c            # injected read-only diagnostic worker
  *_bytes.h                    # generated embedded payload/worker byte arrays

tools/
  sym_target_diag_lite.cmd     # wrapper script for collecting target diagnostics

Что делает эксплойт

Эксплойт стадии перезагрузки — это один 32-битный Windows-исполняемый файл. На высоком уровне:

  1. Низкопривилегированный пользователь запускает лаунчер из обычного доступного для записи пути, например C:\Users\Public.
  2. Лаунчер находит каталог установки Symantec PGP Desktop.
  3. Лаунчер сохраняет встроенную 32-битную DLL рабочего модуля в %TEMP%.
  4. Лаунчер запускает или использует доверенный исполняемый файл PGP Desktop и внедряет рабочий модуль в этот процесс.
  5. Рабочий модуль открывает \\.\PGPwdef из пути образа доверенного процесса PGP.
  6. Рабочий модуль сопоставляет C:\Windows\System32\spoolsv.exe с его экстентом NTFS и вычисляет соответствующий сектор диска.
  7. Рабочий модуль находит, какой объект диска PGP \Device\000000xx соответствует этому сектору C:, используя IOCTL сырого чтения.
  8. Рабочий модуль создаёт резервную копию текущего бинарного файла Spooler в C:\Users\Public\spoolsv.exe.orig.portable.
  9. Рабочий модуль сырой записью перезаписывает сектора, соответствующие spoolsv.exe, встроенной полезной нагрузкой службы LocalSystem.
  10. После перезагрузки служба Windows Spooler запускается как LocalSystem и выполняет полезную нагрузку.
  11. Полезная нагрузка открывает видимую командную строку SYSTEM в активной консольной сессии.

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

Сборка

Сборка с Linux-хоста с установленным MinGW-w64:

make

Ожидаемые результаты:

bin/sym_portable_reboot_stage32.exe  # exploit/stager
bin/sym_portable_precheck32.exe      # read-only precheck

Использование предварительной проверки

Сначала запустите предварительную проверку. Она предназначена для ответа на вопрос, присутствуют ли текущие условия эксплуатации, без изменения защищённых файлов.

C:\Users\Public\sym_portable_precheck32.exe
notepad C:\Users\Public\sym_portable_precheck.log

Жизнеспособная цель должна заканчиваться следующим:

[OK] current reboot exploit conditions

Если лог показывает отсутствие читаемых PGP PDO, или нет совпадения сектора C:, не запускайте эксплойт. Обычно это означает, что системный диск не управляется/не инструментирован Symantec WDE.

Для более полного отчёта о цели скопируйте оба файла ниже в один каталог и запустите CMD-обёртку:

sym_target_diag_lite.cmd
sym_portable_precheck32.exe

Затем выполните:

C:\Users\Public\sym_target_diag_lite.cmd
notepad C:\Users\Public\sym_target_diag_lite.log

Использование эксплойта

Запускайте эксплойт только на системах, где вам разрешено изменять защищённые системные файлы и где предварительная проверка пройдена.

Скопируйте стейджер в доступный для записи путь и запустите его от имени низкопривилегированного пользователя:

C:\Users\Public\sym_portable_reboot_stage32.exe

Проверьте логи подготовки:

type C:\Users\Public\sym_portable_launcher.log
type C:\Users\Public\sym_portable_stage.log

Если подготовка прошла успешно, лог рабочего модуля содержит:

STAGED_OK_REBOOT_TO_TRIGGER

Перезагрузите машину. После перезагрузки служба Spooler должна запустить полезную нагрузку как LocalSystem и открыть командную строку с заголовком:

SYSTEM_CMD_FROM_PORTABLE_REBOOT_LPE

Восстановление

Стейджер создаёт резервную копию перед перезаписью цели:

C:\Users\Public\spoolsv.exe.orig.portable

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

Известные ограничения

  • Текущий стейджер нацелен на C:\Windows\System32\spoolsv.exe.
  • Системный диск должен быть доступен через PGPwded.sys; одной установки Symantec недостаточно.
  • Системы, где C: управляется BitLocker и Symantec сообщает о диске как неуправляемом, как ожидается, не эксплуатируемы этим путём.
  • Текущий целевой файл должен быть одноэкстентным; рабочий модуль прерывает работу при фрагментации.
  • Текущий PoC требует перезагрузки для запуска выполнения.
  • Текущая полезная нагрузка намеренно очевидна: она открывает видимую командную строку SYSTEM.

Дисклеймер

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

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