Potencijalni napadi na HTTPS i kako se zaštititi od njih

Polovica web stranica koristi HTTPS, a njihov broj neprekidno raste. Protokol smanjuje rizik od presretanja prometa, ali ne isključuje pokušaje napada kao takve. O nekima od njih — POODLE, BEAST, DROWN i drugim — i načinima zaštite, govorit ćemo u našem članku.

Potencijalni napadi na HTTPS i kako se zaštititi od njih
/ Flickr / Sven Graeme / CC BY-SA

POODLE

Prvi put o napadu POODLE bilo je poznato 2014. godine. Ranljivost u protokolu SSL 3.0 otkrio je stručnjak za sigurnost Bodo Möller s kolegama iz Googlea.

Njegova suština je sljedeća: haker prisiljava klijenta da uspostavi vezu putem SSL 3.0, emulirajući prekide veze. Zatim traži u šifriranom CBC-režimu prometa posebne poruke-oznake. Pomoću niza lažnih zahtjeva, napadač dobiva mogućnost rekonstrukcije sadržaja zanimljivih mu podataka, na primjer kolačića.

SSL 3.0 je zastarjeli protokol. No, pitanje njegove sigurnosti i dalje je aktualno. Klijenti ga koriste kako bi izbjegli probleme s kompatibilnošću sa serverima. Prema nekim podacima, gotovo 7% od 100 tisuća najpopularnijih web stranica i dalje podržava SSL 3.0. Također postoje m modificirane verzije POODLE, koje su usmjerene na modernije TLS 1.0 i TLS 1.1. Ove godine pojavila su se novi napadi Zombie POODLE i GOLDENDOODLE, koji zaobilaze zaštitu TLS 1.2 (oni su i dalje povezani s CBC enkripcijom).

Kako se zaštititi. U slučaju originalnog POODLE-a, potrebno je onemogućiti podršku za SSL 3.0. Međutim, u tom slučaju postoji rizik od problema s kompatibilnošću. Alternativno rješenje može biti mehanizam TLS_FALLBACK_SCSV — jamči da će razmjena podataka putem SSL 3.0 biti provedena samo sa starim sustavima. Napadači više neće moći inicirati snižavanje verzije protokola. Način zaštite od Zombie POODLE i GOLDENDOODLE je onemogućavanje podrške za CBC u aplikacijama temeljenim na TLS 1.2. Radikalno rješenje bi bio prijelaz na TLS 1.3 — u novoj verziji protokola ne koristi se CBC enkripcija. Umjesto toga, koriste se otporniji AES i ChaCha20.

BEAST

Jedan od prvih napada na SSL i TLS 1.0, otkriven 2011. godine. Kao i POODLE, BEAST koristi karakteristike CBC enkripcije. Napadači umetnu JavaScript agent ili Java applet na klijentski stroj koji mijenja poruke prilikom prijenosa podataka putem TLS ili SSL. Budući da napadači znaju sadržaj ''lažnih'' paketa, mogu pomoću njih dešifrirati vektore inicijalizacije i pročitati ostale poruke prema serveru, poput kolačića za autentifikaciju.

Do danas, BEAST ranjivosti i dalje su podložne brojnim mrežnim alatima: proxy serverima i aplikacijama za zaštitu lokalnih internetskih prolaza.

Kako se zaštititi. Napadaču je potrebno redovito slati zahtjeve kako bi dešifrirao podatke. U VMware preporučuju smanjiti trajanje SSLSessionCacheTimeout — s pet minuta (preporuka prema zadanim postavkama) na 30 sekundi. Ovakav pristup otežaće realizaciju planova napadačima, iako će imati neki negativan učinak na performanse. Osim toga, treba razumjeti da će ranjivost BEAST uskoro sama po sebi postati prošlost — od 2020. godine najveći preglednici prestaju podršku za TLS 1.0 i 1.1. U svakom slučaju, s tim protokolima koristi manje od 1,5% svih korisnika preglednika.

DROWN

Ovo je međuprotokolna napada koja iskorištava greške u implementaciji SSLv2 s 40-bitnim RSA ključevima. Napadač prisluškuje stotine TLS veza cilja i šalje posebne pakete na server s SSLv2 koji koristi isti privatni ključ. Koristeći Bleichenbacherovu napada, haker može dešifrirati jednu od otprilike tisuću TLS sesija klijenta.

O DROWN-u je prvi put postalo poznato 2016. godine — tada je bilo podložno trećina servera u svijetu. Do danas nije izgubilo na važnosti. Od 150 tisuća najpopularnijih web stranica 2% još uvijek podržavaju koristi SSLv2 i ranjive mehanizme enkripcije.

Kako se zaštititi. Treba instalirati zakrpe koje su predložili programeri kriptografskih biblioteka, koje isključuju podršku za SSLv2. Na primjer, dvije takve zakrpe predstavljene su za OpenSSL (2016. godine to su bila ažuriranja 1.0.1s i 1.0.2g). Također su objavljene nadogradnje i upute za isključivanje ranjivog protokola u Red Hat, Apache, Debian.

