Загрузка не удалась. Возможно, проблемы с правами доступа?

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

ad_passwords_hash_john_the_ripper [2017/02/11 10:10] (текущий)
ytiruces создано
Строка 1: Строка 1:
 +====== Экстракт хэшей паролей AD и их вскрытие при помощи John the Ripper ======
 +===== Необходимо =====
 +ntds.dit\\
 +SYSTEM\\
 +[[http://​www.openwall.com/​john/​|John the Ripper]]\\
 +[[https://​github.com/​libyal/​libesedb|libesedb]]\\
 +[[http://​www.ntdsxtract.com/​|ntdsxtract]]\\
 +===== Экспорт таблиц из ntds.dit + SYSTEM =====
  
 +Используем [[https://​github.com/​libyal/​libesedb|libesedb]] (команда esedbexport)
 +<code bash>/​usr/​local/​bin/​esedbexport -m tables /​home/​itsec/​ntds.dit</​code>​
 +Извлечение таблиц занимает сравнительно долгое время (~60 минут),​ это зависит от объема базы ntds.dit
 +<code bash>​esedbexport 20160622
 +Opening file.
 +Exporting table 1 (MSysObjects) out of 14.
 +Exporting table 2 (MSysObjectsShadow) out of 14.
 +Exporting table 3 (MSysObjids) out of 14.
 +Exporting table 4 (MSysLocales) out of 14.
 +Exporting table 5 (datatable) out of 14.
 +Exporting table 6 (hiddentable) out of 14.
 +Exporting table 7 (link_history_table) out of 14.
 +Exporting table 8 (link_table) out of 14.
 +Exporting table 9 (sdpropcounttable) out of 14.
 +Exporting table 10 (sdproptable) out of 14.
 +Exporting table 11 (sd_table) out of 14.
 +Exporting table 12 (MSysDefrag2) out of 14.
 +Exporting table 13 (quota_table) out of 14.
 +Exporting table 14 (quota_rebuild_progress_table) out of 14.
 +Export completed.
 +itsec@localhost:/​tmp$</​code>​
 +После окончания экпорта,​ таблицы будут находиться в директории ndts.dit.export.
 +===== Экспорт хэшей из таблиц =====
 + 
 +Используем [[http://​www.ntdsxtract.com/​|ntdsxtract]] (скрипт dsusers.py)
 +Данный скрипт может выгружать хэши в удобном формате для таких инструментов как John The Ripper, hashcat и ophCrack. Для этого необходимо указать параметр --pwdformat соответсвенно john, ocl или ophc
 +==== Выгрузка для John The Ripper ====
 +
 +<code bash>​python dsusers.py /​home/​itsec/​ntds.dit.export/​datatable.4 /​home/​itsec/​ntds.dit.export/​link_table.7 dump_john --syshive /​home/​itsec/​SYSTEM --passwordhashes --lmoutfile lm.john.out --ntoutfile nt.john.out --pwdformat john</​code>​
 +Вормат хэша в выгруженном файле:
 +<​code>​Guest:​$NT$afe58069dad3c0d3fa42149193568d64:​S-1-5-21-763579524-529803068-617630493-501::</​code>​
 +==== Выгрузка для Hashcat ====
 +
 +<code bash>​python dsusers.py /​home/​itsec/​ntds.dit.export/​datatable.4 /​home/​itsec/​ntds.dit.export/​link_table.7 dump_hashcat --syshive /​home/​itsec/​SYSTEM --passwordhashes --lmoutfile lm. ocl.out --ntoutfile nt. ocl.out --pwdformat ocl</​code>​
 +Вормат хэша в выгруженном файле:
 +<code bash>​Guest:​afe58069dad3c0d3fa42149193568d64</​code>​
 +==== Выгрузка для ophCrack ====
 +
 +<code bash>​python dsusers.py /​home/​itsec/​ntds.dit.export/​datatable.4 /​home/​itsec/​ntds.dit.export/​link_table.7 dump_hashcat --syshive /​home/​itsec/​SYSTEM --passwordhashes --lmoutfile lm. ophc.out --ntoutfile nt. ophc.out --pwdformat ophc</​code>​
 +Вормат хэша в выгруженном файле:
 +<code bash>​Guest::​999d3225ccce619eaad3b435b51404ee:​afe58069dad3c0d3fa42149193568d64:​S-1-5-21-763579524-529803068-617630493-501::</​code>​
 +===== John The Ripper =====
 +
 +Инструмент John The Ripper может работать в режиме брутфорса и перебора по словарю. При этом в случае перебора по словарю можно использовать разнообразные правила,​ изменяющие каждое из слов в словаре. Например,​ менять регистр,​ инверсировать или добавлять цифры(спецсимволы).
 +==== Словари ====
 +
 +=== Популярные пароли ===
 +
 +В файле /​usr/​share/​john/​password.lst собраны наиболее популярные пароли. ​
 +=== Расширенный англо-русский словарь ===
 +
 +В файле /​usr/​share/​john/​all.lst собраны потенциальные парольные значения на английском и русском языках.
 +==== Правила ====
 +
 +В инструменте John The Ripper по умолчанию есть 80 правил,​ а так же можно запускать с значением none, т.е. без правил,​ и all – все правила.
 +//All korelogic replaceletters replacespecial2special l33t appendyears_addspecialeverywhere ​ appendnumnumnum_addspecialeverywhere appendnumnum_addspecialeverywhere appendnum_addspecialeverywhere prependnumnum_appendnumspecial append1_addspecialeverywhere prependjustspecials appendjustspecials3times appendspeciallowerlower appendcap-num_or_special-twice adddotcom replaceletterscaps replacenumbers replacenumbers2special appendmonthcurrentyear ​ appendmonthday add1234_everywhere prependdaysweek add2010everywhere prepend4lettermonths addshortmonthseverywhere monthsfullpreface appendjustspecials appendnumbers_and_specials_simple appendjustnumbers prependandappendspecial devprodtestuat addjustnumbers append2numspecial append3numspecial append4numspecial prepend4numappendspecial append2letters prependspecialspecialappendnumbersnumbernumber prependspecialspecialappendnumbersnumber prependspecialspecialappendnumber appendspecialnumbernumbernumber appendspecialnumbernumber prependspecialspecial prepend2numbersappend2numbers prependnumnumspecial prependnumnumnumnum prependnumnumnum prependnumnum prependnumnumappendspecial prependcapcapappendspecial appendspecial4num appendspecial3num append6num append5num ​ append4num appendcurrentyearspecial appendyears ​ prependyears prependhello appendseason prependseason jumbo  single-extra ​ loopback oi I i3 i2  i1 o o3 o2 o1 oldoffice split nt wordlist extra single drop none//
 +
 +Эмпирическим путем выявлен наиболее эффективное правило – korelogic.
 +==== Korelogic ====
 +
 +Данное правило создано компанией Korelogic Security специально для своей форензик лаборатории. Это комплексное правило,​ включающее в себя 58 правил. Его детали можно посмотреть и изменить /​usr/​share/​john/​korelogic.conf
 +Команды
 +==== Популярные пароли ====
 +
 +<code bash>​john --format=NT --wordlist=/​usr/​share/​john/​password.lst --rules=korelogic /​home/​itsec/​dump_john/​nt.john.out</​code>​
 +Пароли,​ которые удалось взломать john собирает в файл /​root/​.john/​john.pot . Это результирующий файл, в котром собираются результаты разных прогонов,​ поэтому если нужен результат конкретного словаря или правила,​ перед запуском нужно стереть этот файл ​
 +<code bash>cd /​root/​.john/​
 +rm john.pot</​code>​
 +Так же результат можно посмотреть командой:​
 +<code bash>​john --show /​home/​itsec/​dump_john/​nt.john.out </​code>​
 +==== Расширенный словарь ====
 +
 +<code bash>​john --format=NT --wordlist=/​usr/​share/​john/​all.lst --rules=korelogic /​home/​itsec/​dump_john/​nt.john.out</​code>​
 +===== Работа с результатами =====
 +
 +==== John ====
 +
 +Для просмотра результатов работы утилиты John The Ripper нужно использовать команду:​
 +<code bash>​john --show /​home/​itsec/​dump_john/​nt.john.out</​code>​
 +Эта команда выведет на экран все расшифрованные пароли с именем учетной записи и SID. Нужно скопировать и вставить вставить в файл Excel.
 +==== В Excel ====
 +
 +В результах расшифровки будут присутствовать заблокированные УЗ. Поэтому для начала нужно определить какие из них заблокированы. Для этого нужно сделать выгрузку УЗ с полем Enable из AD через PowerShell:
 +<code bash>​Get-ADUser -filter * | select SamAccountName,​ Enabled | Export-Csv</​code>​
 +Далее проверить статус УЗ при помощи функции VLOOKUP
 +После того, как мы дополнили таблицу результата статусом УЗ, можно добавить таблицу подсчитывающую количество паролей и работать в различных разрезах.