Password CrackerКак да разбиете/познаете парола
⚡ Умно обобщение
Разбиването на пароли е практика за възстановяване на идентификационни данни чрез систематично отгатване, сравняване или изчисляване спрямо съхранените хешове. Този преглед обяснява как действат нападателите, инструментите, които използват, факторите, които им противодействат, и контролите, които администраторите трябва да прилагат.
Разбиването на пароли е една от най-старите дисциплини в офанзивната сигурност, но тя остава актуална както винаги, защото потребителите продължават да избират предвидими тайни. В този урок ще ви представим често срещаните техники, които нападателите използват за възстановяване на пароли, инструментите, които автоматизират работата, и контрамерките, които администраторите могат да внедрят, за да защитят системите от тези атаки.
Какво е кракване на парола?
Разбиването на пароли е процес на опит за получаване на неоторизиран достъп до ограничена система чрез възстановяване на тайната, която защитава механизъм за удостоверяване. Процесът на разбиване може да включва сравняване на съхранени хешове на пароли с предварително изчислен списък с думи или изпълнение на алгоритми, които генерират кандидат-пароли, докато не се намери съвпадение. След като бъде открито съвпадение, нападателят може да се удостовери като легитимен потребител, без дори да гадае онлайн.
Какво е силата на паролата?
Силата на паролата е мярка за ефективността на паролата да устои на атаки за разбиване на пароли. Силата на всяка парола се определя от три свойства:
- Дължина: общият брой знаци, които паролата съдържа.
- Сложност: дали използва комбинация от главни букви, малки букви, цифри и символи.
- Непредвидимост: дали паролата може лесно да бъде отгатната от нападател, който познава потребителя.
Нека сравним три пароли: парола, password1, и #парола1$За този пример ще използваме индикатора за сила на паролата на cPanel. Изображенията по-долу показват силата на всеки кандидат.
Забележка: използваната парола е парола; силата е 1, което е много слабо.
Забележка: използваната парола е password1; силата е 28, което все още е слабо.
Забележка: използваната парола е #парола1$; силата е 60, което е „силна“. Колкото по-високо е числото за сила, толкова по-добра е паролата.
Да предположим, че трябва да съхраняваме едни и същи пароли, използвайки MD5 хеширане. Ще използваме онлайн MD5 хеш генератор, за да преобразуваме всяка парола в нейната хеш стойност. Таблицата по-долу показва получените хешове.
| Парола | MD5 хеш | Индикатор за сила на cPanel |
|---|---|---|
| парола | 5f4dcc3b5aa765d61d8327deb882cf99 | 1 |
| password1 | 7c6a180b36896a0a8c02787eeafb0e4c | 28 |
| #парола1$ | 29e08fb7103c327d68327f23d8d9256c | 60 |
Сега ще използваме публичен сайт за обратно търсене на MD5, за да разбием горните хешове. Изображенията по-долу показват резултатите от разбиването на пароли за всяка стойност.
Както можете да видите от горните резултати, успяхме да разгадаем първата и втората парола, които имаха по-ниски стойности за сила. Не успяхме да разгадаем третата парола, която беше по-дълга, по-сложна и по-непредсказуема. Тя също така имаше по-висок номер за сила.
Техники за кракване на пароли
Има няколко доказани техники, които нападателите използват за възстановяване на пароли. По-долу ще опишем най-често използваните категории.
- Атака по речника: Този метод използва списък с думи с вероятни кандидати и сравнява всеки един със заснети потребителски пароли или хешове на пароли.
- Атака с груба сила: Атаките с груба сила комбинират буквено-цифрови знаци и символи, използвайки алгоритми, за да генерират систематично всяка възможна парола, докато не се намери съвпадение. Например парола като парола може да се опита и като дума използвайки хибридно правило за груба сила.
- Атака върху дъгова маса: Този метод разчита на предварително изчислени хешове. Да предположим, че база данни съхранява пароли като MD5 хешове. Атакуващият създава друга таблица, която съхранява MD5 хешове на често срещани пароли и сравнява заснетия хеш с предварително изчислената таблица. Ако се намери съвпадение, паролата се възстановява.
- Познай: Както подсказва името, този метод включва отгатване. Пароли като QWERTY, парола, и администратор се използват често или са зададени по подразбиране. Ако не бъдат променени, могат бързо да бъдат компрометирани.
- Паякообразно ловуване: Повечето организации използват пароли, които съдържат фирмена информация. Тази информация може да бъде събрана от корпоративни уебсайтове и социални медии като Facebook и Twitter. Spidering събира данни от тези източници, за да изгради целеви списъци с думи, които след това се използват в речникови и груби атаки.
- Пълнене на удостоверения: Атакуващите преиграват двойки потребителско име и парола, изтекли от едно нарушение срещу несвързани услуги, експлоатирайки потребители, които използват повторно идентификационни данни.
Един дълъг списък с думи за измислена компания може да комбинира: 1976 (година на рождение на основателя); смит, джоунс (фамилия); acme (име на компанията); built, to, last (ключови думи за визия); голф, шах, футбол (хобита).
Таблицата по-долу сравнява техниките по скорост, предварителни изисквания и откриваемост.
| Техника | Скорост | Изисква ли се хеш? | Откриваемо онлайн? |
|---|---|---|---|
| Речник | Бързо | По избор | Да |
| Груба сила | Бавен | По избор | Да |
| Дъгова маса | Много бързо | Да | Не (офлайн) |
| Отгатване | Променлив | Не | Да |
| Спайдъринг | Бавен | Не | Да |
| Пълнене на удостоверения | Бързо | Не | Да |
Password Cracker Инструменти
Инструментите за разбиване на пароли са софтуерни програми, които автоматизират описаните по-горе техники. Вече засегнахме една такава помощна програма в примера за силата по-рано, където публично търсене по MD5 използва таблица с дъга, за да обърне често срещани хешове. Сега ще разгледаме допълнителни инструменти, на които практикуващите разчитат по време на оторизирани оценки.
1) John the Ripper
John the Ripper използва командния ред и приема списъци с думи с правила за генериране на кандидати. Автоматично разпознава много често срещани хеш формати. Програмата е безплатна, докато подбрани търговски списъци с думи се предлагат отделно. Посетете https://www.openwall.com/john/.
2) Cain & Abel
Cain & Abel работи по Windows и възстановява потребителски пароли, извършва мрежово „sniffing“ и други. Графичният му интерфейс го прави популярен сред новодошлите. Инструментът не е поддържан активно от 2014 г., така че го използвайте само на по-стари лабораторни системи. Вижте https://sectools.org/tool/cain/.
3) Ophcrack
Ophcrack е платформа Windows разбивач на пароли, който използва таблици с дъга. Той работи на Windows, Linux и macOSи включва модул за груба сила. Посетете https://ophcrack.sourceforge.io/.
4) Hashcat
Hashcat е съвременният стандарт за възстановяване на пароли офлайн. Поддържа над 300 хеш алгоритъма, използва GPU ускорение и предлага атаки, базирани на правила. Документацията е достъпна на https://hashcat.net/hashcat/.
5) Хидра
Hydra (THC-Hydra) е насочена към онлайн услуги като SSH, FTP, RDP и HTTP формуляри за вход. Доставя се с Kali Linux и се използва широко в оторизирани операции на червените екипи.
Как да се предпазите от атаки за кракване на пароли?
Организацията може да използва следните мерки, за да намали вероятността от разбиване на пароли:
- Изисквайте минимум 12 знака и избягвайте предвидими шаблони като 11552266 или qwerty1234.
- Съхранявайте паролите с бавна еднопосочна хеш функция, като например bcrypt, scrypt или Argon2, вместо с бързи хешове, като например MD5 или SHA-1.
- Солтирането на всяка парола преди хеширане предотвратява търсенето в таблицата Rainbow, дори когато самото хеширане е бързо.
- Приемете политики за пароли, които предпочитат високи оценки за сила на паролите и насърчават използването на пароли, както е препоръчано от NIST SP 800-63B.
- Активирайте многофакторно удостоверяване (MFA), така че само открадната парола да не предоставя достъп.
- Използвайте мениджър на пароли, за да генерирате уникални идентификационни данни за всяка услуга, неутрализирайки атаките за „надуване“ на идентификационни данни.
- Конфигурирайте заключване на акаунти, ограничаване на достъпа и непрекъснато наблюдение, за да откриете ранно онлайн атаки чрез груба сила.
Хакерска дейност: Хакнете сега!
В този практически сценарий ще разгадаем Windows акаунт, който използва проста парола. Windows съхранява локалните идентификационни данни като NTLM хешове (схема, базирана на MD4), и ще използваме модула за NTLM кракер в Cain и Abel, за да възстановим стойността.
Каин и Авел могат да разбият пароли, използвайки речникова атака, груба сила или криптоанализ (предварително изчислени таблици). Тук ще използваме речниковата атака. Изтеглете списъка с думи. 10k-Most-Common.zip от реномирано огледало. За тази демонстрация създадохме акаунт, наречен Сметки с паролата QWERTY на Windows 7 лабораторна машина.
Как да разбиете парола
Ръководството по-долу съпоставя всеки екран на Каин и Авел с действието, което трябва да се предприеме. Следвайте стъпките по ред срещу вашия собствен лабораторен акаунт, никога срещу система, която не притежавате.
Стъпка 1) Отворете „Каин и Авел“.
Стартирайте приложението; ще видите следния главен екран.
Стъпка 2) Намерете бутона „Добавяне“.
Уверете се, че разделът Cracker е избран, както е показано по-горе, и щракнете върху бутона Добавяне в лентата с инструменти.
Стъпка 3) Изберете източника за импортиране.
Появява се следният диалогов прозорец. Изберете Импортиране на хешове от локалната система и щракнете върху Напред.
Стъпка 4) Revпреглед на импортираните акаунти.
Локалните потребителски акаунти са изброени, както следва. Точните резултати ще отразяват потребителските акаунти на вашата лабораторна машина.
Стъпка 5) Щракнете с десния бутон върху целевия акаунт.
Щракнете с десния бутон върху акаунта, който искате да разбиете. За този урок ще използваме Сметки потребител.
Стъпка 6) Отворете панела за атака с речник.
В прозореца за речникова атака щракнете с десния бутон върху секцията с речника и изберете Добави към списъка както е показано по-долу.
Стъпка 7) Отидете до файла със списъка с думи.
Прегледайте 10k-най-често срещаните.txt файла, който току-що сте изтеглили, и го изберете.
Стъпка 8) Revвижте възстановената парола.
Ако потребителят е избрал проста парола, като например QWERTY, ще видите резултати, подобни на екрана по-долу, с чиста текстова стойност до потребителския акаунт.
Забележка: времето, необходимо за разбиване на парола, зависи от силата на паролата, сложността на списъка с кандидати и процесорната мощност на вашата машина. Ако речниковата атака не възстанови паролата, опитайте атака с груба сила или криптоанализ.
Как изкуственият интелект е Решаping Разбиване и защита на пароли
Изкуственият интелект се превърна в сериозна сила и от двете страни при разбиването на пароли. Нападателите обучават езикови модели върху изтекли данни за идентификационни данни, за да предсказват реалистични пароли, докато защитниците свързват същите модели с телеметрични канали, за да откриват компрометиране по-бързо.
Ето как изкуственият интелект променя областта днес:
- По-интелигентно генериране на списъци с думи: Генеративни модели като PassGAN изучават човешки пароли и създават списъци с кандидати, които разбиват повече хешове от статичните речници.
- Оценка на поведенческия риск: Защитният изкуствен интелект проверява географията на входа, пръстовия отпечатък на устройството и TYping ритъм, изпращайки необичайни контексти за повишаване на удостоверяването.
- Откриване на аномалии в реално време: Класификаторите за машинно обучение наблюдават регистрационни файлове за удостоверяване и сигнализират за добавяне на идентификационни данни или бавни кампании за груба сила, които правилата за подпис пропускат.
- Автоматизирано коучинг за политики: Платформите за идентификация оценяват новите пароли спрямо специфичните за организацията корпуси и предлагат по-силни заместители, преди потребителите да ги финализират.
- Защита, устойчива на фишинг: Изкуственият интелект ускорява внедряването на FIDO2 и потоци с пароли, като анализира сигналите за риск и намалява неудобството на потребителите.
Комбинирайте AI мониторинга с многофакторно удостоверяване, модерно хеширане като Argon2 и бързи известия за нарушения, за да поддържате автоматизираната защита пред автоматизираната атака.
















