Файл unattend.xml с подложными учетными данными (Win)

Описание приманки

Приманка представляет из себя файл unattend.xml. Это файл автоматической установки с размещенными внутри подложными учетными данными. приманка создается путем формирования заранее заданной структуры файла unattend.xml с последующей записью в файловую систему.

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

Путь размещения по умолчанию: C:\\Windows\\Panther\\Unattend.xml. Также могут быть выбраны следующие пути размещения файла:

  • C:\\unattend.xml.

  • C:\\Windows\\Panther\\Unattend.xml.

  • C:\\Windows\\Panther\\Unattend\\Unattend.xml.

Приманка не создается при существующем по заданному пути файле автоматической установки. Это защита от перезаписи реальной конфигурации unattend.xml.

Приманка также предполагает гибкую настройку содержимого файла. Могут быть использованы как стандартная локальная учетная запись администратора (Administrator), так и любая другая (которая будет добавлена в группу Local admins). Также есть возможность задать доменные учетные данные для присоединения компьютера к домену. Пароль от учетной записи генерируется случайном образом.

Для мониторинга состояния приманки проверяется SHA256 хеш содержимого unattend.xml.

Приманкой возможно отслеживать попытки:

  • Входа под подложной учетной записью.

  • Чтения данных из подложного файла unattend.xml.

Пример конфигурации

# Учетные данные в файле автоматической установки # По умолчанию - C:\Windows\Panther\Unattend.xml - name: fake_creds_in_unattend_xml kind: UnattendXML enabled: true spec: username: svc-local-service filePath: C:\\Windows\\Unattend.xml domain: WORKGROUP plainText: false minPassLen: 16 maxPassLen: 25 joinDomainCreds: username: svc-ad-connect domain: lab.ru machineObjectOU: OU=Workstations,DC=lab,DC=ru remediation: enabled: true strategy: recreate mode: fixed maxAttempts: 3 backoffSchedule: - 5s - 30s - 60s

Описание конфигурации

Вводные параметры

  • name — имя приманки, обязательное поле.

  • kind — тип приманки, обязательное поле.

  • enabled — признак активности приманки, обязательное поле.

    Значение false отключает приманку.

Подсекция spec

  • username — имя подложного пользователя. Обязательное поле. Рекомендуется выбирать имя реально существующей УЗ в домене, и исходить из того, что данная учетная запись не используется или ее использование контролируется, доступ к ней разрешен только с определенных хостов.

    Значение по умолчанию: Administrator.

  • domain — домен подложного пользователя. Опциональное поле.

    Значение по умолчанию: пустая строка.

  • filePath — абсолютный путь к файлу-приманке unnatend.xml. Обязательное поле.

    Значение по умолчанию: C:\\Windows\\Panther\\Unattend.xml.

  • plainText — пароль в открытом виде или Base64. Опциональное поле.

    Возможные значения: true — открытый вид, false (по умолчанию) — закодированный.

  • minPassLen — минимальная длина пароля. Опциональное поле. Пароль от учетной записи генерируется случайном образом. Значение должно быть > либо = 1 и < либо = maxPassLen.

    Значение по умолчанию: 8.

  • maxPassLen — максимальная длина пароля. Опциональное поле. Значение должно быть > либо = 1 и > либо = minPassLen.

    Значение по умолчанию: 16.

  • joinDomainCreds — параметры УЗ для присоединения к домену:

    • username — имя пользователя для присоединения к домену. Опциональное поле.

      Значение по умолчанию: empty.

    • domain — домен присоединения. Опциональное поле.

      Значение по умолчанию: empty.

    • machineObjectOU — имя OU в которой нужно разместить машину. Опциональное поле.

      Значение по умолчанию: empty.

Подсекция remediation

Подсекция remediation является опциональной и содержит параметры автоматического восстановления приманки:

  • enabled — признак активности автоматического восстановления, обязательное поле.

    Значение false отключает восстановление.

    Значение по умолчанию: true.

  • strategy — стратегия автоматического восстановления приманки, обязательное поле.

    Возможные значения:

    • recreate (по умолчанию) — пересоздание приманки.

    • alert — оповещение о падении приманки.

  • mode — режим автоматического восстановления приманки, обязательное поле.

    Возможные значения:

    • fixed (по умолчанию) — ограниченное количество попыток восстановления.

    • infinite — неограниченное количество попыток восстановления.

  • maxAttempts — количество попыток автоматического восстановления приманки. Обязательное поле, если mode: fixed. При mode: infinite параметр игнорируется, попытки продолжаются до успеха.

    Значение по умолчанию: 3.

  • backoffSchedule — промежуток времени между попытками автоматического восстановления приманки, опциональное поле.

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

    Значение по умолчанию: [5s, 30s, 60s, 5m, 15m, 30m, 60m].