Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В криптоанализе и компьютерной безопасности , взлом паролей является процессом восстановления паролей [1] из данных , которые были сохранены в или передаваемых компьютерной системе в скремблировавшей форме. Распространенный подход ( атака полным перебором ) состоит в том, чтобы неоднократно пытаться угадать пароль и сравнивать их с доступным криптографическим хешем пароля. [2]

Цель взлома пароля может заключаться в том, чтобы помочь пользователю восстановить забытый пароль (установка полностью нового пароля представляет меньшую угрозу безопасности, но требует привилегий системного администратора), получить несанкционированный доступ к системе или действовать в качестве превентивной меры. мера, с помощью которой системные администраторы проверяют пароли, которые легко взломать. Для каждого файла взлом пароля используется для получения доступа к цифровым доказательствам, к которым судья разрешил доступ, когда права доступа к конкретному файлу ограничены.

Время, необходимое для поиска пароля [ править ]

Время взлома пароля связано с битовой стойкостью ( см. Надежность пароля ), которая является мерой энтропии пароля и деталями того, как пароль хранится. Большинство методов взлома паролей требуют, чтобы компьютер выдал множество возможных паролей, каждый из которых проверяется. Одним из примеров является взлом методом грубой силы , при котором компьютер пробует все возможные ключи или пароли до тех пор, пока не добьется успеха. При использовании нескольких процессоров это время может быть оптимизировано за счет поиска из последней возможной группы символов и из начала одновременно, при этом другие процессоры размещаются для поиска по назначенному набору возможных паролей. [3] Более распространенные методы взлома паролей, напримерАтаки по словарю , проверка шаблонов, подстановка списка слов и т. д. пытаются уменьшить количество требуемых попыток и обычно предпринимаются до перебора. Более высокая битовая стойкость пароля экспоненциально увеличивает количество возможных паролей, которые в среднем необходимо проверять, чтобы восстановить пароль, и снижает вероятность того, что пароль будет найден в любом словаре для взлома. [4]

Способность взламывать пароли с помощью компьютерных программ также зависит от количества возможных паролей в секунду, которые можно проверить. Если хеш-код целевого пароля доступен злоумышленнику, это число может исчисляться миллиардами или триллионами в секунду, поскольку возможна офлайн-атака . В противном случае скорость зависит от того, ограничивает ли программное обеспечение аутентификации частоту попыток ввода пароля, либо временными задержками, CAPTCHA , либо принудительной блокировкой после некоторого количества неудачных попыток. Другая ситуация, когда возможно быстрое угадывание, - это когда пароль используется для формирования криптографического ключа . В таких случаях злоумышленник может быстро проверить, успешно ли угаданный пароль декодирует зашифрованные данные.

Для некоторых видов хеширования паролей обычные настольные компьютеры могут проверять более ста миллионов паролей в секунду с помощью инструментов взлома паролей, работающих на ЦП общего назначения, и миллиарды паролей в секунду с помощью инструментов взлома паролей на базе графического процессора [1] [5] [6 ] (См. Тесты John the Ripper ). [7] Скорость подбора пароля сильно зависит от криптографической функции, используемой системой для генерации хэшей паролей. Подходящая функция хеширования паролей, такая как bcrypt , на много порядков лучше, чем простая функция вроде простой MD5 или SHA.. Согласно NIST, выбранный пользователем восьмизначный пароль с числами, смешанным регистром и символами, с отфильтрованными обычно выбираемыми паролями и другими словарными совпадениями, достигает 30-битной стойкости. 2 30 - это всего лишь один миллиард перестановок [8] и будет взломан за секунды, если хеш-функция наивна. Когда обычные настольные компьютеры объединяются для взлома, как это может быть сделано с ботнетами , возможности взлома паролей значительно расширяются. В 2002 году распределенный.net успешно нашел 64-битный ключ RC5 за четыре года, в результате чего было задействовано более 300 000 различных компьютеров в разное время, и которые генерировали в среднем более 12 миллиардов ключей в секунду.[9]

