EFAIL - vulnerabilități în tehnologiile de criptare end-to-end OpenPGP și S/MIME

2018/05/15
Popularitate 1080

Foto: thevpn.guru

EFAIL descrie vulnerabilitățile în tehnologiile de criptare end-to-end OpenPGP și S/MIME care expun textul e-mailurilor criptate.

E-mailul este un mediu de comunicare text, ale cărui canale sunt parțial protejate de protocolul TLS. Pentru persoanele situate în medii ostile (jurnaliști, activiști politici, informatori, etc.) care depind de confidențialitatea comunicării digitale, această criptare a canalului nu este suficientă.

Pentru a rezolva această problemă, OpenPGP oferă criptarea end-to-end a mesajelor text. S/MIME este un standard alternativ pentru criptarea end-to-end a e-mail-ului, care este folosit în mod uzual în mediul corporatist.

Descriere

Atacurile EFAIL exploatează vulnerabilități din standardele OpenPGP și S/MIME pentru a dezvălui textul e-mailurilor criptate. Pe scurt, EFAIL utilizează conținutul activ al e-mailurilor HTML (de exemplu, imaginile sau stilurile încărcate din Internet), pentru a exfiltra textul mesajelor prin adresele URL solicitate.

Pentru a crea aceste canale de exfiltrare, atacatorul trebuie mai întâi să aibă acces la e-mailurile criptate. Aceasta se poate realiza prin interceptarea traficului de rețea, compromiterea conturilor de e-mail, a serverelor de e-mail, a sistemelor de backup sau a dispozitivelor client.

Atacatorul schimbă un e-mail criptat într-un anumit mod și trimite acest e-mail fabricat victimei. Clientul de mail al victimei (ex. Thunderbird, Outlook) decriptează e-mailul și încarcă orice conținut extern, trimițând textul decriptat spre atacator.

Exfiltrarea directă

Există două tipuri diferite de atacuri EFAIL. În primul rând, atacul cu exfiltrare directă care exploatează vulnerabilitățile clienților de e-mail Apple Mail, iOS Mail și Mozilla Thunderbird pentru a extrage textul din mesajele criptate. Aceste vulnerabilități pot fi remediate în respectivii clienți de e-mail.

Atacatorul creează un nou e-mail cu trei părți, așa cum este afișat în figura de mai jos.

Prima parte a conținutului HTML conține un tag de imagine HTML. Se observă că atributul src al tag-ului imaginii este deschis cu ghilimele, dar nu este și închis.

A doua parte conține textul cifrat PGP sau S/MIME, iar în cea de-a treia parte a conținutului HTML se închide atributul src din prima parte.

Atacatorul trimite acum acest e-mail victimei. Clientul victimei decriptează partea secundară și concatenează cele trei părți ale conținutului HTML, după cum este prezentat mai jos.

Atributul src din linia 1 este închis după mesajul decriptat, astfel încât adresa URL se întinde pe toate cele patru linii.

Clientul de e-mail, codifică toate caracterele care nu pot fi tipărite (de exemplu, %20 este un spațiu alb) ale URL-ului și solicită o imagine de la acea adresă.

Dat fiind că URL-ul conține textul în clar, clientul de e-mail al victimei trimite textul către atacator.

Acest atac funcționează atât pentru protocolul PGP cât și pentru S/MIME.

Atacul cu gadgetCBC/CFB

În al doilea rând, atacul CBC/CFB exploatează vulnerabilitățile specifice OpenPGP și S/MIME, pentru a exfiltra textul din mesajele criptate. Diagrama de mai jos descrie modul de operare CBC în S/MIME.

Din pricina modului de operare a modulului CBC, un atacator poate modifica cu precizie blocurile de text dacă cunoaște textul în clar.

E-mailurile criptate S/MIME încep de obicei cu antetul "Content-type: multipart/signed". Astfel un atacator cunoaște cel puțin un bloc de text complet (a) și poate forma un bloc text canonic, al cărui conținut este format doar din zerouri (b).

