Ce înseamnă HTTPS și ce îți garantează un site din această categorie

de: Dan Demeter
24 02. 2018

Accesarea site-urilor care au în adresă „HTTPS”, în locul variantei simple „HTTP” este una dintre recomandările de bază pentru cei care vor să fie în siguranță în mediul online. Dar la ce se referă „HTTPS” și care este nivelul de securitate pe care îl poate oferi? Mai jos poți găsi povestea Anei, căreia îi place sa lucreze pentru start-up-ul ei din locuri publice unde este Internet wireless gratuit.

[related]

HTTPS este prescurtarea de la „Hypertext Transfer Protocol secure”, fiind varianta criptată a protocolului de transfer Hypertext, care stă la baza schimbului de date în momentul navigării pe Internet. Atunci când te conectezi la un site HTTPS pentru orice activitate care necesită un transfer de date, ele vor fi criptate prin protocolul TLS (Transport Layer Security). Cu alte cuvinte, informațiile trimise prin mediile de comunicare nesigure (rețeaua wireless dintr-o cafenea, rețeaua publică dintr-o bibliotecă, furnizorul tău de servicii de Internet) nu pot fi văzute de un intrus și pot fi accesate doar de tine și site-ul de destinație.

Să luam exemplul Anei, care astăzi a decis că vrea să lucreze dintr-un spațiu public și a mers într-un local care îi oferă și acces la Internet wireless gratuit. Această rețea este administrată de Emil, pe care Ana nu îl cunoaște.

Pe parcursul zilei, ea și-a amintit că trebuie să facă niște plăți, așa că va folosi aplicația de Online Banking pusă la dispoziție de banca ei. Astfel, conectată la rețeaua wireless, ea dorește să acceseze site-ul “baniimei.ro”. În mod normal, în momentul când intră pe site, asigurându-se că tastează corect adresa site-ului https://baniimei.ro, îi va apărea lângă adresa site-ului și o notificare verde cu textul “Secure” și cu un lacăt lângă, atunci când folosește browser-ul “Google Chrome”:

sau o notificare verde doar cu un lacăt, atunci când folosește browser-ul “Firefox Quantum”:

În aceste cazuri, Ana este sigură că are o conexiune securizată (criptată) între ea și site-ul pe care îl accesează. Dar este ea în deplină siguranță? Din păcate, răspunsul este “aproape”: pentru a fi absolut sigură că vizitează site-ul corect și conexiunea ei este criptată, trebuie să verifice întotdeauna două lucruri foarte importante:

Dacă adresa site-ului / URL-ul pe care îl accesează este cea corectă. De foarte multe ori, persoanele rău intenționate încearcă să ne convingă să dăm click pe link-uri care par să imite site-ul original. Aceste tentative se numesc “phishing”:

De exemplu, Ana ar putea să fie indusă în eroare și să intre pe site-ul https://baniimei.ro.site-rau-intentionat.com. Acest URL este unul valid, cu singura mențiune că subdomeniul folosit seamănă sau este identic cu site-ul vizat de către atacatori. Din fericire, browser-ele moderne au implementat soluții pentru punerea în evidență a acestor tipuri de atacuri: Firefox Quantum întotdeauna folosește un font îngroșat pentru domeniul link-ului accesat. În exemplul de mai jos, se poate observa că domeniul “site-rau-intentionat.com” diferă de subdomeniul “ro.site-rau-intentionat.com”.

 

Dacă metoda folosită anterior este destul de ușor de identificat, una mai “deșteaptă” ar fi folosirea domeniilor omofone.

Un astfel de exemplu sunt domeniile “baniimei.ro” si “baniimei.ro”. Observi diferența? Fără o verificare atentă, nici Ana nu o poate sesiza. Diferența constă în faptul că litera “a” din “baniimei.ro” este de fapt o literă  chirilică, fiind total diferită de litera latină “a”. Aceste domenii nu sunt foarte răspândite și se numesc domenii internaționale. Ele diferă de domeniile “obișnuite” prin faptul că au în componentă nu doar litere latine, ci și “internaționale”. Un exemplu este simbolul “a” care, deși seamănă extrem de tare cu simbolul latin “a”, din punctul de vedere al calculatoarelor, sunt două litere diferite și reprezintă două domenii diferite.

Astfel, un atacator ar putea înregistra domeniul “baniimei.ro” și, prin metode de phishing, ar putea să încerce să te îndemne să intri pe site-ul controlat de el. Mai multe detalii despre domeniile omofone pot fi găsite aici: http://www.irongeek.com/homoglyph-attack-generator.php

  1. Un alt exemplu, un pic mai ușor de detectat, este cel al domeniilor care seamănă cu cel original, dar conțin o mică “greșeală”. Metoda se numește “URL hijacking” și se manifestă astfel: domeniile “baniimei.ro” și “banimei.ro” seamănă foarte mult, dar la o verificare mai atentă, putem observa ca lipsește un “i” din al doilea domeniu. Alte domenii folosite în procesul de URL hijacking ar putea fi: “baniinei.ro” (“n” in loc de “m”) sau “baniimeii.ro” (extra litera “i”).