Графические процессоры могут ускорить взлом паролей в 50–100 раз по сравнению с компьютерами общего назначения для определенных алгоритмов хеширования. По состоянию на 2011 год доступные коммерческие продукты утверждают, что они могут проверять до 2 800 000 000 паролей в секунду на стандартном настольном компьютере с использованием графического процессора высокого класса. [10] Такое устройство может взломать 10-буквенный однозначный пароль за один день. Работа может быть распределена по множеству компьютеров для дополнительного ускорения, пропорционального количеству доступных компьютеров с сопоставимыми графическими процессорами. [ необходима цитата ] . Однако некоторые алгоритмы разработаны или даже специально разработаны для медленной работы на графических процессорах. Примеры включают (тройной) DES , bcrypt , scryptи Аргон2 .

Появление аппаратного ускорения в течение последнего десятилетия GPU позволило использовать ресурсы для повышения эффективности и скорости перебора для большинства алгоритмов хэширования. В 2012 году консалтинговая группа Stricture представила кластер на 25 графических процессоров, который обеспечил скорость атаки методом перебора в 350 миллиардов угадываний в секунду, что позволило им проверять комбинации паролей за 5,5 часов. Используя ocl- Hashcat Plus на кластерной платформе Virtual OpenCL [11], кластер GPU на базе Linux использовался для «взлома 90 процентов из 6,5 миллионов хэшей паролей, принадлежащих пользователям LinkedIn». [12]

Для некоторых конкретных алгоритмов хеширования ЦП и ГП не подходят. Специальное оборудование необходимо для работы на высоких скоростях. Заказное оборудование может быть выполнено с использованием технологии FPGA или ASIC . Разработка обеих технологий сложна и (очень) дорога. В общем, FPGA выгодны в небольших количествах, ASIC - в (очень) больших количествах, более энергоэффективны и быстрее. В 1998 году Electronic Frontier Foundation (EFF) построил специальный взломщик паролей с использованием ASIC. Их машина Deep Crack взломала 56-битный ключ DES за 56 часов, проверяя более 90 миллиардов ключей в секунду. [13] В 2017 году просочившиеся документы показывают, что ASIC используются в военном проекте, чтобы взломать весь Интернет.[14] Предполагается, что разработка и создание взломщиков паролей на базе ASIC будет недоступна для негосударственных организаций. С 2019 года John the Ripper поддерживает взлом паролей для ограниченного числа алгоритмов хеширования с использованием FPGA. [15] Установки на основе ПЛИС сейчас используются коммерческими компаниями для взлома паролей. [16]

Легко запомнить, сложно угадать [ править ]

Пароли, которые трудно запомнить, снизят безопасность системы, потому что (а) пользователям может потребоваться записать или сохранить пароль в электронном виде, используя небезопасный метод, (б) пользователям потребуется частый сброс пароля и (в) пользователи более вероятно для повторного использования того же пароля. Точно так же, чем более строгие требования к надежности пароля, например «иметь сочетание прописных и строчных букв и цифр» или «менять его ежемесячно», тем в большей степени пользователи будут нарушать работу системы. [17]

В статье «Запоминаемость и безопасность паролей» [18] Джефф Ян и др. исследует влияние рекомендаций, данных пользователям о правильном выборе пароля. Они обнаружили, что пароли, основанные на обдумывании фразы и взятии первой буквы каждого слова, так же запоминаются, как и наивно выбранные пароли, и так же сложно взломать, как и случайно сгенерированные пароли. Еще один хороший метод - объединение двух не связанных между собой слов. Еще один хороший метод - наличие специально разработанного « алгоритма » для генерации непонятных паролей.

Однако просить пользователей запомнить пароль, состоящий из «сочетания символов верхнего и нижнего регистра», аналогично тому, как просить их запомнить последовательность битов: их трудно запомнить, и лишь немного сложнее взломать (например, только в 128 раз сложнее взломать 7-буквенные пароли, меньше, если пользователь просто использует одну из букв с большой буквы). Просьба к пользователям использовать «и буквы, и цифры» часто приводит к легко угадываемым заменам, таким как «E» → «3» и «I» → «1», заменам, которые хорошо известны злоумышленникам. Точно так же набор пароля на одну строку клавиатуры выше - распространенный прием, известный злоумышленникам.

Исследование, подробно описанное в докладе нескольких профессоров Университета Карнеги-Меллона, опубликованном в апреле 2015 года, показывает, что люди выбирают структуру пароля по нескольким известным шаблонам. В результате пароли могут быть намного легче взломаны, чем в противном случае указывала бы их математическая вероятность. Например, пароли, содержащие одну цифру, непропорционально часто включают ее в конце пароля. [19]

Инциденты [ править ]

