Древняя функция хэширования паролей в Unix, crypt(3), базирующаяся на признанном слабым и устаревшим стандарте Data Encryption Standard (DES), как оказалось, и в наши дни способна создать трудности для взломщиков.
В 2014 году, разработчик Лея Нойкирхен (Leah Neukirchen) обнаружила в выложенных в публичный доступ исходниках коллекционной ОС BSD v.3 интересный файл «/etc/passwd» с хешированными паролями более двух десятков знаменитостей, участвовавших в создании Unix.
Понадеявшись на слабость алгоритма crypt(3), использовавшегося главным образом для защиты восьмизначных паролей, Нойкирхен на досуге атаковала их методом «грубой силы». Такие хакерские инструменты, как Ripper и hashcat, позволили ей добиться успеха во всех случаях ... ну почти. Не удалось взломать пароли шести пионеров компьютерных технологий, в том числе Билла Джоя (Bill Joy), который в 1986 г. участвовал в основании компании Sun Microsystems, а также разработал язык программирования Java.
«Не принёс результата даже всеобъемлющий поиск по всем буквам нижнего регистра и цифрам, занявший (в 2014 году) несколько дней, — отметила исследовательница в сообщении блога, опубликованном в прошлую среду. — Я также осознала, что по сравнению с другими схемами хеширования паролей (такими как NTLM), crypt(3) дольше сопротивляется взлому (и, возможно, также была менее оптимизирована)».
В этом месяце, Нойкирхен опубликовала все полученные результаты в списке рассылки Unix Heritage Society, сопроводив их просьбой помочь в расшифровке оставшихся паролей.
Спустя всего шесть дней на призыв откликнулся австралийский инженер Найджел Уилсон (Nigel Williams), представивший в текстовом формате пароль «отца Unix», Кена Томпсона (Ken Thompson) — «p/q2-q4!a» — запись, описывающая в шахматной программе Томпсона типичный ход пешкой в начале партии. На взлом пароля у программы hashcat, работавшей на машине с AMD Radeon Vega64 с частотой примерно 930 МГц/с ушло более четырёх суток.
Днём позже, другой участник списка рассылки, Артур Креват (Arthur Krewat), выложил результаты успешного взлома ещё четырёх хэшей.
В общем списке расшифрованных паролей (слишком долго будет приводить его полностью), в частности, фигурируют следующие легендарные личности истории Unix:
Деннис Ритчи (Dennis Ritchie), один из авторов BSD и создатель языка C
хэш → gfVwhuAMF0Trw
текст → dmac
Брайан Керниган (Brian W. Kernighan), канадский разработчик Unix
хэш → ymVglQZjbWYDE:
текст → /.,/.,
Стивен Борн (Stephen R. Bourne), автор одноимённой командной оболочки (шелла)
хэш → c8UdIntIZCUIA
текст → bourne
Эрик Шмидт (Eric Schmidt), разработчик ПО для Unix и бывший CEO компании Google
хэш → FH83PFo4z55cU
текст → wendy!!!
Стюарт Фельдман (Stuart Feldman), автор средства автоматизации Unix и первого компилятора Fortran
хэш → IIVxQSvq1V9R2
текст → axolotl
У достигнутого объединёнными усилиями успеха опять имеется оговорка «почти». Хэш уже упомянутого здесь Билла Джоя — .2xvLVqGHJm8M — все ещё сопротивляется натиску современных технологий, и пароль 39-летней давности пока остаётся секретом.