МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ
“ЛЬВІВСЬКА ПОЛІТЕХНІКА”
КАФЕДРА ЗІ
/
Звіт
з лабораторної роботи №3
“ДОСЛІДЖЕННЯ МЕТОДІВ РОЗКРИТТЯ ПАРОЛІВ ”
КОРОТКІ ТЕОРЕТИЧНІ ВІДОМОСТІ
1. Атака на паролі
Проблему безпеки комп'ютерних мереж надуманої не назвеш. Практика показує: чим масштабніша мережа і чим цінніша інформація довіряється підключеним до неї комп'ютерам, тим більше знаходиться охочих порушити її нормальне функціонування заради матеріальної вигоди або просто з дозвільної цікавості. У найкрупнішій комп'ютерній мережі в світі (Internet) атаки на комп'ютерні системи виникають подібно до хвиль цунамі, змітаючи всі захисні бар'єри і залишаючи після себе комп'ютери, що впали в параліч, і спустошені вінчестери. Ці атаки не знають державних кордонів. Йде постійна віртуальна війна, в ході якої організованості системних адміністраторів протистоїть винахідливість комп'ютерних зломщиків.
Основним захисним рубежем проти зловмисних атак в комп'ютерній мережі є система парольного захисту, який є у всіх сучасних операційних системах. Відповідно до сталої практики перед початком сеансу роботи з операційною системою користувач зобов'язаний реєструватися, повідомивши їй своє ім'я і пароль. Ім'я потрібне операційній системі для ідентифікації користувача, а пароль служить підтвердженням правильності проведеної ідентифікації. Інформація, введена користувачем в діалоговому режимі, порівнюється з тією що є у розпорядженні операційної системи. Якщо перевірка дає позитивний результат, то користувачеві стають доступні всі ресурси операційної системи, пов'язані з його ім'ям.
Як пароль може потрапити до рук зловмисника? Найбільш реальними виглядають наступні випадки:
записаний Вами пароль знайдений зловмисником;
пароль був підглянений зловмисником при введенні легальним користувачем;
зловмисник дістав доступ до бази даних системи захисту.
Заходи протидії першим двом небезпекам очевидні.
У останньому випадку зловмисникові буде потрібно спеціалізоване програмне забезпечення, оскільки, записи в такому файлі украй рідко зберігаються у відкритому вигляді.
2. Що таке парольний зломщик
Спроба зловмисника підібрати ім'я і пароль для входу в операційну систему, по черзі перебираючи в думці всі можливі варіанти і вводячи їх з клавіатури приречена на провал. Швидкість такого підбору пароля буде надзвичайно низькою, тим більше що в операційних системах з добре продуманим парольним захистом кількість підряд повторних введень конкретного користувацького імені і відповідного йому пароля завжди можна обмежити двома-трьома і зробити так, що якщо це число буде перевищено, то вхід в систему з використанням даного імені блокується протягом фіксованого періоду часу або до приходу системного адміністратора.
Набагато ефективнішим є інший метод злому парольного захисту операційної системи, при якому атаці піддається системний файл, що містить інформацію про її легальних користувачів і їх паролі. Проте будь-яка сучасна операційна система надійно захищає за допомогою шифрування призначені для користувача паролі, які зберігаються в цьому файлі. Доступ до таких файлів, як правило, за умовчанням заборонений навіть для системних адміністраторів, не говорячи вже про рядових користувачів. Проте, у ряді випадків зловмисникові вдається шляхом різних хитрувань отримати в своє розпорядження файл з іменами користувачів і їх зашифрованими паролями. І тоді йому на допомогу приходять так звані парольні зломщики -спеціалізовані програми, які служать для злому паролів операційних систем.
3. Як працює парольний зломщик
Стійкість парольної системи визначається її здатністю протистояти атаці зловмисника, що оволодів базою даних облікових записів і який намагається відновити паролі, і залежить від швидкості "максимально швидкої" реалізації використовуваного алгоритму хэшування. Відновлення паролів полягає в обчисленні хэш-значень по можливих паролях і порівнянні їх з наявними хэш-значеннями паролів з подальшим їх представленням в явному вигляді з урахуванням регістра.
Криптографічні алгоритми, вживані для шифрування паролів користувачів в сучасних операційних системах, в переважній більшості випадків є дуже стійкими. Тому є малоймовірним випадок знаходження методу їх дешифрування, який виявиться ефективнішим, ніж тривіальне перебір можливих варіантів. Тому парольні зломщики іноді просто шифрують всі паролі з використанням того ж самого криптографічного алгоритму, який застосовується для їх засекречування в операційній системі, що атакується, і порівнюють результати шифрування з тим, що записане в системному файлі, де знаходяться шифровані паролі її користувачів. При цьому як варіанти паролів парольні зломщики використовують символьні послідовності, що автоматично генеруються з деякого набору символів. Даний спосіб дозволяє зламати всі паролі, якщо відоме їх представлення в зашифрованому вигляді і вони містять тільки символи з даного набору. Максимальний час, який буде потрібно для злому пароля, можна обчислити за наступною формулою:
де N — число символів в наборі, L — гранична довжина пароля, S — кількість перевірок в секунду (залежить від операційної системи і швидкодії комп'ютера, на якому проводиться злом її парольного захисту).
З приведеної формули видно, що за рахунок дуже великого числа перебраних комбінацій, яке росте експоненціально із збільшенням числа символів в початковому наборі, такі атаки парольного захисту операційної системи можуть займати дуже багато часу. Проте добре відомо, що більшість користувачів операційних систем не утрудняють себе вибором стійких паролів (тобто таких, які важко зламати). Тому для ефективнішого підбору паролів парольні зломщики зазвичай використовують так звані словники, що є наперед сформованим списком слів, найчастіше вживаних на практиці як паролі.
Для кожного слова із словника парольний зломщик використовує одне або декілька правил. Відповідно до цих правил слово змінюється і породжує додаткову множину паролів для випробувань. Проводиться поперемінна зміна буквеного регістра, в якому набрано слово, порядок проходження букв в слові міняється на зворотний, в початок і в кінець кожного слова приписується цифра 1, деякі букви замінюються на близькі по зображенню цифри (в результаті, наприклад, із слова password виходить pa55wOrd). Це підвищує вірогідність підбору пароля, оскільки в сучасних операційних системах, як правило, розрізняються паролі, набрані великими і малими буквами, а користувачам цих систем рекомендується вибирати паролі, в яких букви чергуються з цифрами.
Одні парольні зломщики по черзі перевіряють кожне слово із словника, застосовуючи до нього певний набір правив для генерації додаткової множини паролів для вивпробувань. Інші заздалегідь обробляють весь словник за допомогою цих же правил, отримуючи новий словник більшого розміру, і потім з нього черпають паролі, що перевіряються. Враховуючи, що звичайні словники людських мов складаються всього з декількох сотень тисяч слів, а швидкість шифрування паролів достатньо висока, парольні зломщики, що здійснюють пошук з використанням словника працюють достатньо швидко.
Взагалі пароль з бази даних облікових записів може бути відновлений різними способами: атакою по словнику, послідовним (повним) перебором і гібридом атаки по словнику та послідовного перебору.
При атаці по словнику послідовно обчислюються хэш-значення для кожного із слів словника або модифікацій слів словника і порівнюються з хэш-значеннями паролів кожного з користувачів. При збігу хэш-значень пароль знайдений. Перевага методу - його висока швидкість. Недоліком є те, що таким чином можуть бути знайдені тільки дуже прості паролі, які є в словнику або є модифікаціями слів словника. Успіх реалізації даної атаки безпосередньо залежить від якості і об'єму використовуваного словника (нескладно відшукати подібні готові словники в Інтернеті).
Послідовний перебір всіх можливих комбінацій (brute force (англ.) - груба сила, рішення "в лоб") використовує набір символів і обчислює хэш-значення для кожного можливого пароля, складеного з цих символів. При використанні цього методу пароль завжди буде визначений, якщо складові його символи присутні у вибраному наборі. Єдиний недолік цього методу - велика кількість часу, який може бути потрібний на визначення пароля. Чим більша кількість символів (букв різного регістра, цифр, спецсимволів) міститься у вибраному наборі, тим більше часу може пройти, поки перебір комбінацій не закінчиться.
При відновленні паролів гібридом атаки по словнику і послідовного перебору до кожного слова або модифікації слова словника додаються символи справа і/або зліва (123parol). Крім цього може здійснюватися перевірка використання: імен користувачів як паролі; повторення слів (dogdog); зворотного порядку символів слова (elpoep); транслітерації букв (parol); заміну букв кирилиці латинською розкладкою (gfhjkm).
Для кожної комбінації, що вийшла, обчислюється хэш-значення, яке порівнюється з хэш-значеннями паролів кожного з користувачів.
Парольні зломщики призначені виключно для підбору паролів. Така вузька спеціалізація не сприяє різноманітності їх інтерфейсу і великій кількості супровідної документації. Авторами більшої частини парольних зломщиків є люди комп'ютерного підпілля, які створюють їх "на льоту" для задоволення власних сьогохвилинних потреб, і тому рідко забезпечують їх докладною документацією і вбудованими довідковими системами. Виняток з цього правила становлять тільки парольні зломщики, створені фахівцями в області комп'ютерної безпеки для виявлення слабких місць в парольному захисті операційних систем (так званий парольний аудит). В цьому випадку дистрибутив парольного зломщика, крім самої програми, обов'язково включає різноманітні додаткові відомості, що стосуються технічних сторін її експлуатації, а також невеликий словник.
Результати виконання роботи:
ПОСЛІДОВНІСТЬ ВИКОНАННЯ ЛАБОРАТОРНОЇ РОБОТИ
1. Визначити час розкриття паролю для атаки по словнику, для атаки послідовним перебором і для гібридної атаки.
2. Повторити для другого паролю.
3. Порівняти отримані результати.
/
/
/
/
/
/
/
/
Висновки: при виконані лабораторної роботи №2 я дослідила, що найкращий спосіб для розкриття паролів це атака послідовним перебором. Єдиний недолік цього методу - велика кількість часу, яка може бути потрібна на визначення пароля.