16 июля 1998 г. CERT сообщил об инциденте, когда злоумышленник обнаружил 186 126 зашифрованных паролей. К моменту обнаружения они уже взломали 47 642 пароля. [20]

В декабре 2009 года произошло серьезное нарушение пароля на веб- сайте Rockyou.com, в результате которого было выпущено 32 миллиона паролей. Затем злоумышленник передал в Интернет полный список из 32 миллионов паролей (без какой-либо другой идентифицирующей информации). Пароли хранились в открытом виде в базе данных и извлекались с помощью уязвимости SQL Injection. Центр защиты приложений Imperva (ADC) провел анализ надежности паролей. [21]

В июне 2011 года в НАТО (Организация Североатлантического договора) произошла брешь в системе безопасности, в результате которой были обнародованы имена и фамилии, имена пользователей и пароли для более чем 11 000 зарегистрированных пользователей их электронных книжных магазинов. Утечка данных произошла в рамках Operation AntiSec , движения, в которое входят Anonymous , LulzSec , а также другие хакерские группы и отдельные лица. [22]

11 июля 2011 г. серверы Booz Allen Hamilton , крупной американской консалтинговой фирмы, выполняющей значительный объем работы для Пентагона , были взломаны Anonymous, и в тот же день произошла утечка информации. «Утечка, получившая название« Военный кризис в понедельник », включает 90 000 логинов военного персонала, включая персонал из USCENTCOM , SOCOM , корпуса морской пехоты , различных объектов ВВС , внутренней безопасности , сотрудников Госдепартамента и, похоже, подрядчиков из частного сектора». [23] Эти просочившиеся пароли были хешированы с использованием несоленого SHA-1., и позже были проанализированы командой ADC в Имперве , показав, что даже некоторые военнослужащие использовали такие слабые пароли, как «1234». [24]

18 июля 2011 года Microsoft Hotmail заблокировал пароль: «123456». [25]

В июле 2015 года группа, называющая себя «The Impact Team», украла пользовательские данные Эшли Мэдисон . Многие пароли хешировались с использованием как относительно надежного алгоритма bcrypt , так и более слабого хеширования MD5. Атака последнего алгоритма позволила восстановить около 11 миллионов паролей в виде открытого текста.

Профилактика [ править ]

Один из методов предотвращения взлома пароля - гарантировать, что злоумышленники не смогут получить доступ даже к хешированному паролю. Например, в операционной системе Unix хешированные пароли изначально хранились в общедоступном файле / etc / passwd . С другой стороны, в современных Unix (и подобных) системах они хранятся в файле теневых паролей / etc / shadow., который доступен только программам, работающим с расширенными привилегиями (т. е. «системными» привилегиями). Это затрудняет получение злоумышленником хешированных паролей в первую очередь, однако многие коллекции хэшей паролей были украдены, несмотря на такую ​​защиту. А некоторые распространенные сетевые протоколы передают пароли в открытом виде или используют слабые схемы запроса / ответа. [26] [27]

Другой подход - объединить секретный ключ для конкретного сайта с хешем пароля, что предотвращает восстановление пароля в виде открытого текста, даже если хешированные значения украдены. Однако атаки повышения привилегий, которые могут украсть защищенные хеш-файлы, также могут раскрыть секрет сайта. Третий подход заключается в использовании функций вывода ключей, которые снижают скорость угадывания паролей. [28] : 5.1.1.2

Другой мерой защиты является использование соли , случайного значения, уникального для каждого пароля, включенного в хеширование. Salt предотвращает одновременную атаку нескольких хэшей, а также предотвращает создание предварительно вычисленных словарей, таких как радужные таблицы .

Современные системы Unix заменили традиционную функцию хеширования паролей crypt () на основе DES на более сильные методы, такие как crypt-SHA , bcrypt и scrypt . [29] Другие системы также начали применять эти методы. Например, Cisco IOS изначально использовала обратимый шифр Виженера для шифрования паролей, но теперь использует md5-crypt с 24-битной солью, когда используется команда «enable secret». [30]Эти новые методы используют большие значения соли, которые не позволяют злоумышленникам эффективно проводить автономные атаки одновременно против нескольких учетных записей пользователей. Алгоритмы также намного медленнее выполняются, что резко увеличивает время, необходимое для успешной автономной атаки. [31]

