У жовтні інженери Google опублікували інформацію про критичну уразливість в SSL версії 3.0, отримала забавну назву POODLE (Padding Oracle On Downgraded Legacy Encryption або пудель 🙂). Уразливість дозволяє зловмисникові отримати доступ до інформації, зашифрованою протоколом SSLv3 за допомогою атаки "man in the middle". Уразливості схильні як сервери, так і клієнти, які можуть з'єднуватися по протоколу SSLv3.
В общем-то ситуація не дивна, тому що протоколу SSL 3.0, вперше представленого ще в 1996 році, вже виповнилося 18 років і морально він вже застарів. У більшості практичних завдань його вже замінив криптографічний протокол TLS (Версій 1.0, 1.1 і 1.2).
Для захисту від вразливості POODLE рекомендується повністю відключити підтримку SSLv3 як на стороні клієнта, так і на стороні сервера і в подальшому використовувати тільки TLS. Для користувачів застарілого ПЗ (наприклад, використовують IIS 6 на Windows XP) це означає, що вони більш не зможуть переглядати HTTPS сторінки і використовувати інші SSL-сервіси. У тому випадку, якщо підтримка SSLv3 не відключили повністю, а за замовчуванням пропонується використовується більш сильне шифрування, вразливість POODLE все одно матиме місце. Пов'язано це з особливостями вибору і узгодження протоколу шифрування між клієнтом і сервером, тому що при виявленні несправностей у використанні TLS, відбувається автоматичний перехід на SSL.
Рекомендуємо перевірити всі свої сервіси, які можуть використовувати SSL / TLS в будь-якому вигляді і відключити підтримку SSLv3. Перевірити свій веб-сервер на наявність уразливості можна за допомогою онлайн тесту, наприклад, тут: http://poodlebleed.com/.
зміст:
- Відключаємо SSLv3 в Windows на рівні системи
- Відключаємо SSLv2 (Windows 2008 / Server і нижче)
- Включаємо TLS 1.1 і TLS 1.2 в Windows Server 2008 R2 і вище
- Утиліта для управління системними криптографічними протоколами в Windows Server
Відключаємо SSLv3 в Windows на рівні системи
В ОС Windows управління підтримкою протоколів SSL / TLS здійснюється через реєстр.
Порада. Перед виконанням зазначених змін рекомендуємо створити резервну копію зазначеної гілки за допомогою функції редактора реєстру експорт.У цьому прикладі ми покажемо, як повністю на рівні системи (як на рівні клієнта, так і сервера) відключити SSLv3 в Windows Server 2012 R2:
- Відкрийте редактор реєстру (regedit.exe) з правами адміністратора
- Перейдіть в гілку HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ Schannel \ Protocols \
- Створіть новий розділ з ім'ям SSL 3.0 ( New-> Key)
- У створеному розділіSSL 3.0 створіть ще два підрозділи з іменами Client і Server.
- Потім в розділі Client створіть новий параметр типу DWORD (32-bit) з ім'ям DisabledByDefault
- Як значення ключа DisabledByDefault вкажемо 1.
- Потім в гілці Server створіть новий параметр типу DWORD (32-bit) з ім'ям Enabled і значенням 0.
- Для вступу змін в силу необхідно перезавантажити сервер
Відключаємо SSLv2 (Windows 2008 / Server і нижче)
В ОС, що передують Windows 7 / Windows Server 2008 R2 за замовчуванням використовується ще менш безпечний і застарілий протокол SSL v2, який також слід відключити з міркувань безпеки (в більш свіжих версіях Windows, SSLv2 на рівні клієнта відключений за замовчуванням і використовується тільки SSLv3 і TLS1.0). Для відключення SSLv2 потрібно повторити описану вище процедуру, тільки для розділу реєстру SSL 2.0.
У Windows 2008/2012 SSLv2 на рівні клієнта відключений за замовчуванням.
Включаємо TLS 1.1 і TLS 1.2 в Windows Server 2008 R2 і вище
Windows Server 2008 R2 / Windows 7 і вище підтримують алгоритми шифрування TLS 1.1 і TLS 1.2, але по-замовчуванню ці протоколи відключені. Включити підтримку TLS 1.1 і TLS 1.2 в цих версіях Windows можна за схожим сценарієм
- У редакторі реєстру відкрийте гілку HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ SecurityProviders \ SCHANNEL \ Protocols
- Створіть два розділи TLS 1.1 і TLS 1.2
- Усередині кожного розділу створіть по підрозділу з іменами Client і Server
- У кожному з розділів Client і Server створіть по ключу типу DWORD:
- DisabledByDefault зі значенням 0
- Enabled зі значенням 1
- Після внесених змін сервер слід перезавантажити.
Утиліта для управління системними криптографічними протоколами в Windows Server
Існує безкоштовна утиліта IIS Crypto, що дозволяє зручно управляти параметрами криптографічних протоколів в Windows Server 2003, 2008 і 2012. За допомогою даної утиліти включити або відключити будь-який з протоколів шифрування можна всього в два кліка.
У програмі вже є кілька шаблонів, що дозволяють швидко застосувати налаштування для різних варіантів налаштувань безпеки.