Potencialni napadi na HTTPS in kako se zaščititi pred njimi

Polovina spletnih mest uporablja HTTPS, njihovo število pa se nenehno povečuje. Protokol zmanjšuje tveganje za prestrezanje prometa, vendar ne izključuje poskusov napadov kot takih. O nekaterih izmed njih — POODLE, BEAST, DROWN in drugih — ter načinih zaščite, bomo govorili v našem gradivu.

Potencialni napadi na HTTPS in kako se zaščititi pred njimi
/ Flickr / Sven Graeme / CC BY-SA

POODLE

Napad je bil prvič POODLE razkrit leta 2014. Ranljivost v protokolu SSL 3.0 je odkril strokovnjak za informacijsko varnost Bodo Möller s sodelavci iz Googla.

Njegovo bistvo je naslednje: heker prisili odjemalca, da se poveže prek SSL 3.0, tako da emulira prekinitve povezave. Nato išče v šifriranem CBC-načinu prometa posebna sporočila-oznake. S pomočjo serije lažnih zahtevkov zlonamerneži pridobijo možnost rekonstrukcije vsebine zanimivih podatkov, na primer piškotkov.

SSL 3.0 je zastarel protokol. Vendar pa je vprašanje njegove varnosti še vedno aktualno. Odjemalci ga uporabljajo, da bi se izognili težavam s kompatibilnostjo s strežniki. Po nekaterih podatkih skoraj 7% od 100.000 najbolj priljubljenih spletnih mest še vedno podpira SSL 3.0. Prav tako postoje modifikacije POODLE, katerih cilj so modernejši TLS 1.0 in TLS 1.1. Letos so se pojavile so se pojavili novi napadi Zombie POODLE in GOLDENDOODLE, ki obidejo zaščito TLS 1.2 (ti so še vedno povezani s CBC-šifriranjem).

Kako se zaščititi. V primeru originalnega POODLE je potrebno onemogočiti podporo SSL 3.0. Vendar pri tem obstaja tveganje za težave s kompatibilnostjo. Alternativna rešitev bi lahko bila mehanizem TLS_FALLBACK_SCSV — ta zagotavlja, da bo izmenjava podatkov po SSL 3.0 potekala le s starimi sistemi. Zlonamerneži več ne bodo mogli iniciirati znižanja različice protokola. Način zaščite pred Zombie POODLE in GOLDENDOODLE je onemogočitev podpore CBC v aplikacijah, osnovanih na TLS 1.2. Radikalna rešitev bo prehod na TLS 1.3 — v novi različici protokola se ne uporablja CBC-šifriranje. Namesto tega se uporabljajo bolj odporni AES in ChaCha20.

BEAST

Eden najzgodnejših napadov na SSL in TLS 1.0, odkrit leta 2011. Tako kot POODLE, BEAST uporablja značilnosti CBC-šifriranja. Napadalci vstavijo JavaScript agenta ali Java applet na odjemalski stroj, ki zamenja sporočila pri prenosu podatkov prek TLS ali SSL. Ker napadalci poznajo vsebino "podstavljenih" paketov, lahko z njihovo pomočjo dešifrirajo vektor inicializacije in preberejo preostala sporočila do strežnika, na primer piškotke za avtentikacijo.

Danes so ranljivosti BEAST še vedno podvržene določenim omrežnim orodjem: proxy strežnikom in aplikacijam za zaščito lokalnih internetnih prehodov.

Kako se zaščititi. Napadalec mora redno pošiljati zahteve, da dešifrira podatke. V VMware priporočajo skrajšajte trajanje SSLSessionCacheTimeout — iz petih minut (privzeta priporočila) na 30 sekund. Tak pristop bo otežil izvajanje načrtov napadalcem, čeprav bo imel neke negativne učinke na zmogljivost. Poleg tega je treba razumeti, da ranljivost BEAST kmalu lahko izgine sama od sebe — od leta 2020 največji brskalniki prenehajo podpirati TLS 1.0 in 1.1. V vsakem primeru z obema protokoloma deluje manj kot 1,5 % vseh uporabnikov brskalnikov.

DROWN

To je medprotokolni napad, ki izkorišča napake v implementaciji SSLv2 s 40-bitnimi ključi RSA. Napadalec prisluškuje stotinam TLS povezav cilja in pošilja posebne pakete na strežnik z SSLv2, ki uporablja isti zasebni ključ. Uporabljajoč napad Bleichenbacherja, heker lahko dešifrira eno od približno tisoč TLS sej odjemalca.

O DROWN-u se je prvič izvedelo leta 2016 — takrat je bila podvržena tretjina strežnikov na svetu. Danes ni izgubila aktualnosti. Od 150 tisoč najbolj priljubljenih spletnih strani 2 % še vedno podpirajo SSLv2 in ranljive mehanizme šifriranja.

Kako se zaščititi. Nujno je namestiti popravke, ki jih predlagajo razvijalci kriptografskih knjižnic, ki onemogočajo podporo SSLv2. Na primer, dve taki popravki sta bili predstavljeni za OpenSSL (v letu 2016 to so bili posodobitvi 1.0.1s in 1.0.2g). Prav tako so posodobitve in navodila za onemogočanje ranljivega protokola objavili v Red Hat, Apache, Debian.

