- •Техніка безпеки при роботі за комп’ютером
- •Практична робота № 1
- •Короткі теоретичні відомості
- •Завдання до практичної роботи
- •4 Контрольні запитання
- •Практична робота № 2
- •Короткі теоретичні відомості
- •Завдання до практичної роботи:
- •Практична робота № 3
- •Короткі теоретичні відомості
- •3. Контрольні питання:
- •Завдання на практичну роботу
- •Контрольні запитання
- •Практична робота № 5
- •Короткі теоретичні відомості
- •Завдання на практичну роботу
- •Контрольні запитання
- •Рекомендована література
- •Додаток а варіанти завдання до практичної роботи № 1
Практична робота № 1
Тема: захист інформації за допомогою паролю.
Мета: дослідження захисту із застосуванням пароля, а також дослідження методів протидії атакам на пароль.
Обладнання та програмне забезпечення: ПК з встановленою операційною системою Windows, архіватором WinZip та програмою Advanced ZIP Password Recovery.
Короткі теоретичні відомості
Атаки на пароль
На сьогоднішній день пароль є найбільш прийнятним і тому найбільш часто використовуваним засобом встановлення справжності, заснованим на знаннях суб'єктів доступу.
Очевидно, що короткі або осмислені паролі легко запам'ятовуються людиною, але вони набагато простіше для розкриття. Використання довгих і безглуздих паролів безумовно краще з точки зору криптостійкості, але людина зазвичай не може їх запам'ятати і записує на папірці, який потім або втрачається, або потрапляє в руки зловмисників. Саме з того, що недосвідчені користувачі зазвичай обирають або короткі, або осмислені паролі, існують два методи їх розкриття: атака повним перебором і атака за словником.
Захищеність пароля при його підборі залежить, в загальному випадку, від швидкості перевірки паролів і від розміру повного безлічі можливих паролів, яке, в свою чергу, залежить від довжини пароля й розміру застосовуваного алфавіту символів. Крім того, на захищеність сильно впливає реалізація парольного захисту.
У зв'язку з різким зростанням обчислювальних потужностей атаки повним перебором мають набагато більше шансів на успіх, ніж раніше. Крім того, активно використовуються розподілені обчислення, тобто рівномірний розподіл завдання на велику кількість машин, що працюють паралельно. Це дозволяє багаторазово скоротити час взлому.
Однак повернемося на кілька років назад, коли обчислювальної потужності для повного перебору всіх паролів не вистачало. Тим не менш, хакерами був придуманий дотепний метод, заснований на тому, що в якості пароля людиною вибирається існуюче слово або яка-небудь інформація про себе або своїх знайомих (ім'я, дата народження і т.п.). Ну, а оскільки в будь-якій мові не більше 100000 слів, то їх перебір займе досить невеликий час, і від 40 до 80% існуючих паролів може бути вгадано за допомогою простої схеми, званої "атакою по словнику". До речі, до 80% цих паролів може бути вгадано з використанням словника розміром всього 1000 слів!
Нехай сьогодні користувачі вже розуміють, що вибирати такі паролі можна, але, мабуть, ніколи експерти з комп'ютерної безпеки не дочекаються використання таких простих і які будуть радувати душу паролів, як 34jХs5U @ bТа! 6;). Тому навіть досвідчений користувач хитрує і вибирає такі паролі, як hоре1, user1997, рАsSwOrD, toor, roottoor, раго1, gfhjkm, asхz. Видно, що всі вони, як правило, базуються на осмисленому слові і деякому простому правилі його перетворення: додати цифру, додати рік, перевести через букву в інший регістр, записати слово навпаки, додати записане навпаки слово, записати російське слово латинськими літерами, набрати російське слово на клавіатурі з латинською розкладкою, скласти пароль з поруч розташованих на клавіатурі клавіш і т.п.
Тому не треба дивуватися, якщо такий "хитрий" пароль буде розкритий хакерами - вони не дурніші самих користувачів, і вже вставили в свої програми ті правила, за якими може йти перетворення слів. У найбільш "просунутих" програмах (John The Ripper, Password Cracking library) ці правила можуть бути програмованими і задаватися за допомогою спеціальної мови самим хакером.
Наведемо приклад ефективності такої стратегії перебору. У багатьох книгах з безпеки пропонується вибирати в якості надійного пароля два осмислених слова, розділених деяким знаком (наприклад, good! Password). Підрахуємо, за скільки часу в середньому будуть зламані такі паролі, якщо таке правило включено в набір програми-зломщика (нехай словник 10000 слів, розділовими знаками можуть бути 10 цифр і 32 знака пунктуації та спеціальних символів, машина класу Pentium зі швидкістю 15000 паролів / сек ):
10000 * (32 +10) * 10000/15000 * 2 = 140000 секунд або менше 1.5 дня!
Чим більше довжина пароля, тим більшу безпеку буде забезпечувати система, так як будуть потрібні великі зусилля для його відгадування. Цю обставину можна представити в термінах очікуваного часу розкриття пароля або очікуваного безпечного часу. Очікуване безпечний час (Тб) - половина твору числа можливих паролів і часу, необхідного для того, щоб спробувати кожен пароль з послідовності запитів. Уявімо це у вигляді формули:
(1)
де t-час, необхідний на спробу введення пароля, рівне E / R; E - число символів в переданому повідомленні при спробі отримати доступ (включаючи пароль і службові символи); R - швидкість передачі (символи / хв) в лінії зв'язку; S - довжина пароля; А - число символів в алфавіті, з яких складається пароль. Якщо після кожної невдалої спроби підбору автоматично передбачається десятисекундний затримка, то безпечний час різко збільшується.
Тому при використанні аутентифікації на основі паролів захищеною системою повинні дотримуватися такі правила:
а) не дозволяються паролі менше 6-8 символів;
б) паролі повинні перевірятися відповідними контролерами;
в) символи пароля при їх введенні не повинні з'являтися в явному вигляді;
г) після введення правильного пароля видається інформація про останній вході в систему;
д) обмежується кількість спроб введення пароля;
е) вводиться затримка часу при неправильному паролі;
ж) при передачі по каналах зв'язку паролі повинні шифруватися;
з) паролі повинні зберігатися в пам'яті тільки в зашифрованому вигляді в файлах, недоступних користувачам;
і) користувач повинен мати можливість самому міняти пароль;
к) адміністратор не повинен знати паролі користувачів, хоча може їх міняти;
л) паролі повинні періодично мінятися;
м) встановлюються терміни дії паролів, після закінчення яких треба зв'язатися з адміністратором.
Тому при використанні аутентифікації на основі паролів захищеною системою повинні дотримуватися такі правила:
а) не дозволяються паролі менше 6-8 символів;
б) паролі повинні перевірятися відповідними контролерами;
в) символи пароля при їх введенні не повинні з'являтися в явному вигляді;
г) після введення правильного пароля видається інформація про останній входи в систему;
д) обмежується кількість спроб введення пароля;
е) вводиться затримка часу при неправильному паролі;
ж) при передачі по каналах зв'язку паролі повинні шифруватися;
з) паролі повинні зберігатися в пам'яті тільки в зашифрованому вигляді в файлах, недоступних користувачам;
і) користувач повинен мати можливість самому міняти пароль;
к) адміністратор не повинен знати паролі користувачів, хоча може їх міняти;
л) паролі повинні періодично мінятися;
м) встановлюються терміни дії паролів, після закінчення яких треба зв'язатися з адміністратором.
Проблема вибору пароля
Вибір довжини пароля в значній мірі визначається розвитком технічних засобів, їх елементної бази та її швидкодією. В даний час широко застосовуються багато символьніпаролі, де S> 10. У зв'язку з цим виникають питання: як і де його зберігати і як пов'язати його з аутентифікацією особистості користувача? На ці запитання відповідає комбінована система паролів, в якій код пароля складається з двох частин. Перша частина складається з 3-4-х десяткових знаків, якщо код цифровий, і більш 3-4-х, якщо код буквений, які легко запам'ятати людині. Друга частина містить кількість знаків, визначуване вимогами до захисту і можливостями технічної реалізації системи, вона поміщається на фізичному носії і визначає ключ-пароль, розрахунок довжини коду якого ведеться за вказаною вище методикою. У цьому випадку частина пароля буде недоступна для порушника.
Однак при розрахунку довжини коду пароля не слід забувати про те, що при збільшенні довжини пароля не можна збільшувати періодичність його зміни. Коди паролів необхідно міняти обов'язково, так як за великий період часу збільшується ймовірність їх перехоплення шляхом прямого розкрадання носія, зняття його копії, примусу людини. Вибір періодичності необхідно визначати з конкретних умов роботи системи, але не рідше одного разу на рік. Причому бажано, щоб дата заміни та періодичність повинні носити випадковий характер.
Для перевірки вразливості паролів використовуються спеціальні контролери паролів. Наприклад, відомий контролер Кляйна, здійснює спроби злому пароля шляхом перевірки використання в якості пароля вхідного імені користувача, його ініціалів та їх комбінацій, перевірки використання в якості пароля слів з різних словників, починаючи від найбільш уживаних в якості пароля, перевірки різних перестановок слів, а також перевірки слів на мові користувача-іноземця. Перевірка паролів в обчислювальних мережах за допомогою контролера Кляйна показала досить високі результати - більшість користувачів використовують прості паролі. Показовий приклад, коли контролер Кляйна дозволив визначити 100 паролів з 5 символів, 350 паролів з 6 символів, 250 паролів з 7 символів і 230 паролів з 8 символів.
Наведений аналіз дозволяє сформулювати наступні правила зниження уразливості паролів і спрямовані на протидію відомим атакам на них:
- Розширюйте застосовуваний в паролі алфавіт - використовуйте прописні і рядкові букви латинського та російського алфавітів, цифри та знаки;
- Не використовуйте в паролі осмислені слова;
- Не використовуйте повторювані групи символів;
- Не застосовуйте паролі довжиною менше 6-8 символів, так як запам'ятати їх не представляє великої праці, а пароль саме потрібно запам'ятовувати, а не записувати. З тієї ж причини не має сенсу вимагати довжину неосмисленого пароля до 15 символів, так як запам'ятати його нормальній людині практично неможливо;
- Не використовуйте один і той же пароль в різних системах, так як при компрометації одного пароля постраждають усі системи;
- Перевіряйте паролі перед їх використанням контролерами паролів.
Для складання пароля можна дати рекомендації, якими користуватися треба дуже обережно:
- Виберіть декілька рядків з пісні або поеми (тільки не ті, які Ви повторюєте першому зустрічному) і використовуйте першу (або другу) букву кожного слова - при цьому пароль повинен мати велику довжину (до 15 символів), інакше потрібно міняти регістри букв, застосовувати латинські букви замість російських чи навпаки, можна вставляти цифри і знаки;
- Замініть в слові з семи-восьми літер одну приголосну і одну або дві голосних на знаки або цифри. Це дасть вам слово-абракадабру, яке зазвичай вимовлятися і тому легко запам'ятовується. Підіб'ємо підсумок:
Що таке поганий пароль:
• Власне ім'я;
• Слово, яке є в словнику;
• Ідентифікатор, присвоєний Вам небудь системою, або будь-які його варіації;
• Дата народження;
• Повторений символ (наприклад: AAA);
• Пароль менше 6 символів;
• Пароль, установлений Вам чужою людиною;
• Пароль, що складається з символів сусідять на клавіатурі (наприклад: QWERTY або йцукен);
• Пароль складається з паспортних даних: персональний номер, номер водійських прав і т.д.
Що таке хороший пароль:
• Безглузда фраза;
• Випадковий набір символів упереміш з буквами.
Робота з програмами злому на прикладі AZPR
Програма AZPR(рис. 1.1) використовується для відновлення забутих паролів ZIP-архівів. На сьогоднішній день існує два способи розкриття паролів: перебір (brute force) і атака за словником (dictionary-based attack).
Панель управління:
• кнопки Відкрити і Зберегти дозволяють працювати з проектом, в якому вказаний розкривали файл, набір символів, останній протестований пароль. Це дозволяє припиняти і відновлювати розкриття.
• кнопки Старт і Стоп ¬ дозволяють відповідно починати і закінчувати підбір пароля.
• кнопка Набір дозволяє задати множину символів, якщо відомі символи, з яких складається пароль.
• кнопка Довідка виводить допомогу по програмі.
• кнопка O AZPR виводить інформацію про програму.
• кнопка Вихід дозволяє вийти з програми.
Рисунок 1.1 – Головне вікно програми AZPR
Розглянемо можливості програми:
Вибирається архів для розкриття і тип атаки (рис.1.2).
Рисунко 1.2 – Вибір архіва
Вибираються параметри роботи:
• Закладка Набір
Програма дозволяє вибрати область перебору (набір символів). Це значно скорочує час перебору. Можна використовувати набір користувача, заданий за допомогою кнопки Набір. Можна обмежити кількість тестованих паролів, задавши початковий пароль. У разі якщо відома частина пароля, дуже ефективна атака по масці. Потрібно вибрати відповідний тип атаки, після цього стане доступним поле маска. У ньому потрібно ввести відому частину пароля у вигляді P? S? W? R? , Де на місці невідомих символів потрібно поставити знак питання. Можна використовувати будь-який інший символ, ввівши його в поле символ маски.
• Закладка Довжина (рис.1.3)
Рисунок 1.3 – Вибір довжини пароля
Дозволяє вибрати довжину пароля.
• Закладка Словник
Дозволяє вибрати файл-словник. Вибирайте файл English.dic, він містить набір англійських слів і набори символів, найбільш часто використовуються в якості паролів.
• Закладка Автозбереження
Можна вибрати ім'я файлу для збереження результатів роботи та інтервал автозбереження.
• Закладка Опції
Вибирається пріоритет роботи (фоновий або високий), інтервал оновлення інформації про тестованому в даний момент паролі. Збільшення інтервалу підвищує швидкодію, але знижує інформативність. Також можна встановити режим ведення протоколу роботи та можливість мінімізації програми в tray (маленька іконка поряд з годинником).
