Потенциални атаки срещу HTTPS и как да се защитим от тях

Половината сайтове използва HTTPS, като броят им непрекъснато нараства. Протоколът намалява риска от прихващане на трафик, но не елиминира опитите за атаки като такива. Ще говорим за някои от тях - POODLE, BEAST, DROWN и други - и методи за защита в нашия материал.

Потенциални атаки срещу HTTPS и как да се защитим от тях
/flickr/ Свен Греъм / CC BY-SA

пудел

За първи път за нападението пудел стана известно през 2014 г. Уязвимост в протокола SSL 3.0 беше открита от специалиста по информационна сигурност Бодо Мьолер и колеги от Google.

Същността му е следната: хакерът принуждава клиента да се свърже чрез SSL 3.0, като емулира прекъсване на връзката. След това търси в криптирания ТГС- съобщения за специален етикет за режим на трафик. Използвайки поредица от подправени заявки, нападателят може да реконструира съдържанието на интересуващите го данни, като например бисквитки.

SSL 3.0 е остарял протокол. Но въпросът за неговата безопасност все още е актуален. Клиентите го използват, за да избегнат проблеми със съвместимостта със сървърите. Според някои данни, почти 7% от 100 хиляди най-популярни сайтове все още поддържа SSL 3.0, също там модификации на POODLE, които са насочени към по-модерните TLS 1.0 и TLS 1.1. Тази година се появи нови Zombie POODLE и GOLDENDOODLE атаки, които заобикалят защитата TLS 1.2 (те все още са свързани с CBC криптиране).

Как да се предпазите. В случай на оригиналния POODLE, трябва да деактивирате поддръжката на SSL 3.0. В този случай обаче съществува риск от проблеми със съвместимостта. Алтернативно решение може да бъде механизмът TLS_FALLBACK_SCSV - той гарантира, че обменът на данни чрез SSL 3.0 ще се извършва само с по-стари системи. Нападателите вече няма да могат да инициират понижаване на протокола. Начин за защита срещу Zombie POODLE и GOLDENDOODLE е да деактивирате поддръжката на CBC в приложения, базирани на TLS 1.2. Кардиналното решение ще бъде преходът към TLS 1.3 - новата версия на протокола не използва CBC криптиране. Вместо това се използват по-издръжливи AES и ChaCha20.

BEAST

Една от първите атаки срещу SSL и TLS 1.0, открита през 2011 г. Като ПУДЕЛ, ЗВЯР използва характеристики на CBC криптиране. Нападателите инсталират JavaScript агент или Java аплет на клиентската машина, който замества съобщенията при предаване на данни през TLS или SSL. Тъй като нападателите знаят съдържанието на „фалшивите“ пакети, те могат да ги използват, за да дешифрират вектора за инициализация и да прочетат други съобщения към сървъра, като бисквитки за удостоверяване.

Към днешна дата уязвимостите на BEAST остават редица мрежови инструменти са податливи: Прокси сървъри и приложения за защита на локални интернет шлюзове.

Как да се предпазите. Нападателят трябва да изпраща редовни заявки за дешифриране на данните. Във VMware препоръчвам намалете продължителността на SSLSessionCacheTimeout от пет минути (препоръка по подразбиране) на 30 секунди. Този подход ще затрудни нападателите да реализират плановете си, въпреки че ще има известно отрицателно въздействие върху производителността. Освен това трябва да разберете, че уязвимостта на BEAST може скоро да остане в миналото сама по себе си - от 2020 г. най-големите браузъри Спри се поддръжка за TLS 1.0 и 1.1. Във всеки случай по-малко от 1,5% от всички потребители на браузъри работят с тези протоколи.

УДАВИ СЕ

Това е атака между протоколи, която използва грешки в внедряването на SSLv2 с 40-битови RSA ключове. Нападателят слуша стотици TLS връзки на целта и изпраща специални пакети до SSLv2 сървър, използвайки същия частен ключ. Използвайки Атака на Блайхенбахер, един хакер може да дешифрира една от около хиляда клиентски TLS сесии.

DROWN стана известен за първи път през 2016 г. - тогава се оказа, че е така една трета от сървърите са засегнати в света. Днес тя не е загубила своята актуалност. От 150 хиляди най-популярни сайтове, 2% са все още поддържа SSLv2 и уязвими механизми за криптиране.

Как да се предпазите. Необходимо е да се инсталират пачове, предложени от разработчиците на криптографски библиотеки, които деактивират поддръжката на SSLv2. Например, два такива корекции бяха представени за OpenSSL (през 2016 г това бяха актуализации 1.0.1s и 1.0.2g). Освен това бяха публикувани актуализации и инструкции за деактивиране на уязвимия протокол Кардинал, Apache, Debian.