"Viri so lahko ranljivi za DROWN, če njihovi ključi uporablja zunanjega strežnika s SSLv2, na primer poštnega," opozarja vodja oddelka za razvoj IaaS-provajalca 1cloud.ru Sergiej Belkin. — Takva situacija se javlja kada nekoliko servera koristi zajednički SSL certifikat. U tom slučaju potrebno je onemogućiti podršku za SSLv2 na svim mašinama.

Da biste proverili da li je potrebno ažurirati vaš sistem, možete koristiti poseban orodja — razvili su ga stručnjaci za IB koji su otkrili DROWN. Više o preporukama vezanim za zaštitu od ovog tipa napada možete pročitati u objavi na sajtu OpenSSL.

Heartbleed

Jedna od najvećih ranjivosti u softveru — Heartbleed. Otkrivena je 2014. godine u biblioteci OpenSSL. U trenutku objave greške, broj ranjivih veb sajtova procijenjen je na pola miliona — to je otprilike 17% zaštićenih resursa na mreži.

Napad se realizuje kroz mali modul Heartbeat ekstenzije TLS. TLS protokol zahteva da se podaci neprekidno šalju. U slučaju dugog zastoja dolazi do prekida i potrebno je ponovo uspostaviti vezu. Da bi se prevazišao problem, serveri i klijenti veštački "šume" kanal (RFC 6520, str.5), šaljući paket slučajne dužine. Ako je bio veći od očekivanog paketa, ranjive verzije OpenSSL čitale su memoriju van predviđenog bafera. U ovoj oblasti mogli su se nalaziti bilo kakvi podaci, uključujući privatne šifre i informacije o drugim vezama.

Ranjivost je postojala u svim verzijama biblioteke između 1.0.1 i 1.0.1f uključujući, kao i u nizu OS — Ubuntu do 12.04.4, CentOS starijim od 6.5, OpenBSD 5.3 i drugim. Potpuni spisak se nalazi na sajtu posvećenom Heartbleed. Iako su zakrpe protiv ove ranjivosti objavljene skoro odmah nakon njenog otkrića, problem je i dalje aktualan. Čak 2017. godine radilo je gotovo 200.000 sajtova, podložnih Heartbleed-u.

Kako se zaščititi. Potrebno je ažurirati OpenSSL na verziju 1.0.1g ili noviju. Takođe možete ručno onemogućiti Heartbeat upite pomoću opcije DOPENSSL_NO_HEARTBEATS. Nakon ažuriranja, stručnjaci za IB priporočajo ponovo izdaju SSL certifikate. Zamena je potrebna u slučaju da su podaci o šiframa ipak dospeli do hakera.

Zamena sertifikata

Između korisnika i servera postavlja se upravljani čvor s legitimnim SSL certifikatom, koji aktivno presreće saobraćaj. Ovaj čvor se prikazuje kao legitimni server, predstavljajući važeći sertifikat, i omogućava sprovođenje MITM napada.

Po istraživanju Po podatkih podjetij Mozilla, Google in nekaterih univerz, približno 11 % zaščitenih povezav v omrežju 'prestrezajo'. To je rezultat namestitve sumljivih korenskih certifikatov na računalnike uporabnikov.

Kako se zaščititi. Z uporabo storitev zanesljivih SSL ponudnikov. Kakovost certifikatov lahko preverite s pomočjo storitve Certificate Transparency (CT). Z odkrivanjem 'prestrezanja' vam lahko pomagajo tudi oblačni ponudniki — že danes nekatere velike družbe ponujajo specializirana orodja za spremljanje povezav preko TLS.

Drug način zaščite bo nov standard ACME, ki avtomatizira pridobivanje SSL certifikatov. Hkrati bo dodal dodatne mehanizme za preverjanje lastnika spletne strani. Več o njem smo pisali v enem naših prejšnjih gradiv..

Potencialni napadi na HTTPS in kako se zaščititi pred njimi
/ Flickr / Yuri Samoilov / CC BY

Perspektive HTTPS

Kljub številnim ranljivostim so IT giganti in strokovnjaki za IKT prepričani v prihodnost protokola. Aktivno propagiranje HTTPS pripravlja ustvarjalec WWW Tim Berners-Lee. Po njegovih besedah bo s časom TLS postajal bolj varen, kar bo znatno povečalo varnost povezav. Berners-Lee je celo sugeriral, da se bo v prihodnosti pojavilo odjemalske certifikate za overjanje identitete. Ti bodo pomagali izboljšati zaščito strežnikov pred zlonamernimi napadi.

Razvoj tehnologije SSL/TLS se bo prav tako nadaljeval s pomočjo strojnega učenja — pametni algoritmi bodo odgovorni za filtriranje zlonamernega prometa. Pri HTTPS povezavah nimajo skrbniki možnosti, da bi izvedeli vsebino šifriranih sporočil — vključno z odkrivanjem zahtevkov z zlonamerno programsko opremo. Že danes nevročne mreže zmorejo filtrirati potencialno nevarne pakete s točnostjo 90 %. (sljd 23 predstavitve).

Zaključki

Napadi na HTTPS so večinoma povezani ne s težavami v samem protokolu, temveč s podporo zastarelim mehanizmom šifriranja. IT industrija postopoma opušča protokole prejšnjih generacij in ponuja nova orodja za iskanje ranljivosti. V prihodnosti bodo ta orodja postajala vse bolj inteligentna.

Dodatne povezave na to temo:

Izvor: habr.com

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster