HTTPS conținut mixt: încă cel mai simplu mod de a sparge SSL

probleme de conținut mixt apar atunci când Site-urile web își livrează paginile prin HTTPS, dar permit livrarea unor resurse în text clar. Atacatorul activ de rețea nu poate face nimic în legătură cu traficul criptat, dar încurcarea cu textul clar poate duce la atacuri variind de la phishing în cel mai bun caz până la compromisul complet al browserului în cel mai rău caz. Un singur script expus este suficient: atacatorul poate deturna conexiunea și poate injecta sarcini utile arbitrare de atac în ea.

avem tendința de a vorbi mult despre alte aspecte ale SSL/TLS, dar conținutul mixt este, fără îndoială, cel mai simplu mod de a încurca complet criptarea site-ului dvs. web.

în primele zile ale Web-ului, Tot conținutul mixt era permis; browserele web se așteptau ca operatorii site-ului să se gândească la consecințele amestecării conținutului. Acest lucru, desigur, nu a rezultat cu o mare securitate. Operatorii Site-ului au făcut tot ce au avut nevoie pentru a-și face munca și pentru a reduce costurile. Abia în ultimii ani vânzătorii de browsere au început să acorde atenție și au început să restricționeze conținutul mixt.

conținut mixt în browserele moderne

astăzi, aproape toate browserele majore tind să împartă conținutul mixt în două categorii: pasiv pentru imagini, videoclipuri și sunet; și activ pentru resurse mai periculoase, cum ar fi scripturile. Acestea tind să permită în mod implicit conținut mixt pasiv, dar resping conținutul activ. Acesta este în mod clar un compromis între ruperea Web-ului și securitatea rezonabilă.

Internet Explorer a fost lider în gestionarea sigură a conținutului mixt. Încă din Internet Explorer 5 (Conform acestui post), au avut detectarea și prevenirea conținutului nesigur în mod implicit. Chrome a început să blocheze în mod implicit în 2011, iar Firefox în 2013. Cu toate acestea, browserul Android implicit și Safari permit în continuare tot conținutul mixt fără restricții (și cu avertismente aproape inexistente).

iată rezultatele testelor mele recente despre ce conținut nesigur este permis în mod implicit:

Browser imagini CSS Scripturi XHR WebSockets cadre
browser Android 4.4.x Da Da Da Da Da Da Da
Chrome 33 Da nu nu Da Da Da nu
Firefox 28 Da nu nu nu nu nu nu
Internet Explorer 11 Da nu nu nu nu nu nu
Safari 7 Da Da Da Da Da Da Da

acestea sunt în mare parte la fel de așteptate, dar există o surpriză cu Chrome, care blochează conținutul activ al paginii, dar permite totuși conexiuni XMLHttpRequest și WebSocket.

merită menționat faptul că tabelul nu ne spune totul. De exemplu, browserele tind să nu controleze ceea ce fac pluginurile lor. Mai mult, anumite componente (de exemplu, Flash sau Java) sunt medii complete în sine și există puține browsere care pot face pentru a impune securitatea.

testarea pentru manipularea conținutului mixt în laboratoarele SSL

pentru a facilita evaluarea manipulării în browser a acestei probleme, am extins recent testul clientului SSL Labs pentru a testa manipularea conținutului mixt. Când vizitați pagina, browserul dvs. de utilizator este testat și veți obține rezultate similare cu acestea:

ssl-labs-client-test-mixed-content

prevalența conținutului mixt

anecdotic, conținutul mixt este foarte frecvent. La Qualys, am investigat această problemă în 2011, împreună cu alte câteva probleme la nivel de aplicație care au ca rezultat ruperea completă a criptării în aplicațiile web. Am analizat paginile de pornire a aproximativ 250.000 de site-uri web securizate din lista Alexa top 1 million și am stabilit că 22,41% dintre ele au folosit conținut nesigur. Dacă imaginile sunt excluse, numărul scade la 18,71%.

un studiu mai detaliat al 18.526 de site-uri extrase din Alexa top 100.000 a avut loc în 2013: un amestec periculos: analiza la scară largă a site-urilor cu conținut mixt (Chen și colab.). Pentru fiecare site, au fost analizate până la 200 de pagini securizate, ajungând la un total de 481.656 de pagini. Rezultatele lor indică faptul că până la 43% din Site-urile web au probleme de conținut mixt.

atenuare

cea mai bună apărare împotriva problemelor de conținut mixt este pur și simplu să nu aveți acest tip de problemă în codul dvs. Dar acest lucru este ușor de spus decât de făcut; există multe moduri în care conținutul mixt se poate strecura. Când acest lucru eșuează, există două tehnologii care pot fi utile:

  • HTTP Strict Transport Security (HSTS) este un mecanism care impune recuperarea sigură a resurselor, chiar și în fața greșelilor utilizatorilor (încercarea de a accesa site-ul dvs. web pe portul 80) și a erorilor de implementare (dezvoltatorii dvs. plasează un link nesigur într-o pagină securizată). HSTS este unul dintre cele mai bune lucruri care s-au întâmplat recent cu TLS, dar funcționează numai pe numele de gazdă pe care le controlați.
  • Politica de securitate a conținutului (CSP) poate fi utilizată pentru a bloca recuperarea nesigură a resurselor de pe site-uri web terțe. De asemenea, are multe alte caracteristici utile pentru a aborda alte probleme de securitate a aplicațiilor, de exemplu XSS.

Write a Comment

Adresa ta de email nu va fi publicată.