Подборка лучших практик по усилению безопасности Windows-доменов 
Подборка лучших техник усиления безопасности для Windows.
Создано gepeto42 и PaulWebSec, но во многом вдохновлено исследованиями PyroTek3!
Краткое содержание
В этом документе обобщена информация, связанная с докладом Pyrotek и Harmj0y на DerbyCon под названием «111 Attacking EvilCorp Anatomy of a Corporate Hack». Видео и слайды доступны ниже.
Он также включает техники усиления защиты, необходимые для предотвращения других атак, включая методы, обсуждавшиеся gepeto42 и joeynoname во время их доклада на THOTCON 0x7.
Чего-то не хватает? Создайте Pull Request и добавьте это.
Первоначальный доступ
- Никакие усилия по усилению защиты не должны идти в ущерб обновлению операционных систем.
- Разверните EMET на рабочих станциях (снят с поддержки в июле 2018 года — рассмотрите возможность оставить EMET для Windows 7, но отдайте приоритет переходу на Windows 10 и Edge).
- Используйте AppLocker, чтобы блокировать запуск исполняемого содержимого из пользовательских расположений (домашний каталог, путь профиля, temp и т.д.).
- Нужна защита от DMA-атак? Вот вам и интересная статья от Synacktiv о DMA-атаках
- Управляйте выполнением PowerShell с помощью AppLocker или ограниченного режима языка (constrained language mode).
- Включите журналирование PowerShell (v3+) и журналирование процессов команд.
- Блокируйте макросы Office (Windows и Mac) для содержимого, загруженного из Интернета.
- Разверните средства безопасности, отслеживающие подозрительное поведение. Рассмотрите использование WEF для пересылки только интересующих событий в вашу SIEM или систему журналирования.
- Ограничьте возможности, блокируя/ограничивая вложения через электронную почту/загрузки:
- Расширения исполняемых файлов:
- (ade, adp, ani, bas, bat, chm, cmd, com, cpl,
crt, hlp, ht, hta, inf, ins, isp, job, js, jse, lnk, mda, mdb,
mde, mdz, msc, msi, msp, mst, pcd, pif, reg, scr, sct, shs,
url, vb, vbe, vbs, wsc, wsf, wsh, exe, pif, и т.д.)
- Файлы Office, поддерживающие макросы (docm, xlsm, pptm, и т.д.)
- Убедитесь, что эти типы файлов заблокированы.
- Блокируйте забытые/неиспользуемые расширения файлов Excel: IQY, SLK
- Измените программу по умолчанию для всего, что открывается с помощью Windows Scripting, на блокнот (сначала протестируйте!)
- bat, js, jse, vbe, vbs, wsf, wsh, hta, vbs и т.д.
- GPO: User Configuration -> Preferences -> Control Panel Settings -> Folder Options -> Open With
- Действие: Заменить
- Расширение файла: (расширение)
- Связанная программа: %windir%\system32\notepad.exe
- Использовать по умолчанию: Включено.
- Предотвращение активации OLE-пакетов в Office с помощью параметра реестра PackagerPrompt
Разведка
- Разверните Windows 10 и ограничьте перечисление локальных групп.
- Ограничьте взаимодействие между рабочими станциями.
- Повысьте безопасность чувствительных GPO.
- Оцените развертывание аналитики поведения (Microsoft ATA).
«Предотвращение» BloodHound:
- Используйте NetCease чтобы предотвратить перечисление сеансов без привилегий.
- Используйте Samri10 чтобы предотвратить сбор сведений о локальных администраторах без привилегий (это исправление уже существует в Windows 10 1607 и выше).
Горизонтальное перемещение
- Настройте GPO, чтобы запретить локальным учетным записям сетевую аутентификацию (KB2871997).
В дополнение к этому бюллетеню, статья Countercept рекомендует два других изменения в реестре:
- Установите
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\TokenLeakDetectDelaySecs = 30. Это приведет к очистке учетных данных вышедших пользователей через 30 секунд (имитируя поведение Windows 8.1+).
- Установите
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurityProviders\WDigest\UseLogonCredential = 0. Это предотвратит хранение учетных данных Wdigest в памяти, что также является поведением по умолчанию для Windows 8.1+.
- Убедитесь, что пароли локальных учетных записей администратора автоматически меняются (Microsoft LAPS), и удалите лишние локальные учетные записи администратора.
- Ограничьте взаимодействие между рабочими станциями (Windows Firewall).
- Проверьте psexec с действительными учетными данными между двумя рабочими станциями. Если это сработает, у вас проблема с горизонтальным перемещением.
Повышение привилегий
- Удалите файлы с паролями в SYSVOL (включая GPP).
- Убедитесь, что администраторы не входят в недоверенные системы (обычные рабочие станции), настроив ЗАПРЕТ назначения прав пользователей с помощью GPO.
- Предоставьте привилегированные рабочие станции доступа (Privileged Access Workstations) или PAW для всей работы с высокими привилегиями. Они никогда не должны иметь доступ к Интернету.
- Используйте управляемые учетные записи служб (Managed Service Accounts) для сервисных учетных записей, когда это возможно (FGPP)
- Для систем, не поддерживающих управляемые учетные записи служб, разверните политику паролей с мелкой гранулярностью (Fine-Grained Password Policy), чтобы пароли были длиннее 32 символов.
- Убедитесь, что все компьютеры используют NTLMv2 и Kerberos, запретите LM/NTLMv1.