Я експлуатував випробувальні машини за допомогою метасплайту і міг отримати хеші з файлу SAM; Я намагався виконувати команди, як SYSTEMїх отримати, але не можу це зробити. Що є більш портативним методом вилучення хешей з файлу SAM?
Я експлуатував випробувальні машини за допомогою метасплайту і міг отримати хеші з файлу SAM; Я намагався виконувати команди, як SYSTEMїх отримати, але не можу це зробити. Що є більш портативним методом вилучення хешей з файлу SAM?
Відповіді:
Це не дозвіл - Windows зберігає ексклюзивний замок на файлі SAM (який, наскільки я знаю, є стандартною поведінкою для завантажених вуликів реєстру), тому неможливо жоден інший процес відкрити його.
Однак останні версії Windows мають функцію під назвою "Volume Shadow Copy", яка призначена для створення знімків всього обсягу лише для читання, переважно для резервного копіювання. Блоки файлів існують для забезпечення узгодженості даних, тому вони не потрібні, якщо зроблено знімок всієї файлової системи. Це означає, що можна створити знімок C:, змонтувати його, скопіювати SAMфайл, а потім відкинути знімок.
Як саме це зробити, залежить від вашої версії Windows: XP потрібна зовнішня програма, Vista і 7 мають vssadmin create shadow, а Server 2008 має diskshadowкоманду. На сторінці Безпечне скидання хешів від контролерів домену в реальному часі є детальніше про цей процес, а також інструкції та сценарії.
Крім того, є такі інструменти, samdumpякі зловживають LSASS-процесом з різних напрямків, щоб витягти всі хеші паролів безпосередньо з пам'яті. Вони можуть бути набагато швидшими, ніж знімки VSS, але мають більший ризик збоїв у роботі системи.
Нарешті, Google виводить цей фрагмент, корисність якого я не можу оцінити, що ніколи не використовував метасплайт:
meterpreter> use priv
meterpreter> hashdump
HKLM\SYSTEM\CurrentControlSet\Control\HiveListщоб побачити, які підрозділи відповідають яким файлам.
Є більш просте рішення, якому не потрібно керувати тонами тіней або використовувати зовнішні інструменти. Ви можете просто скопіювати SAM і SYSTEM за допомогою regкоманди, наданої microsoft (протестовано на Windows 7 та Windows Server 2008):
reg save hklm\sam c:\sam
reg save hklm\system c:\system
(останній параметр - це місце, куди потрібно скопіювати файл)
Потім ви можете витягти хеші в системі Linux з пакетом samdump2 (доступний на Debian:) apt-get install samdump2:
$ samdump2 system sam
Administrator:500:aad3b435b51404eeaad3b435b51404ee:c0e2874fb130015aec4070975e2c6071:::
*disabled* Guest:501:aad3b435b51404eeaad3b435b51404ee:d0c0896b73e0d1316aeccf93159d7ec0:::
Редагувати: Я вирішив редагувати після багатьох років відмови.
Файл Windows SAM заблокований від копіювання / читання, на відміну /etc/shadow від систем Linux. Натомість, щоб обійти цей інструмент, витягніть хеші з пам'яті.
Є кілька способів обійти це, що я розповім нижче:
Виконати мімікац за допомогою sekurlsa::logonpasswords.
Аналогічна функціональність, як і mimikatz. Запустіть його, і хеші будуть перенесені на локальні файли.
Вбудований у метрпретер; витягує хеші з пам'яті.
Можна також витягнути з реєстру (якщо у вас є SYSTEMдоступ):
reg save hklm\sam %tmp%/sam.reg і reg save hklm\system %tmp%/system.regsamdump2 system samФайл SAM також можна зберігати в резервному місці: C:\Windows\Repair\SAM
Я також повинен зазначити, що інструменти вимагають як мінімум Administratorпільг; і більшість не отримає всіх хешів, якщо не SYSTEMбуде отримано доступ.
Mimikatzабо fgdumpбудь-який портативніший, ніж C&A, чи відрізняються від нього? Наскільки я можу сказати, що вони є сторонніми інструментами, які не постачаються в комплекті з Windows, і їх потрібно завантажувати окремо. Крім того, для моєї власної цікавості, який випадок використання інструментів хеш-демпінгу, коли існують такі інструменти, як Ophcrack?
Метод Obscuresec долає ваші труднощі локально на будь-якій машині з підтримкою Windows Powerhell 1.0. Лишає деякі цілі, яких я знаю, але ей, приємна робота! (спасибі, Крис).
Примітка. Для виконання такої операції завжди потрібні права адміністратора
Ви можете використовувати
http://gallery.technet.microsoft.com/scriptcenter/Get-PasswordFile-4bee091d
або з іншого джерела (пізнішого я можу додати)
https://github.com/obscuresec/PowerShell/blob/master/Get-PasswordFile
Рекомендоване читання:
Для захоплення віддалених систем вулики SAM та SYSTEM використовують вищезгадане спільно з
Хотілося б вказати додатковий метод, який тут не описаний, оскільки багато часу в Red Teaming / Penetration Testing найбільш очевидні способи недоступні (заперечуються, контролюються Blue Team тощо), і приємно знати всі доступні методи.
vssshadow.exeВище розповідається один із способів доступу до файлів, з якими система обробляє (не може скопіювати / видалити як завжди) .
Другий - esentutil.exe.
Точна команда взяти копію файлу з ручкою:
esentutl.exe /y /vss c:\windows\ntds\ntds.dit /d c:\folder\ntds.dit
Це стосується SAM, SYSTEM, SECURITY, NTDS.DIT і т.д.
PS Там esentutl.pyу пакеті імпакета:
https://github.com/SecureAuthCorp/impacket/blob/master/examples/esentutl.py