Програми аудиту та зламу паролів John The Ripper та L0phtcrack
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
но перетворитися на список з 10000, якщо до кожного слова в початок буде доданий один із символів від 0 до 9.Нижче наведені деякі, найбільш часто використовувані символи, які додаються до базових словами.
[0123456789].Цифри.
[!@#$%^&*()].Верхній регістр для цифр.
[,.?!].Знаки пунктуації.
Ми можемо використовувати перетворення правил для зміни регістру або типу (верхній, нижній, від e до 3) символів, або видалення окремих типів символів.
?V? Голосні (a, e, i, o, u).
s? v.?Заміна голосних точкою (.).
@ @?V? Видалити всі голосні.
@ @A? Видалити всі букви a.
sa4?Замінити всі букви a на 4.
se3?Замінити всі букви e на 3.
l *?Де * символ, який треба перевести в нижній регістр.
u *?Де * символ, який треба перевести у верхній регістр.
Правила - чудовий спосіб підвищити продуктивність підбору пароля, особливо ті з них, які додають символи або правилаl33t,що замінюють символи і цифри. Правила найбільш підходять для випадку, коли швидкість роботи компютера не більше, ніж у мавпи, яка вважає на рахунках.Сьогодні, коли за кілька сотень доларів можна купити процесор з тактовою частотою більше 1GHz, ви не багато втратите, пропустивши етап обробки складними правилами, і перейдете безпосередньо до прямого перебору.
Складні правила і великі словники не зможуть зламати будь-який пароль.Це змушує вдаватися до атаки методом прямого перебору.Іншими словами, ми будемо пробувати всі можливі комбінації символів заданої довжини.Програма може перемикатися в режим прямого перебору за замовчуванням, якщо в командному рядку не задано жодних параметрів.Щоб змусити програму перейти до прямого перебору, використовуйтепараметр-incremental.
[Root @ hedwig run] #. / John-incremental: LanMan passwd.lanman
Loaded 1152 passwords with no different salts (NT LM DES [64/64 BS MMX])
За замовчуванням файл john.conf містить чотири адитивних параметра.
All.Нижній регістр, верхній регістр, цифри, пунктуація, SHIFT +.
Alpha.Нижній регістр.
Digits.Від 0 до 9.
LanMan.Те ж, що і All, за винятком нижнього регістра.
Кожен адитивний параметр має пять полів у файлі john. conf.Наприклад, стрічка дляLanManмістить наступні поля.
[Incremental: LanMan].Опис параметра.
File =. / Lanman.chr.Файл використовуваний як список символів.
MinLen = 0.Мінімальна довжина генерується рядка.
MaxLen = 7.Максимальна довжина генерується рядка.
CharCount = 69.Кількість символів у списку.
Аналогічно рядок дляALLмістить наступні поля.
[Incremental: All].Опис параметра.
File =. / All.chr.Файл, який використовується як список символів.
MinLen = 0.Мінімальна довжина генерується рядка.
MaxLen = 8.Максимальна довжина генерується рядка.
CharCount = 95.Кількість символів у списку.
ПоляMinLenіMaxLenнайбільш важливі, оскільки ми можемо змінювати їх для визначення атаки.УMaxLenдляLanManніколи не може бути більше семи символів.ЧислоCharCountв ступеніMaxLenдає кількість комбінацій, необхідне для повного завершення атаки перебором.Наприклад, загальна кількість комбінацій для роботи з паролямиLanManстановить 7.6 трильйона.Загальна кількість комбінацій при використанні параметраALLстановить близько 6700 трильйонів! Зауважимо, що безглуздо використовувати параметрincremental: Allдля підбору паролівLanMan,оскільки немає необхідності окремо перевіряти символи нижнього і верхнього регістрів.
Якщо в розпорядженні список паролів з Unix, про який відомо, що всі паролі складаються з восьми символів, ми можемо змінити значення параметрів. У даному випадку це економить час, оскільки можна не займатися перебором рядків довжиною в сім і менш символів.
[Incremental: All]
File =. / All.chr
MinLen = 8
MaxLen = 8
CharCount = 95
Потім запустимо програму.
[Root @ hedwig run] #. / John-incremental: All passwd.unix
Буде проводитися тільки перебір рядків довжиною у вісім символів.Ми можемо використовуватипараметр-stdout,щоб перевірити це.Кожен використаний варіант буде роздруковуватися на екрані.
[Root @ hedwig run] #. / John-incremental: All-stdout
Це корисно, якщо ви перенаправляє вивід в файл, створюєте список слів для подальшого використання з програмою john або іншою утилітою, яка може використовувати файл зі списком слів, наприкладWhisker.
[Root @ hedwig run] #. / John-makechars: guessed
Loaded 3820 plaintexts
Generating charsets... 1 2 3 4 5 6 7 8 DONE
Generating cracking order...DONE
Successfully written charset file: guessed (82 characters)
Відновлення файлів і розподілений злом
Вам слід знати дещо про програмуjohn,щоб керувати великими наборами паролів різного ступеня складності. Програма періодично зберігає стан процесу, записуючи проміжні результати у файл.Період збереження встановлюється у файлі john.conf.
# Crash recovery file saving delay in seconds
Save = 600
Імя файлу за замовчуваннямrestore,але його можна змінити, використовуючипараметр-session.
[Root @ hedwig run] #. / John-incremental: LanMan-session: pdc \
passwd.lanman
Loaded 1152 passwords with no different salts (NT LM DES
[64/64 BS MMX])
Вміст файлу restore виглядає приблизно так.
REC2
5
-Incremental: LanMan
-Session: pdc
passwd.lanman
-Format: lm
6
0
47508000
00000000
0
-1
488
0
8
3
2
6
5
2
0
0
0
Число можливих комбінацій не може бути представлено 32-бітним числом, тому програма використовує два 32-бітових поля для створення 64-бітного числа.Інформація про це числі й те, як ним можна маніпулювати, може бути використана для виконання розподілених обчислень.Візьмемо наш файл restore і використовуємо його для запуску паралельних версій програми на двох незалежних машинах.Файл restore для першого компютера буде містити наступні рядки.
REC2
4
-Incremental: LanMan
passwd.lanman
-Format: lm
4
0
00000000
00000000
0
-1
333
0
8
15
16
0
0
0
0
0