„Ресурсът може да бъде уязвим на DROWN, ако неговите ключове се използват от сървър на трета страна с SSLv2, като например пощенски сървър“, отбелязва ръководителят на отдела за развитие IaaS доставчик 1cloud.ru Сергей Белкин. — Тази ситуация възниква, ако няколко сървъра използват общ SSL сертификат. В този случай трябва да деактивирате поддръжката на SSLv2 на всички машини."

Можете да проверите дали вашата система трябва да се актуализира с помощта на специален комунални услуги — разработен е от специалисти по информационна сигурност, които откриха DROWN. Можете да прочетете повече за препоръките, свързани със защита срещу този тип атаки в публикувайте на уебсайта на OpenSSL.

heartbleed

Една от най-големите уязвимости в софтуера е heartbleed. Открит е през 2014 г. в библиотеката OpenSSL. По време на съобщението за грешка, броят на уязвимите уебсайтове беше оценен на половин милион - това е приблизително 17% от защитените ресурси в мрежата.

Атаката се осъществява чрез малкия разширителен модул Heartbeat TLS. Протоколът TLS изисква данните да се предават непрекъснато. В случай на продължителен престой възниква прекъсване и връзката трябва да се възстанови. За да се справят с проблема, сървърите и клиентите изкуствено „заглушават“ канала (RFC 6520, стр.5), предавайки пакет с произволна дължина. Ако е по-голям от целия пакет, тогава уязвимите версии на OpenSSL четат памет отвъд разпределения буфер. Тази област може да съдържа всякакви данни, включително частни ключове за криптиране и информация за други връзки.

Уязвимостта присъстваше във всички версии на библиотеката между 1.0.1 и 1.0.1f включително, както и в редица операционни системи - Ubuntu до 12.04.4, CentOS по-стара от 6.5, OpenBSD 5.3 и др. Има пълен списък на уебсайт, посветен на Heartbleed. Въпреки че пачовете срещу тази уязвимост бяха пуснати почти веднага след откриването й, проблемът остава актуален и до днес. Още през 2017г работиха почти 200 хиляди сайта, податливи на Heartbleed.

Как да се предпазите. Това е необходимо актуализирайте OpenSSL до версия 1.0.1g или по-нова. Можете също така да деактивирате Heartbeat заявките ръчно, като използвате опцията DOPENSSL_NO_HEARTBEATS. След актуализацията специалисти по информационна сигурност препоръчвам преиздаване на SSL сертификати. Необходима е подмяна, в случай че данните от ключовете за криптиране попаднат в ръцете на хакери.

Замяна на сертификат

Между потребителя и сървъра е инсталиран управляван възел с легитимен SSL сертификат, който активно прихваща трафика. Този възел се представя за легитимен сървър, като представя валиден сертификат и става възможно извършването на MITM атака.

Според проучване екипи от Mozilla, Google и редица университети, приблизително 11% от защитените връзки в мрежата се подслушват. Това е резултат от инсталирането на подозрителни основни сертификати на компютрите на потребителите.

Как да се предпазите. Използвайте услугите на надеждни SSL доставчици. Можете да проверите „качеството“ на сертификатите, като използвате услугата Прозрачност на сертификата (CT). Облачните доставчици също могат да помогнат при откриването на подслушване; някои големи компании вече предлагат специализирани инструменти за наблюдение на TLS връзки.

Друг метод за защита ще бъде нов стандартен ACME, който автоматизира получаването на SSL сертификати. В същото време ще добави допълнителни механизми за проверка на собственика на сайта. Повече за това писахме в един от нашите предишни материали.

Потенциални атаки срещу HTTPS и как да се защитим от тях
/flickr/ Юрий Самойлов / CC BY

Перспективи за HTTPS

Въпреки редицата уязвимости, ИТ гигантите и експертите по информационна сигурност са уверени в бъдещето на протокола. За активно внедряване на HTTPS актове Създателят на WWW Тим Бърнърс-Лий. Според него с течение на времето TLS ще стане по-сигурен, което значително ще подобри сигурността на връзките. Бърнърс-Лий дори предложи това ще се появи в бъдеще клиентски сертификати за удостоверяване на самоличността. Те ще помогнат за подобряване на защитата на сървъра от нападатели.

Предвижда се също да се разработи SSL/TLS технология с помощта на машинно обучение - интелигентните алгоритми ще отговарят за филтрирането на злонамерен трафик. С HTTPS връзките администраторите нямат начин да открият съдържанието на криптирани съобщения, включително откриване на заявки от зловреден софтуер. Вече днес невронните мрежи са в състояние да филтрират потенциално опасни пакети с 90% точност. (слайд на презентацията 23).

Данни

Повечето атаки срещу HTTPS не са свързани с проблеми със самия протокол, а с поддръжка на остарели механизми за криптиране. ИТ индустрията започва постепенно да изоставя предишното поколение протоколи и да предлага нови инструменти за търсене на уязвимости. В бъдеще тези инструменти ще стават все по-интелигентни.

Допълнителни връзки по темата:

Източник: www.habr.com

Добавяне на нов коментар