Многие хэши, используемые для хранения паролей, такие как MD5 и семейство SHA , предназначены для быстрых вычислений с небольшими требованиями к памяти и эффективной аппаратной реализацией. Несколько экземпляров этих алгоритмов можно запускать параллельно на графических процессорах (GPU), ускоряя взлом. В результате быстрые хеш-коды неэффективны для предотвращения взлома паролей даже с использованием соли. Некоторые ключевые алгоритмы растяжения , такие как PBKDF2 и crypt-SHA, итеративно вычисляют хэши паролей и могут значительно снизить скорость проверки паролей, если количество итераций достаточно велико. Другие алгоритмы, такие как scrypt, потребляют много памяти., что означает, что они требуют относительно больших объемов памяти в дополнение к трудоемким вычислениям, и поэтому их труднее взломать с использованием графических процессоров и специализированных интегральных схем.

В 2013 году долгосрочный хэширования паролей Конкурс был объявлен , чтобы выбрать новый, стандартный алгоритм хэширования паролей, [32] с Argon 2 выбрана в качестве победителя в 2015 Другой алгоритм, воздушный шар , рекомендуется по NIST . [33] Оба алгоритма потребляют много памяти.

Такие решения, как токен безопасности, дают формальный доказательный ответ, постоянно меняя пароль. Эти решения резко сокращают временные рамки, доступные для грубой силы (злоумышленнику необходимо взломать и использовать пароль в течение одной смены), и они уменьшают ценность украденных паролей из-за их короткого срока действия.

Программное обеспечение [ править ]

Существует множество программных инструментов для взлома паролей, но самыми популярными [34] являются Aircrack , Cain and Abel , John the Ripper , Hashcat , Hydra , DaveGrohl и ElcomSoft . Многие пакеты программного обеспечения для поддержки судебных разбирательств также включают функцию взлома паролей. Большинство из этих пакетов используют сочетание стратегий взлома, алгоритмов с использованием грубой силы и словарных атак, что оказывается наиболее продуктивным. [35]

Повышенная доступность вычислительных мощностей и удобное для новичков программное обеспечение для автоматического взлома паролей для ряда схем защиты позволило взяться за эту деятельность скрипачам . [36]

См. Также [ править ]

  • Атака грубой силой
  • Атака холодной загрузки
  • Атака по словарю
  • Расплывчатая атака

