Кряк парольних файлів Unix
- 2 Кві 2014
- Статті
Ви, напевно, вже чули про «Джона Потрошителя» (не Джеку, той був психом і полював на дамочок легкої поведінки, а про Джона!) — особливу програму для злому паролів. Тільки не дуже радійте. Навіть досвідчені зломщики не завжди досягають успіху в кожному випадку. У цій книзі я розповім вам про загальну процедуру. Але будь-який пароль вимагає свого неповторного підходу.
Де можна отримати програму «John the Ripper»? Спробуйте
1) packetstorm.securify.com (шукайте в архіві в темі "password cracking")
Джона можна знайти де завгодно. Скористайтеся пошуковою системою, вкажіть у вікні запиту: «john the ripper», і вам дадуть півтонни посилань. Крім програми, ви повинні завантажити хороший парольний словник. За словником сходіть на www.theargon.com або в packetstorm (архіви). Пошукайте словник з назвою theargonlist-serverl. У запакованому вигляді він "важить" 20 Мб, а в розпакованому - понад 200 Мб. Уявляєте, як хтось попрацював!
Отже, «Джон» у вас, і словник завантажений. Невже ви вважаєте, що зможете зламати пароль? Ні, якби ви жили 100Q00 років, у вас не було б проблем, але всім нам у кращому разі залишилося жити ще 80—90 років. Давайте спочатку подивимося, як виглядає файл паролів (ми говоримо про файл /etc/passwd):
Важливою частиною є ім'я користувача та пароль. Ми вже говорили про те, що кожен рядок ділиться на сім частин двокрапками.
Розглянемо: owner: Ej rt3 EJ Unh5 Ms.
Ім'я користувача - Owner.
Далі йде кодований пароль - кодований в шифрі, що змінюється DES (Data Encryption Standard).
Іноді для злому паролів потрібні дві перші частини. Деякі програми потребують весь рядок пароля. Сучасні програми для злому паролів обходяться схемою:
Тепер ми готові до роботи та друкуємо першу команду:
John -w:words.lst password.file (де words.lst – словник паролів, a password file – це пароль, який слід зламати).
Зазвичай люди використовують для паролів свої імена, прізвиська свійських тварин і навіть свої імена користувача:
Так годиться. Завжди створюйте сильні паролі, поєднуючи в них великі та великі літери, цифри та символи. Наприклад, p@s$wlls.
Хорошим рішенням 65'де пароль з 10-16 символами.
А "Джон Потрошитель" вже працює. Поки ви чекаєте, послухайте мене.
DES-шифр, який використовує Unix, - необоротний. Деякі шифровані повідомлення можна перетворити на нормальний текст за допомогою простих чи складних алгоритмів. Але змінний DES-шифр необоротний. Він ґрунтується на ключовому кодуванні. Алгоритм коду використовує набір букв (великих і великих), цифр і символів. Іншими словами, щоб виконати алгоритм дешифрування вам потрібен цей ключ. А ви не можете мати його, тому що ключ є паролем!
Коли користувач вибирає пароль, система генерує йому зашифрований пароль, званий hash. Він створюється цим алгоритмом DES, що змінюється, і в якості ключа використовується пароль користувача. Якщо ви спробуєте розшифрувати пароль за допомогою стандартного DES-шифра, то отримаєте нульовий рядок.
Як же працює «Джон» та інші крекери? Легко. Вони намагаються відтворити цей процес, вибираючи паролі зі словника і використовуючи їх як ключі для змінюваного алгоритму DES. Потім вони порівнюють результат із усіма закодованими паролями у файлі паролів.
Якщо два рядки збіглися, то ви отримаєте пароль. Але якщо перша стадія виявиться безплідною, вам доведеться продовжити процес ламання. У цьому випадку ви друкуєте:
john-w:vrords.1st -rules password.file .
В даному випадку ми шукаємо не тільки за словником, але й використовуємо деякі модифікації слів, тобто додаємо цифру до кінця слова (наприклад, fool => fooll). Такий процес виконується довго, але дає добрі результати.