
Эксплойт на Python для CVE-2020-1472 (Zerologon), который изменяет пароль учётной записи компьютера контроллера домена, позволяя выполнить DCSync и полную компрометацию домена. Включает скрипт восстановления для отката пароля.
Требуется последняя версия impacket из GitHub с добавленными структурами netlogon.
Обратите внимание, что по умолчанию этот эксплойт меняет пароль учётной записи контроллера домена. Да, это позволяет выполнить DCSync, но также нарушает связь с другими контроллерами домена, так что будьте осторожны!
Подробнее и оригинальное исследование здесь
Работает только на Python 3.6 и новее! Если в вашей ОС уже установлен impacket (например, в Kali), сначала удалите все существующие установки. Если после этого всё ещё возникают ошибки импорта, запускайте из virtualenv или pipenv.
cve-2020-1472-exploit.py с IP и NetBIOS-именем DC-just-dc и -no-pass, или пустые хэши, и учётную запись DCHOSTNAME$Если вы установите версию impacket из GitHub, обновлённую 15 сентября 2020 года или позже, secretsdump автоматически выгрузит пароль машины в открытом виде (в шестнадцатеричной кодировке) при выгрузке секретов локального реестра. Обратите внимание, что это отличается от DCSync, так как DCSync использует учётную запись машины, тогда как выгрузка реестра требует запуска secretsdump на контроллере домена с правами администратора домена (например, встроенной учётной записи Administrator).
В качестве альтернативы, в несколько более старых версиях secretsdump вы можете выгрузить этот же пароль, сначала извлёк кусты реестра, а затем запустив secretsdump в автономном режиме (тогда он всегда будет выводить ключ в открытом виде, так как не сможет вычислить хэши Kerberos).
С этим паролем в открытом виде вы можете запустить restorepassword.py с параметром -hexpass. Сначала он аутентифицируется с пустым паролем на том же DC, а затем установит пароль обратно на исходный. Убедитесь, что вы снова указали NetBIOS-имя и IP в качестве цели, например:
python restorepassword.py testsegment/s2016dc@s2016dc -target-ip 192.168.222.113 -hexpass e6ad4c4f64e71cf8c8020aa44bbd70ee711b8dce2adecd7e0d7fd1d76d70a848c987450c5be97b230bd144f3c3...etc