Similar cu metoda anterioară, un atacator ar putea să încerce să o păcălească pe Ana să intre pe site-ul controlat de el.

  1. Al doilea lucru important de verificat este certificatul TLS prezentat de către website. De fiecare dată când Ana încearcă să intre pe un site folosind protocolul “https”, se întâmplă trei lucruri. Pe scurt: browser-ul trimite cererea (aici ea trebuie să aibă foarte mare grijă ca domeniul căutat să fie veridic – vezi punctul 1 de mai sus), server-ul îi răspunde cu un certificat folosit pentru criptarea conexiunii, iar în final, browser-ul îl verifică să fie valid. Verificarea certificatului se face prin mai mulți pași, dar este foarte important ca lângă bara de navigare să avem acel lacăt verde și / sau textul “Secure” sau “Secure connection” (așa cum am prezentat în paragraful anterior). În cazul în care nu avem acel lacăt verde vizibil sau browser-ul scrie cu roșu “Not secure”, înseamnă că nu este sigură conexiunea noastră la acel site și recomandarea este să închizi pagina și să încerci un alt tip de conexiune (de exemplu, un hotspot făcut de pe telefonul mobil).

O astfel de eroare ar arăta așa:

De cele mai multe ori, erorile sunt cauzate de greșeli de configurare din partea administratorilor website-urilor, dar nu este exclus nici ca o persoană rău voitoare (de exemplu, Emil) să încerce să îți vadă traficul tău de date criptat.

Dacă pe un site „HTTPS” ți se oferă garanția că informația pe care o trimiți este criptată, certificatele digitale valide garantează că datele ajung chiar acolo unde intenționezi și nu la niște atacatori care imită perfect site-ul legitim. Certificatele digitale constau într-un algoritm unic și au o anumită perioadă de valabilitate, nu se acordă pentru totdeauna. Acestea fiind spuse, întrebarea legitimă este cine acordă certificatele digitale și dacă nu poate exista o breșă de securitate la ei care să compromită întregul proces.

După cum știe toată lumea, din păcate nimeni nu este infailibil. Printre cele mai cunoscute firme în domeniu se numără VeriSign, Entrust sau GoDaddy. Acestea și-au câștigat încrederea majorității browser-elor și au puterea de a o transfera și asupra altor entități din domeniul certificatelor digitale, mai puțin cunoscute. Situația este destul de complicată, însă, pentru că au existat exemple celebre de certificate falsificate – în cazul firmelor DigiNotar și Comodo: două certificate digitale au garantat pentru virusul Stuxnet. Evident, este nevoie de un nou sistem, dar în acest moment nu există unul funcțional.

Urmând cele două reguli, de fiecare dată, Ana reușește să își țină datele de login pe anumite site-uri în siguranță. În mod ciudat, după o oră de când a început să lucreze în cafenea, ea observă că anumite site-uri la care se conectează folosind criptarea încep să îi raporteze erori precum cea de mai sus. Suspicioasă, Ana decide că este momentul să se deconecteze de la rețeaua wireless oferită de local și să se conecteze folosind hotspot-ul făcut de telefonul ei.

[related]

După aceea, totul revine la normal. Din păcate, ea nu poate ști exact ce s-a întâmplat: dacă a fost o eroare de configurare din rețeaua wireless sau dacă Emil încerca să îi intercepteze traficul. Pentru că a urmat cele două mari reguli menționate anterior, ea poate fi 100% sigură ca datele ei au fost trimise în siguranță prin Internet.

În fine, am ajuns și la partea cu sfaturi de urmat:

  1. Să verifici foarte atent URL-ul din bara de navigare, mai ales dacă dai click de pe un e-mail primit. După cum am arătat, site-ul poate avea un certificat valid (îndeplinește a doua condiție), dar să fie, de fapt, o pagină de phishing (nu respectă condiția 1).
  2. Să încerci să te conectezi la paginile pe care le vizitezi folosind doar protocolul HTTPS, astfel încât datele în tranzit să fie criptate. Pentru a simplifica acest lucru, cei de la EEE au scos o extensie de browser numită HTTPS Everywhere. Iți recomand cu căldură să o încerci :).
  3. În condițiile în care ai verificat cu atenție URL-ul din bara de navigare și optezi să folosești protocolul https, ai grjă să folosești o conexiune care să fie “secure” și doar cu lacăt verde.
  4. Verifică personal certificatul și menține browser-ul  și sistemul de operare actualizate. Cei pasionați de această problemă și interesați de securitatea lor pe net, pot să revoce manual încrederea acordată de browser unei entități care acordă certificate digitale, dacă află că a fost compromisă. Desigur, în situații de acest gen, majoritatea companiilor care se află în spatele browser-elor populare reacționează destul de repede și iau aceeași măsură.
  5. Folosește o soluție de securitate eficientă și actualizată la zi pentru a detecta și site-urile de phishing care par inofensive.
  6. Nu în ultimul rând, verifică întotdeauna cele două condiții prezentate mai sus, pentru a fi 100% sigur că folosești o conexiune criptată.

Ana îți urează o navigare plăcută și cât mai sigură pe Internet :)!