Когда хакеры или тестеры проникновения взломают систему и хотят получить доступ к паролю в простом тексте из свалки базы данных, они должны сначала взломать хеш пароля.Многие злоумышленники погружаются в эту концепцию: они пробуют любую произвольную крипто-атаку, которую они хотят попробовать, практически без причин.В этой дискуссии будет показано несколько эффективных методов взлома паролей и как можно использовать статистический анализ паролей в сочетании с инструментами для создания ограниченного по времени подхода к эффективному и успешному взлому.
Расшифровка паролей - это умирающее дело.Пользователям нужно создавать более сложные пароли, и некоторые разработчики системы начали использовать такие механизмы, как Bcrypt, чтобы заменить стандартные хеши-функции. Хеш Bcrypt занимает больше времени для создания, поэтому пароли становятся сложнее взломать.Для эффективного взлома паролей хакеры должны очень быстро генерировать хеши, поэтому Bcrypt является очень мощным инструментом для борьбы с такими атаками.Чтобы проиллюстрировать этот пример, в 2012 году программа для взлома паролей, созданная на основе 25 кластеров GPU, смогла генерировать NTLM-хэши со скоростью 350 млрд. хешей в секунду, по сравнению с 71 000 хешами Bcrypt.Используя это в качестве сравнительной модели, на каждый сгенерированный хеш Bcrypt можно сгенерировать 5 миллионов хешей NTLM.Столкнувшись с алгоритмом Bcrpyted, хакеры должны делать более вычислительные предположения о пароле и не могут полагаться на использование грубой силы для каждой возможности.
Примечание: если злоумышленник знает, что длина пароля настолько коротка, что для взлома пространства ключей не потребуется много времени, то не нужно предпринимать шаги по инкрементальной атаке.
Хотя было бы хорошо перезаписывать все критическое пространство пароля пользователя, время, необходимое для этого, часто нецелесообразно.Таким образом, при взломе важно сначала попробовать наиболее затратную на время атаку, а если она не увенчается успехом, перейти к более медленной крипто-атаке, которая записывает больше пространства ключей.Самый быстрый способ - это простая словарная атака, основанная на часто используемых паролях пользователей и предыдущих паролях.Начиная с этого, следует попытаться манипулировать словарем, чтобы добавить цифры или символы в конце или изменить буквы.Это называется гибридной атакой или атакой, основанной на правилах.Далее, вы можете попробовать использовать функции машинного обучения для генерации возможных паролей.Цепи Маркова - хороший пример.Составление слов путем сочетания общих элементов, существующих в английском языке (например, «ing», «er», «qu»), позволяет получить хорошее предположение о пароле, например, следующий пароль.Несмотря на то, что этот конкретный пароль легко взломать с помощью любого метода, мы будем использовать его, чтобы упростить все средства атаки. Password1234Password1234 Pa + ss + Word + 1234 Наконец, целенаправленная атака насилия (называемая маскированной атакой) закроет все пространство ключа для данного пароля на основе криптоструктуры.
Под «структурой» пароля я имею в виду тип символов и последовательность, используемую для создания пароля.Например, «структура» имеет заглавные буквы, за которыми следуют семь малых букв, за которыми следуют четыре цифры (описывается как). Password1234ul-lldddd Маленькие буквы, большие буквы, символы, цифры (l) (u) (s) (d) Таким образом, если злоумышленник решит использовать все возможности для создания комбинации символов с этой структурой, он или она в конечном итоге найдет пароль.
Таким образом, вопрос злоумышленника становится следующим: какую структуру следует в первую очередь нацелить при атаке на набор хешей? Password1234 Статистический анализ Чтобы помочь ответить на этот вопрос, я провел несколько статистических анализов популярных паролей, чтобы посмотреть, существует ли шифровая структура, более распространенная, чем другие шифровая структура, и в какой степени она верна.
Выборка более 34 миллионов открытых паролей включает в себя известные пароли, такие как RockYou, LinkedIn, phpBB и другие.
На следующей иллюстрации показана частота маскированной структуры для каждой уникальной маски.Красная линия обозначает полосу 50%, которая появляется после 13-й наиболее часто встречающейся маски.
Это означает, что первые 13 уникальных маскируемых структур составляют 50% выборки пароля.Структуры с более чем 20 миллионов паролей в выборке расположены в первых 13 масках.Эти результаты довольно шокируют с точки зрения распространенности структурированных шифров.Остальные 50% находятся в длинном правом хвосте, который на этом рисунке уменьшен.Фактически, из 260 500 уникальных масок на данном рисунке показано только 400.Концепция этого общего строя пароля невероятна; однако, это не удивительно, когда вы думаете о том, как пользователи создают и запоминают свои пароли.Исходя из анализа данных, существует ряд логических факторов, которые помогают объяснить, как это возможноКогда пользователям предлагается предоставить пароль, содержащий заглавные буквы, более чем 90% случаев он используется в качестве первого символа.Когда требуется использовать цифры, большинство пользователей добавляют две цифры в конце пароля (возможно, год выпуска).Следующим наиболее популярным вариантом является пароль, заканчивающийся четырьмя цифрами (возможно, за прошлый год или за этот год).В этом случае следующая наиболее популярная цифра имеет одну цифру в конце, а в конце - три.Такие структурные общие черты позволяют злоумышленникам предсказывать, какая, скорее всего, будет структура паролей пользователя.
Таким образом, мы предполагаем, что, если мы видим последовательность букв, то это, скорее всего, слово.Это очень полезное предположение для крэкеров, поскольку устраняет большое количество пространства для ключей.Затем это превратилось в гибридную атаку, использующую статистическую значимость общих криптоструктур.Ограничения по эффективности и времени potatoesppifwdhpp Как правило, как тестеры проникновения, даже если мы разрушаем набор хешей, у нас может быть не время взломать все хеши.
Однако их нарушение может помочь улучшить доступ к системе и дать клиентам более полезные результаты.Таким образом, при взломании пароля может быть полезно определить, сколько времени будет выделено на взлома набора хеширов.Используя структуры, обнаруженные в предыдущем анализе, злоумышленник может определить, какие 10 наиболее распространенных структур он хочет переопределить на основе требований к сложности пароля, в зависимости от времени наиболее быстрого завершения.Наконец, злоумышленник может ограничить время своих методов, потратив не более часа на выполнение взлома.Это было обнаружено во время недавнего теста на проникновение для получения хеши.Ниже приведены снимки результатов Cracker на основе процессора.
В этом случае быстрее всего выполнить структуру, если мы определим ее как одну заглавную букву, за которой следует три малых буквы («W» означает «слово»), а затем четыре цифры.Хэш-набор содержит 69 паролей, которые соответствуют этой структуре, и мой стандартный процессор способен просматривать все возможности этой структуры за одну минуту.Мы остановили взлом через 62 минуты, и взлом создал 221 уникальный хак-хеш, соответствующий 491 учетной записи, что привело к 11 процентам утечек.Значительная разница в количестве взлома паролей и утечек учетных записей объясняется тем, что настройки Office, как правило, заставляют пользователей использовать обычные пароли.Если злоумышленник определит, что в среде используется общий пароль, все пользователи, имеющие один и тот же пароль, также подвергаются опасности. U (W3) dddd Хотя гибридная атака или атака, основанная на правилах (например), может взломать несколько из этих паролей быстрее, структура атакующего пароля позволяет нам охватить больше пространства ключей.
Этот метод является эффективным следующим шагом, если быстрая атака оказалась неэффективной для разрушения целевого хеша.Кроме того, важно помнить, что этот пример выполнен на довольно скромном процессоре, и выполнение той же атаки на мощном GPU может сократить это время до нескольких секунд.Таким образом, точные сроки имеют меньшее значение, чем доктрина эффективного осуществления. Best64 помогает нам атаковать распространенные криптоструктуры в целом для статистического анализа; Тем не менее, есть инструменты, которые помогут найти конкретные приложения.
Инструменты, такие как CeWL, могут сканировать слова с веб-страниц и использовать их для создания списков слов или словарей, специально предназначенных для компаний. Они эффективны потому, что компании предпочитают использовать пароли, связанные с их отраслями, компаниями или работой.Кроме того, поскольку мы определили, что часто используемые пароли являются популярными в рабочей среде, можно использовать уже взломанные пароли в качестве основы для других паролей, которые могут быть аналогичными.Например, если мы обнаружим, что «» является паролем пользователя, мы можем поместить «» в новый список слов, поместить его в набор правил, а затем обнаружить, что у кого-то другого есть пароль.Эта концепция использования основных слов взлома (например, и модификации с окружающими символами) очень эффективна при взломахэсов, сброшенных из корпоративной среды, что восходит к концепции повторного использования паролей.''Согласно тестам на проникновение, которые мы провели, это лучше всего подходит для взлома последних 20% неразглашенных хешей. AcmeCorp1234AcmeCorpAcmeCorp @ 2015AcmeCorp также важно подрезать словарь, чтобы все пароли, которые можно угадать, соответствовали требованиям, установленным приложением, чтобы не тратить время на гадания паролей, которые невозможно угадать из-за длины или состава символов.
Таким образом, злоумышленники должны внедрить стандартный метод, учитывающий это.Если злоумышленник хочет, чтобы учетная запись была взломана на первом этапе, то, возможно, нет никаких оснований для продолжения других атак; однако во многих случаях, если существует целевой учетная запись, простой словарной атаки может быть недостаточно, или злоумышленник просто хочет уничтожить как можно больше учетных записей, поэтому может потребоваться гибридная атака и целенаправленная атака насилия с использованием статистической структуры.Таким образом, для успешного взлома имеет решающее значение создание методов, которые могут включать в себя упомянутые выше методы, а также некоторые автоматизированные процессыНедавние инструменты, такие как PRINCE, могут помочь облегчить взлома паролей. Важно разрабатывать ленту инструментов, например PRINCE, чтобы попробовать в методах, но понимание функций, стоящих за инструментами, а не полностью полагаться на них, сделает взлом более эффективным.
Таким образом, разработчикам, возможно, следует реализовать элементы управления, которые препятствуют пользователям использовать некоторые из этих очень популярных структур, чтобы сгладить кривую предыдущего чертежа.Однако проблема с этой идеей заключается в том, что без простой структуры пользователям может быть трудно запомнить свои пароли.Я рекомендую использовать менеджер паролей, требующий двухфакторной аутентификации.Эти приложения генерируют и хранят все ваши пароли для вас, поэтому память не является проблемой.Пароли, которые они генерируют, являются случайными по структуре и могут использоваться до тех пор, пока это позволяет приложение.Как я уже упоминал ранее, шифрование паролей является еще одним очень эффективным способом замедления перспектив атакующих.Наконец, внедрение стратегий в офисе, помогающих пользователям понять опасности обмена паролями или повторного использования паролей, является успешным шагом в правильном направлении, даже если пользователи не всегда соблюдают их.Хотя они, скорее всего, не всегда соблюдают эти правила, это является эффективной мерой контроля.
По мере того, как сложность взлома возрастает, требуются целенаправленные атаки, основанные на эффективности, и следует создать индивидуальные методы взлома.Вкладывать деньги на то, чтобы в конечном итоге повысить скорость генерации хеши не стоит.Таким образом, использование статистических данных и инструментов в качестве метода атаки и внедрение упрощенного процесса может облегчить взлома паролей.Разработчики могут разработать меры контроля, чтобы справиться с этой ситуацией, и пользователи могут использовать безопасные менеджеры паролей, чтобы свести к минимуму эффективность этих атак; однако, подобные реализации еще не очень популярны.В настоящее время статистические атаки на пароли эффективны как с точки зрения количества взломов, так и с точки зрения эффективности временных соединений.Подумайте о своих собственных паролях и спросите себя, как быстро они могут быть взломаны в зависимости от структуры паролей и того, какие меры контроля в вашем офисе могут привести злоумышленников к взлому учетных записей пользователей.