''Resurs može biti podložan DROWN-u ako njegove ključne koristi vanjski server sa SSLv2, na primjer poštanski server,'' naglašava šef odjela za razvoj IaaS pružatelja 1cloud.ru Sergej Belkin. — Ova situacija se pojavljuje kada više servera koristi zajednički SSL certifikat. U tom slučaju, potrebno je onemogućiti podršku za SSLv2 na svim mašinama.

Provjerite je li potrebno ažurirati svoj sustav pomoću specijalnog alatke — razvili su ga stručnjaci za informatičku sigurnost koji su otkrili DROWN. Više o preporukama vezanim uz zaštitu od ovog tipa napada možete pročitati u objavi na web stranici OpenSSL.

Heartbleed

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

Napad se provodi kroz mali modul Heartbeat proširenja TLS-a. TLS protokol zahtijeva da se podaci šalju kontinuirano. U slučaju dugotrajne neaktivnosti dolazi do prekida i potrebno je ponovno uspostaviti vezu. Da bi se nosili s problemom, serveri i klijenti umjetno "šume" kanal (RFC 6520, str.5), šaljuci pakete nasumične duljine. Ako je on bio veći od najvećeg paketa, ranjive verzije OpenSSL čitale su memoriju izvan dodijeljenog bafera. U ovoj oblasti mogli su se nalaziti svi podaci, uključujući tajne ključeve za enkripciju i informacije o drugim vezama.

Ranjivost je bila prisutna u svim verzijama biblioteke između 1.0.1 i 1.0.1f uključivo, kao i u nekim operativnim sustavima — Ubuntu do 12.04.4, CentOS starijim od 6.5, OpenBSD 5.3 i drugima. Potpuni popis je na stranici posvećenoj Heartbleed. Iako su zakrpe protiv te ranjivosti objavljene gotovo odmah nakon njenog otkrivanja, problem ostaje aktualan i danas. Čak i 2017. godine radilo je gotovo 200 tisuća web stranica, podložnih Heartbleed-u.

Kako se zaštititi. Potrebno je ažurirati OpenSSL na verziju 1.0.1g ili noviju. Također možete ručno onemogućiti Heartbeat zahtjeve pomoću opcije DOPENSSL_NO_HEARTBEATS. Nakon ažuriranja, stručnjaci za informatičku sigurnost preporučuju trebaju ponovo izdati SSL certifikate. Zamjena je potrebna u slučaju da su podaci o ključevima za enkripciju ipak dospjeli do hakera.

Lažni certifikat

Između korisnika i servera postavlja se upravljani čvor s legitimnim SSL certifikatom, koji aktivno presreće promet. Ovaj čvor se predstavlja kao legitimni server, prikazujući valjani certifikat, i postoji mogućnost provođenja MITM napada.

Prema istraživanju Prema podacima iz Mozille, Googlea i nekoliko sveučilišta, približno 11% zaštićenih veza na mreži "prisluškuje se". To je rezultat instalacije sumnjivih korijenskih certifikata na računalima korisnika.

Kako se zaštititi. Koristiti usluge pouzdanih SSL-providera. Provjeriti "kvalitetu" certifikata može se pomoću servisa Certificate Transparency (CT). U pomoć otkrivanju "prisluškivanja" mogu doći i oblačni provideri — već danas neke velike tvrtke nude specijalizirane alate za praćenje veza putem TLS-a.

Drugi način zaštite bit će novi standard ACME, koji automatizira dobivanje SSL-certifikata. Pritom će dodati dodatne mehanizme za provjeru vlasnika web stranice. Više o njemu pisali smo u jednom od naših prethodnih materijala.

Potencijalni napadi na HTTPS i kako se zaštititi od njih
/ Flickr / Yuri Samoilov / CC BY

Perspektive HTTPS

Unatoč nizu ranjivosti, IT-gianti i stručnjaci za IB sigurni su u budućnost protokola. Za aktivno uvođenje HTTPS-a - to znači da dodjeljujemo poslužiteljskom soketu opciju stvoritelj WWW-a Tim Berners-Lee. Prema njegovim riječima, s vremenom će TLS postati sve sigurniji, što će značajno povećati sigurnost veza. Berners-Lee čak je sugerirao da će u budućnosti postojati klijentski certifikati za autentifikaciju identiteta. Oni će pomoći u poboljšanju zaštite poslužitelja od napadača.

Razvijanje tehnologije SSL/TLS također se planira putem strojnog učenja — pametni algoritmi bit će odgovorni za filtriranje zlonamjernog prometa. U HTTPS-vezama administratori nemaju mogućnost saznati sadržaj šifriranih poruka — uključujući i otkrivanje zahtjeva od zlonamjernog softvera. Već danas neuronske mreže su sposobne filtrirati potencijalno opasne pakete s točnošću od 90%. (slajd 23 prezentacije).

Zaključci

Napadi na HTTPS većinom su povezani ne s problemima u samom protokolu, već s podrškom zastarjelim mehanizmima šifriranja. IT-industrija polako počinje odustajati od protokola prethodne generacije i nudi nove alate za pronalaženje ranjivosti. U budućnosti će ti alati postajati sve inteligentniji.

Dodatni linkovi na temu:

Izvor: habr.com

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster