Старі протоколи Windows: як з ними боротися h2>
Дем'яненко Михайло p>
Microsoft давно вже відійшла від слабкого захисту
паролів і зараз системи компанії зламати не так то й просто. З підключенням
нових протоколів аутентифікації типу NTLMv2 або Kerberos, Microsoft цілком
убезпечила вашу мережу. Проблема у використанні ОС MS насправді полягає в
те, що їм у спадщину дісталися і старі вразливі протоколи типу Lan
Manager або NT Lan Manager. І навіть якщо вони не використовуються в роботі вони по
раніше доступні і на більшості систем хешіруют паролі, просто на випадок
з'єднання зі старих комп'ютерів. Це відкриває певну пролом в обороні
вашого комп'ютера і в цій статті ми покажемо як її закрити. p>
Протоколи h2>
Microsoft
підтримує цілий сонм протоколів аутентифікації. Як вже було сказано, старі
реалізації нікуди не зникають, а зберігаються заради сумісності. Так, наприклад,
Windows Server 2003 може працювати як з протоколом Lаn Mаnager і NTLM, так і з
сучасним Kerberos. У проектуванні мережі важливо зрозуміти що робить кожен з
протоколів і якими особливостями він виділяється. Необхідно також знати які
операційні системи які протоколи юзають, адже навіть якщо протокол і слабкий в
своїй основі, можливо він необхідний для роботи з іншими комп'ютерами,
існуючими в оточенні. Ну і наостанок, якщо необхідність використання
слабкого протоколу все ж таки існує то необхідно продумати заходи навісний
захисту. p>
Lan Manager h2>
LM
один з найстаріших протоколів аутентифікації, що використовуються Microsoft. Вперше
він з'явився ще в Windows 3.11 і в цілому не дуже безпечний. Подивимося
опис: p>
Хеші
залежать від регістру p>
В
паролі можна використовувати 142 символами p>
Хеш
розділяється на послідовності у 2-7 символів. Якщо пароль коротше 14
символів, то він доповнюється нулями до 14 знаків p>
Результуюче
значення - 128 бітне p>
Хеш
незворотній p>
NT
Lan Manager p>
NTLM
став послідовником LM і вперше був представлений в Windows NT 3.1. Причина його
поява - впровадження нової системи каталогів в операційній системі,
контрольованої всім відомими доменами. NTLM вимагає, що б domain controller
зберігав хеш-кодування всіх користувачів самого домену. Особливості цього протоколу
схожі на LM, реалізовані тільки трохи інакше. p>
NTLMv2 p>
Варто
зазначити, що цей протокол не був випущений одночасно з будь-якої ОС, а
з'явився в 4-му сервіспаке для Windows NT 4. У ньому Microsoft спробувала все
помилки попередніх протоколів і виглядає він так: p>
Пароль
може бути до 128 символів p>
Взаємна
аутентифікація клієнта і сервера p>
Більше
довгі ключі для поліпшеної захисту хешу p>
Kerberos p>
Це
вже не розробка MS, а індустріальний стандарт, описаний у RFC 1510.
Microsoft додала в нього кілька незначних фішок і почала використовувати
в Windows. У Active Directory протокол виглядає так: p>
Взаємна
аутентифікація з використанням квитків p>
Процес
при вході в основному лягає на плечі клієнта, що зменшує навантаження на
сервер p>
Контролер
домену несе на собі Kerberos Distribution Center p>
Паролі
не передаються по мережі p>
Kerberos
захищений від перехоплення пакетів p>
Що
куди? p>
Windows
95, 98 і Me за замовчуванням не підтримують NTLMv2 і Kerberos, а відповідно
працюють тільки з LM або NTLM. Це ставить їх в розряд найбільш уразливих систем,
однак і тут звичайно є рішення. Називається воно Active Directory Client
Extensions, що дозволить використовувати NTLMv2, Kerberos ж використовувати в
сімействі 9х ніяк не вийде. p>
Windows
NT p>
Як
вже було сказано раніше, спочатку ОС цього сімейства працювали так само, як і
9х. Однак у SP4 з'явився NTLMv2. P>
Windows
2000/XP/2003 p>
Ясно,
що ці системи вже працюють з усіма чотирма протоколами - LM, NTLM, NTLMv2 і
Kerberos. Під час роботи з AD і комп'ютерами, що входять в AD, використовується
Kerberos. У робочих групах в хід вступає NTLMv2, ну а для роботи з
застарілими операційками вже використовується LM і NTLM. p>
Боротьба
зі старовиною p>
LM/NTLM p>
Якщо
ви ще не зрозуміли, то всі комп'ютери у вашій Windows-мережі підтримують ці дві
застарілих протоколу. Що можна з ними зробити? P>
1.
За замовчуванням LM і NTLM хеш-кодування надсилаються по мережі в процесі аутентифікації,
причому це трапляється навіть коли ХР коннектітся, наприклад, до домену на Windows
2003. Щоб вимкнути ліземо в Group Policy Object і забороняємо передачу хешів по
мережі: p>
В
політиці можливий вибір з 6 варіантів: p>
Самий
безпечний варіант - останній. p>
2.
Наступна опція заборонить генерацію застарілих хешів. За замовчуванням се комп'ютери
для забезпечення сумісності генерують LM і NTLM хеш-кодування, навіть якщо вони і не
потрібні. p>
Негайного
ефекту ця опція не дасть, вона спрацює тільки при зміні пароля. p>
3.
Якщо все ж таки у вашій мережі є пристрої або комп'ютери працюють з LM можна
обійти зберігання хешу застосуванням пароля довше 14 символів. У такому варіанті
хеш не зберігається. p>
NTLMv2 p>
Зовсім
заборонити використання протоколу поки неможливо, оскільки він використовується для
роботи груп в Windows 2000 і більше нових операційних системах. Однак, як
звичайно, можливо зробити ряд кроків для захисту від злому хешів. p>
1.
Чим довше і складніше пароль тим краще, правило за замовчуванням. P>
2.
Треба змусити користувачів частіше міняти паролі: p>
3.
Запропонуйте використовувати фрази замість пароля. Погодьтеся, що запам'ятати
@ 3 * ()! B & важче, ніж "Я живу в Москві". До того ж використання
фраз убезпечить від перебору, бо брутфорс у прийнятний термін ніякої пароль
не зламати. p>
Мораль p>
Паролі
для захисту мережі необхідні, однак не всі паролі однаково корисні. Системному
адміністратору необхідно стежити за застосуванням різних засобів
аутентифікації і пояснювати користувачам корисність довгих паролів і
періодичної їх зміни. p>
Список літератури h2>
Для
підготовки даної роботи були використані матеріали з сайту http://www.nodevice.ru/
p>