Qrtr ns что это
Давайте уже разберемся в DNS
Внимательный читатель найдет на этой картинке IPv6
Люди часто озадачены доменами. Почему мой сайт не работает? Почему эта хрень поломана, ничего не помогает, я просто хочу, чтобы это работало! Обычно, вопрошающий или не знает про DNS, или не понимает фундаментальных идей. Для многих DNS — страшная и непонятная штука. Эта статья — попытка развеять такой страх. DNS — это просто, если понять несколько базовых концепций.
Что такое DNS
DNS расшифровывается как Domain Name System. Это глобальное распределенное хранилище ключей и значений. Сервера по всему миру могут предоставить вам значение по ключу, а если им неизвестен ключ, то они попросят помощи у другого сервера.
Базовые штуки
Давайте взглянем на маппинг между именем и адресом:
Здесь есть только одна интересная деталь: информация о самом запросе. Говорится, что мы запросили запись и получили ровно один ответ. Вот:
Оставшаяся часть ответа описывает сам ответ:
Как видите, при обычном DNS-запросе происходит куча всего. Каждый раз, когда вы открываете веб-страницу, браузер делает десятки таких запросов, в том числе для загрузки всех внешних ресурсов вроде картинок и скриптов. Каждый ресурс отвечает за минимум один новый DNS-запрос, и если бы DNS не был рассчитан на сильное кэширование, то трафика генерировалось бы очень много.
Корневые DNS-сервера обслуживаются различными компаниями и государствами по всему миру. Изначально их было мало, но интернет рос, и сейчас их 13 штук. Но у каждого из серверов есть десятки или сотни физических машин, которые прячутся за одним IP.
Другие типы
Что не так с CNAME
Запросы к другим серверам
Давайте представим, что конфигурация DNS испорчена. Вам кажется, что вы исправили проблему, но не хотите ждать когда обновится кэш чтобы удостовериться. С помощью dig можно сделать запрос к публичному DNS-серверу вместо своего дефолтного, вот так:
Типичные ситуации
Давайте рассмотрим типичные ситуации, знакомые многим веб-разработчикам.
Редирект домена на www
Этот IP принадлежит Namecheap’у, и там крутится маленький веб-сервер, который просто делает перенаправление на уровне HTTP на адрес http://www.iskettlemanstillopen.com :
CNAME для Heroku или Github
Wildcards
Заключение
Надеюсь, теперь у вас есть базовое понимание DNS. Все стандарты описаны в документах:
Есть еще пара интересных RFC, в том числе 4034, который описывает стандарт DNSSEC и 5321, который описывает взаимосвязь DNS и email. Их интересно почитать для общего развития.
Qrtr ns что это
Тема на XDA и пост
OrangeFox Recovery UnofficialOrangeFox-20200219-cheeseburger.img ( 34.71 МБ )
В теме нет куратора. Если в теме есть пользователь, желающий стать Куратором и соответствующий Требованиям для кандидатов, он может подать заявку, создав новую тему в разделе Хочу стать Куратором (предварительно изучив Правила и рекомендации для Кураторов). До назначения куратора, по вопросам наполнения шапки, обращайтесь к модераторам раздела через кнопку под сообщениями, на которые необходимо добавить ссылки.
1) Так и должно быть. Hide = спрятать. То есть включая данную функцию в прячете рут. Это нормально.
3)Уберите запрос пароля перед включением.
1) Установите драйвера на ПК, скачайте и распакуйте пакет ADB на ПК, и подключите смартфон к ПК, для того чтобы убедится в том что драйвера установлены правильно.
2) Перезагрузитесь в режим fastboot, для этого ВЫКЛ ючите смартфон, и ВКЛ ючите нажав одновременно комбинацию клавиш Громкость + (плюс) и кнопку питания (блокировки).
3) Откройте предварительно скачанный пакет ADB (Для этого перейдите в местоположение, где распакован сам пакет ADB, для примера будет использоватся расположение «C:\ADB«, нажмите на папку «ADB» с зажатой клавишей «SHIFT» и правой кнопкой мышки (ПКМ) и выберите пункт «Открыть окно команд«.
4) Подключите смартфон к ПК через USB.
5) Передите на командную строку и напечатайте
9) Подтвердите что Вы действительно xотите сделать разработчику на смартфоне: потвердите операцию разблокировки выбрав кнопкой громкости пункт «yes» и выбрав с помощью кнопки питания.
10) Ваш OnePlus перезагрузится, покажет «предупреждение безопасности«, перезагрузится в стоковое рекавери и сделает очистку всеx данныx.
11) Ваш смартфон перезагрузится в систему. Поздравляю, Вы открыли бутлудер. Теперь можете ставить кастомные прошивки и кастомный рекавери TWRP.
Что такое name-серверы (NS)
DNS-сервер (Name-сервер, nameserver, NS) — сервер, преобразующий доменные имена, с которыми работают пользователи, в понятные компьютерам IP-адреса или в обратном направлении. Обычно не делают разницы между понятиями NS и DNS-серверов.
Какие функции выполняет name-сервер?
Привычные пользователям домены не являются настоящими адресами хостов в сети, для идентификации которых на практике используются IP-адреса. Работа с ними неудобна для пользователей, поэтому применяется система DNS-серверов. Они выполняют несколько базовых функций.
Существует 3 основных типа DNS-серверов:
Что такое дочерние NS-серверы?
Дочерние DNS-серверы настраиваются на основе используемого родительского домена. Например, для example.net дочерние NS будут выглядеть так:
Дочерние DNS-серверы позволяют расположить DNS-серверы для домена на его поддоменах.
При делегировании домена с использованием дочерних DNS-серверов потребуется помимо их имен указать и IP-адреса.
Какие бывают ресурсные записи для домена?
Для того, чтобы настроить на своем домене сайт, почту или другие сервисы, потребуется в зоне домена указать соответствующие сервисам ресурсные записи.
Настройка ресурсных записей выполняется либо хостинг-провайдером автоматически, при создании сайта или почты в панели управления хостингом, либо администратором домена вручную с помощью специального редактора.
Базовые типы записей, с которыми работают администраторы и владельцы сайтов:
Корректность заполнения ресурсных записей важна для успешного делегирования домена и дальнейшего функционирования службы name-серверов. Главное правило оформления NS-записей — не забывать ставить точку после имени. В противном случае возможны ошибки и служба DNS не сможет направить запрос по правильному адресу.
Какие DNS-серверы необходимо указывать для домена?
Список DNS-серверов услуг RU-CENTER вы найдете в статье.
Что такое NS-сервер и как он работает
Материал из DiPHOST.Ru wiki system
В интернете каждый компьютер или сервер имеет свой IP-адрес и все обращения к тому или иному серверу ведутся именно по IP-адресам. Однако, IP-адреса сложно запомнить, поэтому была придумана система доменных имен, когда вы обращаетесь к серверу по легко запоминаемому доменному имени.
Содержание
Как это работает система DNS?
Когда вы набираете в браузере доменное имя MYDOMAIN.COM, ваш компьютер для первым делом обращается к DNS-серверу, указанному в настройках вашего соединения с интернетом. DNS-сервер нужен для того, чтобы преобразовать запрошенное доменное имя в IP-адрес.
После чего обращается к одному из полученного списка NS-серверов и запрашивает уже информацию относительно домена MYDOMAIN.COM. Пример ответа:
DNS-сервер отдает вашему компьютеру полученную информацию и он обращается к нужному IP-адресу. Но, как мы видим, здесь достаточно много разнообразной информации. Рассмотрим все подробнее.
Что такое делегирование домена
Что такое дочерние NS-серверы
NS-запись у домена bz8.ru
Как видите, все просто. Такая настройка у зарубежных регистраторов называется Child NameServers
Какие бывают NS-записи для домена
MX-записей тоже может быть несколько. MX-запись кроме имени сервера также имеет поле «Приоритет». Оно указывает, в каком порядке нужно обращаться к MX-серверам домена. Чем меньше значение приоритета, тем приоритетнее сервер.
Общие правила оформления записей на NS-сервере
Если в записи указано доменное имя, оно должно заканчиваться точкой, иначе к нему будет приклеено имя основного домена. Т.е. если указать запись
Атаки на домен
При проведении тестирований на проникновение мы довольно часто выявляем ошибки в конфигурации домена. Хотя многим это не кажется критичным, в реальности же такие неточности могут стать причиной компрометации всего домена.
К примеру, по итогам пентеста в одной компании мы пришли к выводу, что все доступные машины в домене были не ниже Windows10/Windows Server2016, и на них стояли все самые свежие патчи. Сеть регулярно сканировалась, машины хардились. Все пользователи сидели через токены и не знали свои «20-символьные пароли». Вроде все хорошо, но протокол IPv6 не был отключен. Схема захвата домена выглядела так:
К сожалению, такие популярные сертификации, как OSCP, GPEN или CEH, не учат проведению тестирования на проникновение Active Directory.
В этой статье мы рассмотрим несколько видов атак на Active Directory, которые мы проводили в рамках пентестов, а также используемые инструменты. Это ни в коем случае нельзя считать полным пособием по всем видам атак и инструментам, их действительно очень много, и это тяжело уместить в рамках одной статьи.
Итак, для демонстрации используем ноутбук на Kali Linux 2019 и поднятые на нем виртуальные хосты на VMware. Представим, что главная цель пентеста — получить права администратора домена, а в качестве вводных данных у нас есть доступ в корпоративную сеть компании по ethernet. Чтобы начать тестировать домен, нам понадобится учетная запись.
Получение учетной записи
Рассмотрим два самых распространенных, по моему мнению, метода, позволяющих получить логин и пароль доменной учетной записи: LLMNR/NBNS-спуфинг и атаку на протокол IPv6.
LLMNR/NBNS-спуфинг
Про эту атаку было сказано довольно много. Суть в том, что клиент рассылает мультикастные LLMNR- и широковещательные NBT-NS-запросы для разрешения имен хостов, если сделать это по DNS не удалось. На такие запросы может ответить любой пользователь сети.
Инструменты, которые позволяют провести атаку:
Полученный хеш мы можем сбрутить или выполнить NTLM-релей.
Атака на протокол IPv6
Если в корпоративной сети используется IPv6, мы можем ответить на запросы DHCPv6 и установить в качестве DNS-сервера на атакуемой машине свой IP-адрес. Так как IPv6 имеет приоритет над IPv4, DNS-запросы клиента будут отправлены на наш адрес. Подробнее об атаке можно прочитать тут.
После выполнения атаки на атакуемой рабочей станции появится новый DNS-сервер с нашим IPv6-адресом.
Атакуемые машины будут пытаться аутентифицироваться на нашей машине. Подняв SMB-сервер с помощью утилиты smbserver.py, мы сможем получить хеши паролей пользователей.
Действия с захваченными хешами
Следующим шагом мы можем либо выполнить криптографическую атаку на хеши паролей и получить пароль в открытом виде, либо выполнить NTLM relay.
Перебор пароля
Тут все просто: берем хеш пароля, hashcat
и брутим. Пароль либо удастся получить, либо нет 🙂
Пароль пользователя Harvey был восстановлен — Pbvf2019
NTLM Relay
Также мы можем выполнить NTLM-релей. Предварительно убедившись, что не используется SMB Signing, применяем утилиту ntlmrelayx.py и проводим атаку. Здесь опять же, в зависимости от цели, выбираем нужный нам вектор. Рассмотрим некоторые из них.
Доступ к атакуемой машине по протоколу SMB
Выполним атаку с ключом i.
При удачной атаке мы сможем подключиться к удаленной машине с помощью netcat.
Cбор информации о домене
В данном случае выполняем релей на контроллер домена.
При успешном проведении атаки получим подробную информацию о домене:
Добавление нового компьютера в домен
Каждый пользователь по умолчанию имеет возможность создать до 10 компьютеров в домене. Чтобы создать компьютер, нужно выполнить релей на контроллер домена по протоколу ldaps. Создание пользователей и компьютеров по незашифрованному соединению ldap запрещено. Также не удастся создать учетную запись, если будет перехвачено соединение по SMB.
Как видно на рисунке, нам удалось создать компьютер RORYOTGS$.
При создании более 10 компьютеров получим ошибку следующего вида:
Используя учетные данные компьютера RORYOTGS$, мы можем выполнять легитимные запросы к контроллеру домена.
Сбор информации о домене
Итак, у нас есть учетная запись доменного пользователя либо компьютера. Для продолжения тестирования нам нужно собрать доступную информацию для дальнейшего планирования атак. Рассмотрим некоторые инструменты, которые помогут нам определиться с поиском наиболее критичных систем, спланировать и выполнить атаку.
BloodHound
Один из самых важных инструментов, который используется практически во всех внутренних тестированиях на проникновение. Проект активно развивается и дополняется новыми фичами.
В качестве базы данных используется Neo4j, имеющая свой синтаксис, что позволяет выполнять кастомные запросы. Подробнее ознакомиться с синтаксисом можно тут.
Также разработчики предоставляют скрипт DBCreator.py, который позволяет сгенерировать случайную базу для проведения тестов.
Neo4j имеет REST API. Существуют различные утилиты, которые могут подключаться к базе и использовать полученные данные:
CypherDog
CypherDog — оболочка BloodHound, написанная на powershell. Включает в себя 27 командлетов.
Cmdlet | Synopsis |
Get-BloodHoundCmdlet | BloodHound RTFM — Get Cmdlet |
Send-BloodHoundPost | BloodHound POST — Cypher to REST API |
Get-BloodHoundNode | BloodHound Node — Get Node |
Search-BloodHoundNode | BloodHound Node — Search Node |
New-BloodHoundNode | BloodHound Node — Create Node |
Set-BloodHoundNode | BloodHound Node — Update Node |
Remove-BloodHoundNode | BloodHound Node — Delete Node |
Get-BloodHoundNodeList | BloodHound Node — Get List |
Get-BloodHoundNodeHighValue | BloodHound Node — Get HighValue |
Get-BloodHoundNodeOwned | BloodHound Node — Get Owned |
Get-BloodHoundNodeNote | BloodHound Node — Get Note |
Set-BloodHoundNodeNote | BloodHound Node — Set Notes |
Get-BloodHoundBlacklist | BloodHound Node — Get Blacklist |
Set-BloodHoundBlacklist | BloodHound Node — Set Blacklist |
Remove-BloodHoundBlacklist | BloodHound Node — Remove Blacklist |
Get-BloodHoundEdge | BloodHound Edge — Get Target |
Get-BloodHoundEdgeReverse | BloodHound Edge — Get Source |
Get-BloodHoundEdgeCrossDomain | BloodHound Edge — Get CrossDomain |
Get-BloodHoundEdgeCount | BloodHound Edge — Get Count |
Get-BloodHoundEdgeInfo | BloodHound Edge — Get Info |
New-BloodHoundEdge | BloodHound Edge — Create Edge |
Remove-BloodHoundEdge | BloodHound Edge — Delete Edge |
Get-BloodHoundPathShort | BloodHound Path — Get Shortest |
Get-BloodHoundPathAny | BloodHound Path — Get Any |
Get-BloodHoundPathCost | BloodHound Path — Get Cost |
Get-BloodHoundPathCheap | BloodHound Path — Get Cheapest |
Get-BloodHoundWald0IO | BloodHound Path — Get Wald0 Index |
По умолчанию для доступа к базе neo4j требуется аутентификация. Отключить аутентификацию можно, отредактировав файл neo4j.conf. В нем необходимо раскомментировать строку dbms.security.auth_enabled=false. Но так делать не рекомендуется, поскольку любой пользователь сможет подключиться к базе по адресу 127.0.0.1:7474 (конфигурация по умолчанию). Более подробно об аутентификации и авторизации в neo4j можно прочитать тут.
GoFetch
GoFetch использует граф, созданный в bloodhound для планирования и выполнения атаки.
gt-generator
gt-generator, используя данные BloodHound, упрощает создание golden-тикетов. Для получения golden-тикета необходимы только имя пользователя и хеш пароля пользователя KRBTGT.
PowerView
PowerView — Powershell-фреймворк, входящий в состав PowerSploit. Ниже приведен список некоторых командлетов, которые помогут при сборе информации о домене.
Adidnsdump
При использовании интегрированного DNS в Active Directory любой пользователь домена может запросить все DNS-записи, установленные по умолчанию.
Атаки на домен
Теперь, имея информацию о домене, мы переходим к следующей фазе тестирования на проникновение — непосредственно к атаке. Рассмотрим 4 потенциальных вектора:
Roasting
Этот вид атаки нацелен на протокол Kerberos. Можно выделить 2 вида атаки типа Roasting:
Kerberoast
Впервые атака была продемонстрирована пользователем timmedin на DerbyCon в 2014 году (video). При успешном проведении атаки мы сможем перебрать пароль сервисной УЗ в офлайн-режиме, не боясь блокировки пользователя. Довольно часто у сервисных учетных записей бывают избыточные права и бессрочный пароль, что может позволить нам получить права администратора домена.
Чтобы понять суть атаки, рассмотрим, как работает Kerberos.
1. Пароль преобразуется в NTLM-хеш, временная метка шифруется хешем и отправляется на KDC в качестве аутентификатора в запросе TGT-тикета (AS-REQ). Контроллер домена (KDC) проверяет информацию пользователя и создает TGT-тикет.
2. TGT-тикет шифруется, подписывается и отправляется пользователю (AS-REP). Только служба Kerberos (KRBTGT) может открыть и прочитать данные из TGT-тикета.
3. Пользователь представляет TGT-тикет контроллеру домена при запросе TGS-тикета (TGS-REQ). Контроллер домена открывает TGT-тикет и проверяет контрольную сумму PAC.
4. TGS-тикет шифруется NTLM-хешем пароля сервисной учетной записи и отправляется пользователю (TGS-REP).
5. Пользователь предоставляет TGS-тикет компьютеру, на котором запущена служба (AP-REQ). Служба открывает TGS-тикет с помощью своего NTLM-хеша.
6. Доступ к сервису предоставлен (AS-REP).
Получив TGS-тикет (TGS-REP), мы можем подобрать пароль сервисной учетной записи в офлайн-режиме. Например, с помощью hashcat.
Согласно RFC396, для протокола Kerberos зарезервировано 20 типов шифрования. Типы шифрования, которые используются сейчас, в порядке приоритета:
Отключать RC4_HMAC_MD5 необходимо на уровне домена.
Атака Kerberoasting имеет 2 подхода.
2. Новый метод. machosec заметил, что класс KerberosRequestorSecurityToken имеет метод GetRequest, который извлекает зашифрованную часть с паролем из TGS-тикета.
Инструменты для проведения атаки:
1) Поиск SPN-записей
Пример автоматизированного выполнения всех 3-ех пунктов:
Asreproast
Уязвимость заключается в отключенной настройке предварительной аутентификации Kerberos. В этом случае мы можем отправить AS-REQ-запросы для пользователя, у которого отключена предварительная аутентификация Kerberos, и получить зашифрованную часть с паролем.
Уязвимость встречается редко, так как отключение предварительной аутентификации — это не настройка по умолчанию.
Поиск пользователей с отключенной предаутентификацией Kerberos:
Получение зашифрованной части:
Атака через ACL
ACL в контексте домена — набор правил, которые определяют права доступа объектов в AD. ACL может быть настроен как для отдельного объекта (например, учетная запись пользователя), так и для организационной единицы, например OU. При настройке ACL на OU все объекты внутри OU будут наследовать ACL. В списках ACL содержатся записи управления доступом (ACE), которые определяют способ взаимодействия SID с объектом Aсtive Directory.
К примеру, у нас есть три группы: А, Б, С, — где группа С является членом группы Б, а группа Б является членом группы А. При добавлении пользователя guest в группу С пользователь guest будет не только членом группы С, но и косвенным членом групп Б и А. При добавлении доступа к объекту домена группе А пользователь guest тоже будет иметь доступ к этому объекту. В ситуации, когда пользователь является прямым членом только одной группы, а эта группа является косвенным членом других 50 групп, легко потерять связь унаследованных разрешений.
Получить ACL, связанные с объектом, можно, выполнив следующую команду
Для эксплуатации ошибок в конфигурировании ACL можно использовать инструмент
Invoke-ACLPwn. Powershell-скрипт собирает информацию обо всех ACL в домене с помощью сборщика BloodHound — SharpHound и выстраивает цепочку для получения разрешения writeDACL. После того, как цепочка построена, скрипт выполняет эксплуатацию каждого шага из цепочки. Порядок действия скрипта:
Запуск с машины, которая не находится в домене
Делегирование Kerberos
Делегирование полномочий Kerberos позволяет повторно использовать учетные данные конечного пользователя для доступа к ресурсам, размещенным на другом сервере.
Делегирование Kerberos бывает трех видов:
Неограниченное делегирование
В оснастке Active Directory включенная функция неограниченного делегирования выглядит следующим образом:
Для наглядности рассмотрим, как происходит неограниченное делегирование на схеме.
Поиск машин в домене с неограниченным делегированием:
Ограниченное делегирование
Режим ограниченного делегирования позволяет получить доступ только к разрешенным сервисам и на определенной машине. В оснастке Active Directory выглядит следующим образом:
При ограниченном делегировании используются 2 расширения протокола Kerberos:
При неограниченном делегировании для идентификации пользователя используется TGT, в этом случае расширение S4U использует структуру PA-FOR-USER в качестве нового типа в поле данных «padata»/pre-authentication. Процесс S4U2self разрешается, только если запрашивающий пользователь имеет поле TRUSTED_TO_AUTH_FOR_DELEGATION, установленное в его userAccountControl.
S4U2Proxy позволяет учетной записи службы использовать перенаправляемый тикет, полученный в процессе S4U2proxy, для запроса TGS-тикета для доступа к разрешенным сервисам (msds-allowtodelegateto). KDC проверяет, указан ли запрашиваемый сервис в поле msds-allowtodelegateto запрашивающего пользователя, и выдает билет, если проверка прошла успешно. Таким образом, делегирование «ограничено» конкретными целевыми сервисами.
Поиск компьютеров и пользователей в домене с ограниченным делегированием можно выполнить с помощью PowerView.
Поиск компьютеров с неограниченным делегированием
Поиск пользователей с ограниченным делегированием
Для проведения атаки нам необходим пароль в открытом виде, NTLM-хеш пароля либо TGT-тикет.
Ограниченное делегирование на основе ресурсов
Как и в обычном делегировании, используются расширения S4U. Так как делегирование на основе ресурсов — это в первую очередь ограниченное делегирование, то и здесь доступны атаки, актуальные для обычного ограниченного делегирования. Отличие только в том, что в простом ограниченном делегировании сервис А должен иметь атрибут msDS-AllowedToDelegateTo=ServiceB, а тут сервис B должен иметь атрибут msDS-AllowedToActOnBehalfOfOtherIdentity=Service A.
Это свойство позволяет провести еще одну атаку, опубликованную пользователем harmj0y. Для проведения атаки необходимы права на изменение параметра PrincipalsAllowedToDelegateToAccount, который задает атрибут msds-AllowedToActOnBehalfOfOtherIdentity, содержащий список управления доступом (ACL). В отличие от просто ограниченного делегирования, нам не нужны права администратора домена, чтобы изменить атрибут msds-AllowedToActOnBehalfOfOtherIdentity. Узнать, кто имеет права на редактирование атрибута, можно следующим образом:
Итак, чтобы провести атаку, выполняем mitm6
В результате атаки создается компьютер ZGXTPVYX$ с правами на делегирование компьютера Windows7.
Хороший доклад про делегирование был представлен на PHDays Егором Подмоковым.
Abusing GPO Permissions
Group Policy Objects — инструмент, позволяющий администраторам эффективно управлять доменом. Но бывает так, что пользователям назначаются излишние права, в том числе и на изменение политик GPO.
Для демонстрации примера добавим пользователю Ragnar права на редактирование политики «Default Domain Controllers Policy» (в реальной жизни права для этой политики выдаются только администраторам домена, но суть атаки не меняется; в случае другой политики меняются лишь подконтрольные хосты).
Выполним перечисление прав на всех GPOs в домене, используя PowerView.
Пользователь Ragnar имеет права на изменение GPO, имеющее GUID — 6AC1786C-016F-11D2-945F-00C04FB984F9. Чтобы определить, к каким хостам в домене применяется данная политика, выполним следующую команду
Получили хост dc1.jet.lab.
Зная конкретную политику, которую может редактировать пользователь Ragnar, и хосты, к которым применяется эта политика, мы можем выполнить различные действия на хосте dc1.jet.lab.
Computer Configuration\Preferences\Control Panel Settings\Folder Options | Create/alter file type associations, register DDE actions with those associations |
Computer Configuration\Preferences\Control Panel Settings\Local Users and Groups | Add new local admin account |
Computer Configuration\Preferences\Control Panel Settings\Scheduled Tasks | Deploy a new evil scheduled task (ie: PowerShell download cradle) |
Computer Configuration\Preferences\Control Panel Settings\Services | Create and configure new evil services |
Computer Configuration\Preferences\Windows Settings\Files | Affected computers will download a file from the domain controller |
Computer Configuration\Preferences\Windows Settings\INI Files | Update existing INI files |
Computer Configuration\Preferences\Windows Settings\Registry | Update specific registry keys. Very useful for disabling security mechanisms, or triggering code execution in any number of ways |
Computer Configuration\Preferences\Windows Settings\Shortcuts | Deploy a new evil shortcut |
Computer Configuration\Policies\Software Settings\Software installation | Deploy an evil MSI. The MSI must be available to the GP client via a network share |
Computer Configuration\Policies\Windows Settings\Scripts (startup/shutdown) | Configure and deploy evil startup scripts. Can run scripts out of GPO directory, can also run PowerShell commands with arguments |
Computer Configuration\Policies\Windows Settings\Security Settings\Local Policies\Audit Policy | Modify local audit settings. Useful for evading detection |
Computer Configuration\Policies\Windows Settings\Security Settings\Local Policies\User Rights Assignment\ | Grant a user the right to logon via RDP, grant a user SeDebugPrivilege, grant a user the right to load device drivers, grant a user seTakeOwnershipPrivilege. Basically, take over the remote computer without ever being an administrator on it |
Computer Configuration\Policies\Windows Settings\Security Settings\Registry | Alter DACLs on registry keys, grant yourself an extremely hard to find backdoor on the system |
Computer Configuration\Policies\Windows Settings\Security Settings\Windows Firewall | Manage the Windows firewall. Open up ports if they’re blocked |
Computer Configuration\Preferences\Windows Settings\Environment | Add UNC path for DLL side loading |
Computer Configuration\Preferences\Windows Settings\Files | Copy a file from a remote UNC path |
После выполнения появляется запланированная задача test
И появляется Meterpreter-сессия
Чтобы удалить запланированную задачу, нужно выполнить следующую команду:
Выводы
В статье мы рассмотрели лишь некоторые векторы атак. Такие виды, как Enumerate Accounts и Password spray, MS14-068, связка Printer Bug и Unconstrained Delegation, атаки на Exchange (Ruler, PrivExchange, ExchangeRelayX) могут значительно расширить область проведения атаки.
Техники атак и методы закрепления (Golden ticket, Silver ticket, Pass-The-Hash, Over pass the hash, SID History, DC Shadow и др.) постоянно меняются, а команде защиты нужно всегда быть готовой к новым видам атак.