ALPACA - o nouă tehnică pentru atacurile MITM pe HTTPS

O echipă de cercetători de la mai multe universități din Germania a dezvoltat un nou atac MITM asupra HTTPS care poate extrage cookie-uri de sesiune și alte date sensibile, precum și poate executa cod JavaScript arbitrar în contextul unui alt site. Atacul se numește ALPACA și poate fi aplicat serverelor TLS care implementează diferite protocoale de nivel de aplicație (HTTPS, SFTP, SMTP, IMAP, POP3), dar folosesc certificate TLS comune.

Esența atacului este că, dacă deține controlul asupra unui gateway de rețea sau a unui punct de acces wireless, atacatorul poate redirecționa traficul web către un alt port de rețea și poate organiza stabilirea unei conexiuni cu un server FTP sau de e-mail care acceptă criptarea TLS și utilizează un Certificat TLS comun cu serverul HTTP , iar browserul utilizatorului va presupune că a fost stabilită o conexiune cu serverul HTTP solicitat. Deoarece protocolul TLS este universal și nu este legat de protocoale la nivel de aplicație, stabilirea unei conexiuni criptate pentru toate serviciile este identică, iar eroarea de trimitere a unei cereri către serviciul greșit poate fi determinată numai după stabilirea unei sesiuni criptate în timpul procesării comenzile cererii trimise.

În consecință, dacă, de exemplu, redirecționați o conexiune de utilizator adresată inițial către HTTPS către un server de e-mail care utilizează un certificat partajat cu serverul HTTPS, conexiunea TLS va fi stabilită cu succes, dar serverul de e-mail nu va putea procesa transmisia transmisă. comenzi HTTP și va returna un răspuns cu cod de eroare. Acest răspuns va fi procesat de browser ca răspuns de la site-ul solicitat, transmis într-un canal de comunicare criptat corect stabilit.

Sunt propuse trei variante de atac:

  • „Încărcați” pentru a prelua un cookie cu parametri de autentificare. Metoda este aplicabilă dacă serverul FTP acoperit de certificatul TLS vă permite să încărcați și să preluați datele acestuia. În această variantă de atac, atacatorul poate obține reținerea unor părți din cererea HTTP originală a utilizatorului, cum ar fi conținutul antetului Cookie, de exemplu, dacă serverul FTP interpretează cererea ca pe un fișier de salvare sau înregistrează în întregime cererile primite. Pentru a ataca cu succes, atacatorul trebuie apoi să extragă cumva conținutul stocat. Atacul este aplicabil pentru Proftpd, Microsoft IIS, vsftpd, filezilla și serv-u.
  • „Descărcare” pentru organizarea de scripturi între site-uri (XSS). Metoda implică faptul că atacatorul, ca urmare a unor manipulări individuale, poate plasa date într-un serviciu care utilizează un certificat TLS comun, care poate fi apoi emis ca răspuns la o solicitare a utilizatorului. Atacul este aplicabil serverelor FTP, serverelor IMAP și serverelor POP3 menționate mai sus (curier, cyrus, kerio-connect și zimbra).
  • „Reflecție” pentru a rula JavaScript în contextul unui alt site. Metoda se bazează pe revenirea către client a părții cererii, care conține codul JavaScript trimis de atacator. Atacul este aplicabil serverelor FTP menționate mai sus, serverelor cyrus, kerio-connect și zimbra IMAP, precum și serverului SMTP sendmail.

ALPACA - o nouă tehnică pentru atacurile MITM pe HTTPS

De exemplu, atunci când un utilizator deschide o pagină controlată de un atacator, această pagină poate iniția o solicitare pentru o resursă de pe un site în care utilizatorul are un cont activ (de exemplu, bank.com). În timpul unui atac MITM, această solicitare adresată site-ului bank.com poate fi redirecționată către un server de e-mail care utilizează un certificat TLS care este partajat cu bank.com. Deoarece serverul de e-mail nu încheie sesiunea după prima eroare, anteturile de serviciu și comenzile precum „POST / HTTP/1.1” și „Gazdă:” vor fi procesate ca comenzi necunoscute (serverul de e-mail va returna „500 de comandă nerecunoscută” pentru fiecare antet).

Serverul de e-mail nu înțelege caracteristicile protocolului HTTP și pentru acesta anteturile de serviciu și blocul de date al cererii POST sunt procesate în același mod, astfel încât în ​​corpul cererii POST puteți specifica o linie cu o comandă pentru serverul de mail. De exemplu, puteți transmite: MAIL FROM: alert(1); la care serverul de mail va returna un mesaj de eroare 501 alert(1); : adresa malformată: alert(1); poate să nu urmeze

Acest răspuns va fi primit de browserul utilizatorului, care va executa codul JavaScript în contextul nu al site-ului web deschis inițial al atacatorului, ci al site-ului bank.com către care a fost trimisă solicitarea, deoarece răspunsul a venit într-o sesiune TLS corectă. , al cărui certificat a confirmat autenticitatea răspunsului bank.com.

ALPACA - o nouă tehnică pentru atacurile MITM pe HTTPS

O scanare a rețelei globale a arătat că, în general, aproximativ 1.4 milioane de servere web sunt afectate de problemă, pentru care este posibil să se efectueze un atac prin amestecarea cererilor folosind diferite protocoale. Posibilitatea unui atac real a fost determinată pentru 119 mii de servere web pentru care au existat servere TLS însoțitoare bazate pe alte protocoale de aplicație.

Au fost pregătite exemple de exploit-uri pentru serverele ftp pureftpd, proftpd, microsoft-ftp, vsftpd, filezilla și serv-u, serverele IMAP și POP3 dovecot, courier, exchange, cyrus, kerio-connect și zimbra, serverele SMTP postfix, exim, sendmail , mailenable, mdaemon și opensmtpd. Cercetătorii au studiat posibilitatea de a efectua un atac doar în combinație cu serverele FTP, SMTP, IMAP și POP3, dar este posibil ca problema să apară și pentru alte protocoale de aplicație care folosesc TLS.

ALPACA - o nouă tehnică pentru atacurile MITM pe HTTPS

Pentru a bloca atacul, se propune utilizarea extensiei ALPN (Application Layer Protocol Negotiation) pentru a negocia o sesiune TLS ținând cont de protocolul aplicației și a extensiei SNI (Server Name Indication) pentru a se lega de numele gazdei în cazul utilizării. Certificate TLS care acoperă mai multe nume de domenii. Din partea aplicației, se recomandă limitarea numărului de erori la procesarea comenzilor, după care conexiunea este întreruptă. Procesul de elaborare a măsurilor de blocare a atacului a început în octombrie anul trecut. Măsuri de securitate similare au fost deja luate în Nginx 1.21.0 (proxy mail), Vsftpd 3.0.4, Courier 5.1.0, Sendmail, FileZill, crypto/tls (Go) și Internet Explorer.

Sursa: opennet.ru

Adauga un comentariu