Відповіді:
Паролі в системі Linux не шифруються, вони хешовані, що є величезною різницею.
Повернути хеш-функцію за визначенням неможливо. Для отримання додаткової інформації дивіться запис у Вікіпедії Hash .
Яка функція хешу використовується, залежить від конфігурації вашої системи. МД5 та мухоловка є загальними прикладами для використовуваних хеш-функцій.
Тож "реальний" пароль користувача ніколи не зберігається в системі.
Якщо ви ввійдете в систему, рядок, який ви вводите як пароль, буде хеширован і перевіряється на ваш / etc / тіньовий файл. Якщо вона збігається, ви, очевидно, ввели правильний пароль.
У будь-якому разі є ще деякі вектори атаки на хеши паролів. Ви можете зберегти словник популярних паролів і спробувати їх автоматично. В Інтернеті є чимало словників. Іншим підходом було б просто випробувати всі можливі комбінації персонажів, на які буде потрібно багато часу. Це відомо як напад грубої сили.
Веселки - ще один приємний вектор атаки проти хешів. Ідея цієї концепції полягає в тому, щоб просто попередньо обчислити всі можливі хеші, а потім просто знайти хеш у таблицях, щоб знайти відповідний пароль. Існує кілька розподілених обчислювальних проектів для створення таких таблиць , розмір відрізняється від використовуваних символів і становить в основному кілька ТБ.
Для мінімізації ризику таких таблиць пошуку звичайна практика і поведінка за замовчуванням в Unix / Linux, щоб додати так звану " сіль " до хешу паролів. Ви маєте хеш-пароль, додаєте до хешу випадкове значення солі та знову хеште цю нову рядок Вам потрібно зберегти новий хеш і сіль, щоб мати можливість перевірити, чи введене значення є правильним паролем. Величезна перевага цього методу полягає в тому, що вам доведеться створювати нові таблиці пошуку для кожної унікальної солі.
Популярним інструментом для виконання словника або грубої атаки проти паролів користувачів різних операційних систем є Джон The Ripper (або JTR). Докладнішу інформацію див. На домашній сторінці проекту :
John Ripper - це швидкий злом пароля, який зараз доступний для багатьох варіантів Unix, Windows, DOS, BeOS та OpenVMS. Його головне призначення - виявити слабкі паролі Unix.
Розшифрувати ці мовленнєві слова практично неможливо, оскільки вони є односторонніми зашифрованими.
Як говорили інші, ви не можете дійсно розшифрувати тіньовий файл.
Єдине, що ви можете спробувати - це жорстоко вгадати пароль, використовуючи такий інструмент, як Джон Розпушувач . Це може або не вдасться, і майже напевно це займе тривалий час.
Паролі шифруються за допомогою алгоритму, який візьме пароль і створить хеш, унікальний для цього пароля. Цей хеш зберігається у файлі / etc / shadow. Відновити пароль із хешу неможливо. Єдині методи відновлення пароля - це або жорстоке примушування всього простору клавіш, або використання якоїсь атаки словника . Ранні хеш-функції використовували стандарт DES. Збільшення обчислювальної потужності дозволило за розумні терміни застосувати простір клавіш DES. Сучасні хеш-функції, які використовуються для шифрування паролів, включають MD5, SHA тощо. Більше інформації про бібліотеку crypt (3) можна знайти тут .