Ошибки конфигурации служб
Незаключённые в кавычки пути и слабые разрешения
«Ошибки конфигурации служб» — бесплатный урок Ethical Hacking Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ethical Hacking Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ethical Hacking Academy содержит 4 уроков всего.
Сервисы как вектор атаки
Сервисы Windows часто работают от имени SYSTEM и запускаются автоматически. Неправильно настроенный сервис — со слабыми правами, перехватываемым путем к двоичному файлу или доступным для записи исполняемым файлом — позволяет выполнять код от имени SYSTEM.
Незаключенные в кавычки пути к сервисам
Если путь к двоичному файлу сервиса содержит пробелы и не заключен в кавычки, Windows перебирает каждый префикс, разделенный пробелом, добавляя .exe. Для C:\Program Files\My App\svc.exe система проверяет C:\Program.exe, затем C:\Program Files\My.exe и так далее.
wmic service get Name,PathName,StartName | findstr /i /v "\""Эксплуатация незаключенных в кавычки путей
Если Вы можете записывать в один из промежуточных каталогов (например, в C:\Program Files\ на неправильно настроенной системе), поместите туда вредоносный My.exe. Когда сервис SYSTEM запустится, Windows выполнит Ваш двоичный файл.
icacls "C:\Program Files"
# need write access to the unquoted segmentСлабые права доступа к сервису
Если у Вашего пользователя есть право SERVICE_CHANGE_CONFIG для сервиса SYSTEM, Вы можете изменить путь к его двоичному файлу, указав полезную нагрузку, и перезапустить сервис. Проверьте списки управления доступом сервисов с помощью AccessChk.
accesschk.exe -uwcqv "Users" *
# look for SERVICE_ALL_ACCESS / SERVICE_CHANGE_CONFIGИзменение пути к двоичному файлу сервиса
Имея права на изменение конфигурации, задайте для binPath команду, которая добавит Вас в группу администраторов, а затем перезапустите сервис, чтобы он выполнил её от имени SYSTEM.
sc config vulnsvc binPath= "cmd /c net localgroup administrators user /add"
sc stop vulnsvc & sc start vulnsvcСлабые права доступа к двоичному файлу
Даже без прав на изменение конфигурации, если сам исполняемый файл сервиса доступен Вашему пользователю для записи, перезапишите его своей полезной нагрузкой и перезапустите сервис (или дождитесь перезагрузки).
icacls "C:\Program Files\VulnApp\service.exe"
# (M) or (F) for Users/Everyone = writableПерехват DLL
Если сервис SYSTEM загружает DLL по имени из доступного для записи каталога в порядке поиска, поместите туда вредоносную DLL. При следующем запуске сервис загрузит Ваш код. Это перехват DLL / злоупотребление порядком поиска.
Злоупотребление сервисами через реестр
Конфигурация сервисов хранится в разделе HKLM\SYSTEM\CurrentControlSet\Services. Доступ на запись к ключу реестра сервиса позволяет изменить его ImagePath — это еще один путь к управлению тем, что выполняется от имени SYSTEM.
reg query "HKLM\SYSTEM\CurrentControlSet\Services\vulnsvc"Перезапуск сервисов
Повышение привилегий часто зависит от запуска перезапуска. Если Вы не можете напрямую остановить или запустить сервис, может потребоваться перезагрузка — либо можно выбрать сервис с автоматическим перезапуском. Проверьте, может ли Ваша учетная запись перезапускать его.
sc qc vulnsvc # query config
sc query vulnsvc # current stateПоиск этих проблем с помощью PowerUp
Проверки PowerUp (Get-ServiceUnquoted, Get-ModifiableServiceFile, Get-ModifiableService) автоматизируют поиск всех этих неправильных настроек сервисов и даже создают команды для эксплуатации.
powershell -ep bypass
Import-Module .\PowerUp.ps1
Invoke-AllChecksЗащита и этика
Защитникам следует заключать все пути к сервисам в кавычки, ограничивать списки управления доступом к сервисам и двоичным файлам, запускать сервисы с минимально необходимыми привилегиями и защищать ключи реестра сервисов. Эксплуатируйте эти проблемы только в разрешенных системах.
Быстрая проверка
Проверьте свои знания о неправильных настройках сервисов.
Повторение
Вы изучили повышение привилегий через сервисы:
- Незаключенные в кавычки пути к сервисам позволяют разместить двоичный файл в более раннем сегменте пути
- Слабые права доступа к сервису позволяют изменить
binPath - Также работают доступные для записи двоичные файлы сервисов и перехват DLL
- PowerUp автоматизирует поиск и эксплуатацию
Далее: олицетворение маркера.
Часто задаваемые вопросы
Урок «Ошибки конфигурации служб» бесплатный?
Да — полный текст урока «Ошибки конфигурации служб» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ethical Hacking Academy, подпишись на CoddyKit PRO. Курс Ethical Hacking Academy содержит 4 уроков всего.
Чему я научусь в уроке «Ошибки конфигурации служб»?
Незаключённые в кавычки пути и слабые разрешения Ты практикуешь Ethical Hacking Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Ethical Hacking Academy?
Предыдущий опыт не требуется. Ethical Hacking Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Ошибки конфигурации служб»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Ethical Hacking Academy?
Да. Каждый урок Ethical Hacking Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Перечисление Windows
- Ошибки конфигурации служб
- Олицетворение токенов
- Сбор учётных данных