
Автономный извлекатель учетных данных Windows, который извлекает хэши LM/NT, кэшированные пароли домена и секреты LSA из кустов реестра без взаимодействия с системой.
Этот репозиторий содержит мои модификации оригинальной программы 'creddump', доступной по адресу:
https://code.google.com/p/creddump/
Я не писал оригинальную программу.
Я объединил множество патчей и исправлений, которые видел на разных форумах и по предложениям пользователей, а также изменил использование, чтобы сделать его немного понятнее.
Я следовал патчам и исправлениям из следующих ссылок:
Наслаждайтесь! Ronnie Flathers (@ropnop)
Смонтируйте раздел Windows 7/Vista:
# mkdir /mnt/win
# ntfs-3g /dev/sda1 /mnt/win
Запустите cachedump.py на кустах SYSTEM и SECURITY для извлечения кешированных доменных учетных данных:
# ./cachedump.py
usage: ./cachedump.py <system hive> <security hive> <Vista/7>
Пример (Windows Vista/7):
./cachedump.py /path/to/System32/config/SYSTEM /path/to/System32/config/SECURITY true
Пример (Windows XP):
./cachedump.py /path/to/System32/SYSTEM /path/to/System32/config/SECURITY false
# ./cachedump.py /mnt/win/Windows/System32/config/SYSTEM /mnt/win/Windows/System32/config/SECURITY true |tee hashes
nharpsis:6b29dfa157face3f3d8db489aec5cc12:acme:acme.local
god:25bd785b8ff1b7fa3a9b9e069a5e7de7:acme:acme.local
Если вы хотите взломать хэши и у вас есть хороший словарь, можно использовать John. Хэши имеют формат 'mscash2':
# john --format=mscash2 --wordlist=/usr/share/wordlists/rockyou.txt hashes
Loaded 2 password hashes with 2 different salts (M$ Cache Hash 2 (DCC2) PBKDF2-HMAC-SHA-1 [128/128 SSE2 intrinsics 8x])
g0d (god)
Welcome1! (nharpsis)
Теперь у нас есть пароли двух доменных пользователей. Примечание: эти пароли действительно простые, и я знал, что они есть в использованном мной словаре. Обычно, если вы хотите действительно перебирать пароли, я бы не рекомендовал John. Извлеките хэши и используйте GPU-ускоритель для взлома с oclHashcat.
ОБЗОР
creddump — это инструмент на Python для извлечения различных учетных данных и секретов из
кустов реестра Windows. В настоящее время он извлекает:
* LM и NT хэши (защищенные SYSKEY)
* Кэшированные доменные пароли
* Секреты LSA
По существу, он выполняет все функции, которые делают bkhive/samdump2,
cachedump и lsadump2, но платформонезависимым способом.
Это также первый инструмент, который делает все это в офлайн-
режиме (на самом деле, Cain & Abel это делает, но не является открытым и доступен только на Windows).
ТРЕБОВАНИЯ
alldump был протестирован только на Python 2.5. Он должен работать и на 2.4,
но, вероятно, потребует модификации для работы на 2.3 или ниже.
python-crypto требуется для поддержки MD5/DES/RC4. Для его получения см.: http://www.amk.ca/python/code/crypto
Для lsadump: кусты system и SECURITY
Для cachedump: кусты system и SECURITY
Для pwdump: кусты system и SAM
ИСПОЛЬЗОВАНИЕ
Извлечение кэшированных доменных хэшей:
usage: ./cachedump.py <system hive> <security hive>
Извлечение секретов LSA:
usage: ./lsadump.py <system hive> <security hive>
Извлечение локальных хэшей паролей:
usage: ./pwdump.py <system hive> <SAM hive>
ВОЗМОЖНОСТИ
* Платформонезависимая работа. Единственными входными данными являются файлы кустов
системы — мы вообще не полагаемся на какую-либо функциональность Windows.
* Открытые и (надеюсь!) читаемые реализации алгоритмов обфускации Windows,
используемых для защиты секретов LSA, кэшированных доменных паролей и
* Достаточно толерантный парсер файлов реестра на чистом Python. Посмотрите
framework/types.py и framework/win32/rawreg.py, чтобы понять, как он работает.
* Первая полная реализация с открытым исходным кодом advapi32's
SystemFunction005. Версия в исходном коде Wine, по-видимому, не позволяет
использовать ключи длиннее 7 байт, в то время как версия Windows
(и эта версия) позволяет. См. decrypt_secret() в
framework/win32/lsasecrets.py
АВТОР
creddump написан Бренданом Долан-Гэвиттом ([email protected]).
Для получения дополнительной информации о Syskey, секретах LSA, кэшированных доменных учетных данных
и многих сведениях о криминалистике энергонезависимой памяти и реверс-инжиниринге,
посетите:
http://moyix.blogspot.com/
БЛАГОДАРНОСТИ
* AAron Walters. Большая часть кода для разбора типов данных взята из
Volatility, отличного фреймворка для анализа памяти, написанного на Python.
Он также очень хороший парень и очень помог мне в моих исследованиях.
https://www.volatilesystems.com/default/volatility
* Massimiliano Montoro (mao), за обратный инжиниринг механизма, который Windows использует
для получения ключа LSA, чтобы его можно было вычислить непосредственно из
файлов кустов, как описано в этом посте:
http://oxid.netsons.org/phpBB2/viewtopic.php?t=149
http://www.oxid.it/
* Jeremy Allison, за детали обфускации, применяемой к хэшам
паролей в SAM, реализованной в оригинальном pwdump.
http://us4.samba.org/samba/ftp/pwdump/
* Nicola Cuomo, за его отличное описание механизма syskey
и того, как он используется для шифрования SAM в Windows 2000 и выше.
http://www.studenti.unina.it/~ncuomo/syskey/
* Eyas[at]xfocus.org, за x_dialupass2.cpp, который демонстрирует, как
читать секреты LSA непосредственно из реестра, имея ключ LSA.
http://www.xfocus.net/articles/200411/749.html
[Примечание: вышеуказанное на китайском, но вполне понятно, если использовать
Google Translate и уметь читать C ;)]
* Nicholas Ruff, за его реализацию des_set_odd_parity на Perl,
которую он, по-видимому, взял из SSLEAY:
http://seclists.org/pen-test/2005/Jan/0180.html
* Arnaud Pilon, за детали того, как извлечь кэшированные доменные учетные данные,
реализованные в cachedump.
http://www.securiteam.com/tools/5JP0I2KFPA.html
* S?bastien Ke, за его милый рецепт hexdump:
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/142812
ЛИЦЕНЗИЯ
Эта программа является свободным программным обеспечением: вы можете распространять ее и/или изменять
в соответствии с условиями GNU General Public License, опубликованной
Free Software Foundation, либо версии 3 Лицензии, либо
(по вашему выбору) любой более поздней версии.
Эта программа распространяется в надежде, что она будет полезной,
но БЕЗ КАКИХ-ЛИБО ГАРАНТИЙ; без неявной гарантии
ТОВАРНОЙ ПРИГОДНОСТИ или ПРИГОДНОСТИ ДЛЯ ОПРЕДЕЛЕННОЙ ЦЕЛИ. См.
GNU General Public License для получения дополнительной информации.
Вы должны были получить копию GNU General Public License
вместе с этой программой. Если нет, см. <http://www.gnu.org/licenses/>.