Ссылки [ править ]

  1. ^ a b oclHashcat-lite - расширенное восстановление пароля . Hashcat.net. Проверено 31 января, 2013.
  2. ^ Монторо, Массимилиано (2009). "Взломщик паролей грубой силой" . Oxid.it . Архивировано 20 августа 2013 года . Проверено 13 августа 2013 года .CS1 maint: неподходящий URL ( ссылка )
  3. ^ Bahadursingh, Роман (19 января 2020). "Распределенный алгоритм для взлома паролей методом грубой силы на n процессорах". DOI : 10.5281 / zenodo.3612276 . Цитировать журнал требует |journal=( помощь )
  4. Рианна Лундин, Ли (11 августа 2013 г.). «ПИН-коды и пароли, часть 2» . Пароли . Орландо: SleuthSayers.
  5. ^ Александр, Стивен. (20 июня 2012 г.) Заклинатель ошибок: Какой длины должны быть пароли? . Bugcharmer.blogspot.com. Проверено 31 января, 2013.
  6. ^ Блог Cryptohaze: 154 миллиарда NTLM / сек на 10 хешах . Blog.cryptohaze.com (15 июля 2012 г.). Проверено 31 января 2013.
  7. ^ Тесты Иоанна Потрошителя . openwall.info (30 марта 2010 г.). Проверено 31 января 2013.
  8. ^ Берр, МЫ; Додсон, Д. Ф.; Полк, WT (2006). «Руководство по электронной аутентификации» (PDF) . NIST. DOI : 10,6028 / NIST.SP.800-63v1.0.2 . Проверено 27 марта 2008 года . Цитировать журнал требует |journal=( помощь )
  9. ^ "64-битный ключевой статус проекта" . Distributed.net. Архивировано из оригинального 10 сентября 2013 года . Проверено 27 марта 2008 года .
  10. ^ Таблица скорости восстановления паролей , от ElcomSoft . Пароли NTLM , графический процессор Nvidia Tesla S1070, по состоянию на 1 февраля 2011 г.
  11. ^ http://www.mosix.org/txt_vcl.html/
  12. ^ «Кластер на 25 GPU взламывает каждый стандартный пароль Windows менее чем за 6 часов» . 2012 г.
  13. ^ «Машина EFF DES Cracker привносит честность в дебаты о криптографии» . ЭФФ. Архивировано из оригинала на 1 января 2010 года . Проверено 7 июня 2020 года .
  14. ^ "В NYU СЛУЧАЙНО ОБНАРУЖИЛ КОМПЬЮТЕРНЫЙ ПРОЕКТ, ВЫЗЫВАЮЩИЙ ВОЕННЫЙ КОД, ВО ВСЕЙ ИНТЕРНЕТ" .
  15. ^ "Джон Потрошитель 1.9.0-jumbo-1" .
  16. ^ «Взлом пароля Bcrypt очень медленный? Нет, если вы используете сотни FPGA!» .
  17. ^ Управление сетевой безопасностью . Фред Коэн и партнеры. All.net. Проверено 31 января, 2013.
  18. ^ Ян, Дж .; Blackwell, A .; Андерсон, Р .; Грант, А. (2004). «Запоминаемость и безопасность паролей: эмпирические результаты» (PDF) . Журнал IEEE Security & Privacy . 2 (5): 25. DOI : 10,1109 / MSP.2004.81 . S2CID 206485325 .  
  19. Стейнберг, Джозеф (21 апреля 2015 г.). «Новые технологии взламывают« надежные »пароли - что вам нужно знать» . Forbes .
  20. ^ "CERT IN-98.03" . Проверено 9 сентября 2009 года .
  21. ^ «Наихудшие методы использования пользовательских паролей» (PDF) .
  22. ^ "НАТО Hack Attack" . Проверено 24 июля 2011 года .
  23. ^ "Анонимные утечки 90 000 военных учетных записей электронной почты в последней антисекционной атаке" . 11 июля 2011 г.
  24. ^ «Анализ военного пароля» . 12 июля 2011 г.
  25. ^ "Запреты Microsoft Hotmail 123456" . Imperva . 18 июля 2011 года Архивировано из оригинального 27 марта 2012 года.
  26. Перейти ↑ Singer, Abe (ноябрь 2001 г.). «Пароли без открытого текста» (PDF) . Войти . 26 (7): 83–91. Архивировано из оригинального (PDF) 24 сентября 2006 года.
  27. ^ Криптоанализ протокола туннелирования точка-точка Microsoft . Schneier.com (7 июля 2011 г.). Проверено 31 января 2013.
  28. Перейти ↑ Grassi, Paul A (июнь 2017). «SP 800-63B-3 - Руководство по цифровой идентификации, аутентификация и управление жизненным циклом» . NIST. DOI : 10.6028 / NIST.SP.800-63b . Цитировать журнал требует |journal=( помощь )
  29. ^ Схема паролей, адаптируемая к будущему . Usenix.org (13 марта 2002 г.). Проверено 31 января 2013.
  30. ^ Часто задаваемые вопросы по MDCrack 1.8 . Никто. Проверено 31 января, 2013.
  31. ^ Защита паролем для современных операционных систем . Usenix.org. Проверено 31 января, 2013.
  32. ^ «Конкурс хеширования паролей» . Архивировано из оригинала на 2 сентября 2013 года . Проверено 3 марта 2013 года .
  33. ^ NIST SP800-63B Раздел 5.1.1.2
  34. ^ «10 лучших взломщиков паролей» . Сектоолы . Проверено 1 ноября 2009 года .
  35. ^ «Оставайтесь в безопасности: посмотрите, как работают взломщики паролей - блог Keeper» . Блог Keeper Security - Новости кибербезопасности и обновления продуктов . 28 сентября 2016 . Проверено 7 ноября 2020 года .
  36. Рианна Андерсон, Нейт (24 марта 2013 г.). «Как я стал взломщиком паролей: взлом паролей теперь официально стал делом« скриптовых детей »» . Ars Technica . Проверено 24 марта 2013 года .

Внешние ссылки [ править ]

  • Филипп Окслин: Более быстрый криптоаналитический компромисс между временем и памятью. CRYPTO 2003: стр. 617–630
  • Сводка утечек, сделанных The Anonymous и LulzSec в 2011 году
  • Международная конференция паролей
  • Защита паролем: прошлое, настоящее, будущее, презентация Passwords12
  • Список взломанных паролей Skullsecurity