Perechea de blocuri X și C0 va fi denumită gadget CBC. În pasul următor (c), se adaugă în mod repetat gadget-uri CBC pentru a injecta un tag de tip imagine în textul criptat.

Astfel este creat un canal de exfiltrare a textului în clar atunci când utilizatorul deschide e-mail-ul atacatorului.

OpenPGP utilizează modul de operare CFB, care are aceleași proprietăți criptografice ca și CBC și permite același atac folosind gadget-uri CFB.

Diferența constă în faptul că orice client standard este vulnerabil și că fiecare furnizor poate pregăti propriile măsuri de remediere care pot sau nu preveni atacurile.

Atacurile gadget CBC/CFB asupra protocoalelor PGP și S/MIME sunt foarte asemănătoare din punct de vedere tehnic, însă cerințele pentru un atac reușit diferă substanțial.

Atacurile S/MIME sunt simple, un atacator putând extrage mai multe e-mailuri criptate S/MIME prin trimiterea unui singur e-mail fabricat victimei.

Atacul cu gadget CFB împotriva protocolului criptografic PGP are o rată de succes de aproximativ 30%. Această rată redusă se datorează faptului că PGP comprimă textul înainte de a-l cripta, ceea ce complică identificarea unor octeți de text cunoscut. Aceasta nu reprezintă o limitare fundamentală a atacurilor EFAIL, ci mai mult o provocare tehnică pentru atacatori.

Impact

Atacuri asupra clienților S/MIME

Atacuri asupra clienților PGP

Atacuri cu exfitrare directă

Remediere

Termen scurt: Nu mai decriptați mesajele în clientul de e-mail!

Cea mai bună modalitate de a preveni atacurile EFAIL este să decriptați e-mailurile S/MIME sau PGP într-o aplicație separată în afara clientului de e-mail.

Începeți prin a elimina cheile private S/MIME și PGP din clientul de e-mail, și decriptați e-mailurile criptate primite prin copierea și inserarea textului cifrat într-o aplicație separată.

Astfel, clienții de e-mail nu pot deschide canale de exfiltrare. Aceasta este în prezent cea mai sigură opțiune, cu dezavantajul că procesul de decriptare devine mai complicat.

Termen scurt: Dezactivați redarea conținutului HTML!

Atacurile EFAIL utilizează conținutul activ, mai ales sub formă de imagini HTML, stiluri etc. Dezactivarea prezentării email-urilor HTML primite în clientul dvs. de e-mail va închide modul cel mai proeminent de atac EFAIL.

Există și alte canale  posibile în clienții de e-mail care nu utilizează conținutul HTML, dar acestea sunt mai greu de exploatat.

Termen mediu: Patching!

Furnizori de clienți e-mail vor publica actualizări care vor remedia vulnerabilitățile EFAIL, sau le vor face mai greu de exploatat.

Termen lung: Actualizarea standardele OpenPGP și S/MIME!

Atacurile EFAIL exploatează defectele și comportamentul nedefinit în standardele MIME, S/MIME și OpenPGP.

Prin urmare, standardele trebuie să fie actualizate, dar aceasta necesită o perioadă de timp mai mare.

Surse

[1] Teză tehnică - Efail: Breaking S/MIME and OpenPGP Email Encryption using Exfiltration Channels [v0.9 Draft] - https://efail.de/efail-attack-paper.pdf

[2] https://www.eff.org/deeplinks/2018/05/attention-pgp-users-new-vulnerabilities-require-you-take-action-now

[3] https://arstechnica.com/information-technology/2018/05/critical-pgp-and-smime-bugs-can-reveal-encrypted-e-mails-uninstall-now/

[4] https://www.golem.de/news/e-mail-verschluesselung-pgp-und-s-mime-abschalten-1805-134359.html


Vizualizat de 1783 ori