Unix-пароль Кена Томпсона

в 10:54, , рубрики: crypt(3), Биографии гиков, брутфорс, информационная безопасность, Кен Томпсон

Где-то в 2014 году в дампах исходного дерева BSD 3 я нашёл файл /etc/passwd с паролями всех ветеранов, таких как Деннис Ричи, Кен Томпсон, Брайан В. Керниган, Стив Борн и Билл Джой.

Для этих хэшей использовался алгоритм crypt(3) на основе DES — известный своей слабостью (и с длиной пароля максимум 8 символов). Поэтому я подумал, что будет легко взломать эти пароли ради удовольствия.

Берём стандартные брутеры john и hashcat.

Довольно быстро я взломал много паролей, большинство из которых были очень слабыми (любопытно, что bwk использовал пароль /.,/.,, — его легко набрать на клавиатуре QWERTY).

Но пароль Кена не поддавался взлому. Даже полный перебор всех строчных букв и цифр (несколько дней в 2014 году) не дал результата. Поскольку алгоритм разработан Кеном Томпсоном и Робертом Моррисом, мне было интересно, в чём тут дело. Я также понял, что, по сравнению с другими схемами хэширования паролей типа NTLM, crypt(3) довольно медленно брутится (возможно, и менее оптимизирован).

Неужели он использовал прописные буквы или даже специальные символы? (7-битный полный брутфорс займёт более двух лет на современном GPU).

В начале октября эту тему снова подняли в списке рассылки The Unix Heritage Society, и я поделился своими результатами и разочарованием, что не смог взломать пароль Кена.

Наконец, сегодня Найджел Уильямс раскрыл эту тайну:

От: Найджел Уильямс <nw@retrocomputingtasmania.com>
Тема: Re: [TUHS] Восстановление файлов /etc/passwd

Кен готов:

ZghOT0eRm4U9s:p/q2-q4!

Потребовалось более четырёх дней на AMD Radeon Vega64 в hashcat примерно на 930MH/с (знающие в курсе, что хэшрейт колеблется и снижается к концу).

Это первый ход пешкой на две клетки в шахматной нотации, и начало многих типичных дебютов, что очень хорошо вписывается в бэкграунд Кена Томпсона по компьютерным шахматам.

Очень рад, что тайна разрешилась, а результат такой приятный.

Автор: m1rko

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js