Патэнцыйныя атакі на HTTPS і як ад іх абараніцца

Палова сайтаў выкарыстоўвае HTTPS, І іх колькасць стабільна павялічваецца. Пратакол скарачае рызыку перахопу трафіку, але не выключае спробы нападаў як такія. Аб некаторых з іх - POODLE, BEAST, DROWN і іншых - і спосабах абароны, мы раскажам у нашым матэрыяле.

Патэнцыйныя атакі на HTTPS і як ад іх абараніцца
/Flickr/ Sven Graeme / CC BY-SA

ПУДЕЛЬ

Упершыню аб нападзе ПУДЕЛЬ стала вядома ў 2014 годзе. Уразлівасць у пратаколе SSL 3.0 выявіў адмысловец па ИБ Бодо Мёлер (Bodo Möller) з калегамі з Google.

Яе сутнасць заключаецца ў наступным: хакер змушае кліента выканаць падлучэнне па SSL 3.0, эмулюючы парывы ​​сувязі. Затым ён шукае ў зашыфраваным у CBC-рэжыме трафіку спецыяльныя паведамленні-пазнакі. З дапамогай серыі падстаўных запытаў зламыснік атрымлівае магчымасць рэканструяваць змесціва якія цікавяць яго дадзеных, напрыклад cookies.

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 году. Як і POODLE, BEAST выкарыстоўвае асаблівасці CBC-шыфравання. Зламыснікі ўкараняюць на кліенцкую машыну JavaScript-агент або Java-аплет, які падмяняе паведамленні пры трансляцыі дадзеных па TLS ці SSL. Бо зламыснікам вядома ўтрыманне "падстаўных" пакетаў, яны могуць з іх дапамогай расшыфраваць вектар ініцыялізацыі і прачытаць астатнія паведамленні да сервера, напрыклад cookie-файлы для аўтэнтыфікацыі.

На сённяшні дзень уразлівасці BEAST па-ранейшаму схільны шэраг сеткавых прылад: проксі-серверы і прыкладанні для абароны лакальных інтэрнэт-шлюзаў.

Як абараніцца. Атакуючы неабходна рэгулярна пасылаць запыты, каб расшыфроўваць дадзеныя. У VMware рэкамендуюць скараціць працягласць SSLSessionCacheTimeout - з пяці хвілін (рэкамендацыя па змаўчанні) да 30 секунд. Такі падыход ускладніць рэалізацыю планаў зламыснікам, хаця і акажа некаторы негатыўны эфект на прадукцыйнасць. Апроч гэтага трэба разумець, што ў хуткім часе ўразлівасць BEAST можа сысці ў мінулае сама па сабе - з 2020 гады найбуйныя браўзэры. спыняюць падтрымку TLS 1.0 і 1.1. У любым выпадку з гэтымі пратаколамі працуе менш за 1,5% усіх карыстальнікаў браўзэраў.

DROWN

Гэта – крос-пратакольны напад, якая выкарыстоўвае памылкі ў рэалізацыі SSLv2 з 40-бітнымі ключамі RSA. Зламыснік праслухоўвае сотні TLS-падлучэнняў мэты і адпраўляе спецыяльныя пакеты на сервер з SSLv2, які выкарыстоўвае такі ж прыватны ключ. Выкарыстоўваючы атаку Блейхенбахера, хакер можа расшыфраваць адну з прыкладна тысячы TLS-сесій кліента.

Аб DROWN упершыню стала вядома ў 2016 годзе - тады ёй апынулася схільная траціна сервераў у свеце. На сённяшні дзень яна не страціла актуальнасці. З 150 тысяч самых папулярных сайтаў 2% да гэтага часу падтрымліваюць SSLv2 і ўразлівыя механізмы шыфравання.

Як абараніцца. Неабходна ўсталяваць патчы, прапанаваныя распрацоўшчыкамі крыптаграфічных бібліятэк, якія адключаюць падтрымку SSLv2. Напрыклад, дзве такія латкі прадставілі для OpenSSL (у 2016 годзе. гэта былі абнаўленні 1.0.1s і 1.0.2g). Таксама апдэйты і інструкцыі па адключэнні ўразлівага пратакола апублікавалі ў Red Hat, Апач, 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 па большай частцы звязаныя не з праблемамі ў самім пратаколе, а з падтрымкай састарэлых механізмаў шыфравання. ІТ-індустрыя пачынае паступова адмаўляцца ад пратаколаў папярэдняга пакалення і прапануе новыя прылады для пошуку ўразлівасцяў. У будучыні гэтыя прылады будуць станавіцца ўсё больш інтэлектуальнымі.

Дадатковыя спасылкі па тэме:

Крыніца: habr.com

Дадаць каментар