ALPACA - teknik baharu untuk serangan MITM pada HTTPS

Pasukan penyelidik dari beberapa universiti di Jerman telah membangunkan serangan MITM baharu pada HTTPS yang boleh mengekstrak kuki sesi dan data sensitif lain, serta melaksanakan kod JavaScript sewenang-wenangnya dalam konteks tapak lain. Serangan itu dipanggil ALPACA dan boleh digunakan pada pelayan TLS yang melaksanakan protokol lapisan aplikasi yang berbeza (HTTPS, SFTP, SMTP, IMAP, POP3), tetapi menggunakan sijil TLS biasa.

Inti dari serangan itu ialah jika dia mempunyai kawalan ke atas gerbang rangkaian atau titik akses wayarles, penyerang boleh mengubah hala lalu lintas web ke port rangkaian lain dan mengatur penubuhan sambungan dengan FTP atau pelayan mel yang menyokong penyulitan TLS dan menggunakan Sijil TLS biasa dengan pelayan HTTP , dan penyemak imbas pengguna akan menganggap bahawa sambungan telah diwujudkan dengan pelayan HTTP yang diminta. Memandangkan protokol TLS adalah universal dan tidak terikat dengan protokol peringkat aplikasi, penubuhan sambungan yang disulitkan untuk semua perkhidmatan adalah sama dan ralat menghantar permintaan kepada perkhidmatan yang salah boleh ditentukan hanya selepas mewujudkan sesi yang disulitkan semasa memproses arahan permintaan yang dihantar.

Oleh itu, jika, sebagai contoh, anda mengubah hala sambungan pengguna yang asalnya dialamatkan ke HTTPS ke pelayan mel yang menggunakan sijil yang dikongsi dengan pelayan HTTPS, sambungan TLS akan berjaya diwujudkan, tetapi pelayan mel tidak akan dapat memproses yang dihantar. arahan HTTP dan akan mengembalikan respons dengan kod ralat. Respons ini akan diproses oleh penyemak imbas sebagai respons daripada tapak yang diminta, dihantar dalam saluran komunikasi yang disulitkan dengan betul.

Tiga pilihan serangan dicadangkan:

  • "Muat naik" untuk mendapatkan semula Kuki dengan parameter pengesahan. Kaedah ini boleh digunakan jika pelayan FTP yang dilindungi oleh sijil TLS membenarkan anda memuat naik dan mendapatkan semula datanya. Dalam varian serangan ini, penyerang boleh mencapai pengekalan bahagian permintaan HTTP asal pengguna, seperti kandungan pengepala Kuki, contohnya, jika pelayan FTP mentafsir permintaan itu sebagai fail simpan atau log permintaan masuk sepenuhnya. Untuk berjaya menyerang, penyerang kemudiannya perlu mengekstrak kandungan yang disimpan. Serangan ini boleh digunakan untuk Proftpd, Microsoft IIS, vsftpd, filezilla dan serv-u.
  • "Muat turun" untuk mengatur skrip merentas tapak (XSS). Kaedah ini membayangkan bahawa penyerang, hasil daripada beberapa manipulasi individu, boleh meletakkan data dalam perkhidmatan yang menggunakan sijil TLS biasa, yang kemudiannya boleh dikeluarkan sebagai tindak balas kepada permintaan pengguna. Serangan ini boleh digunakan pada pelayan FTP, pelayan IMAP dan pelayan POP3 yang disebutkan di atas (kurier, cyrus, kerio-connect dan zimbra).
  • "Refleksi" untuk menjalankan JavaScript dalam konteks tapak lain. Kaedah ini berdasarkan kembali ke bahagian klien permintaan, yang mengandungi kod JavaScript yang dihantar oleh penyerang. Serangan ini boleh digunakan pada pelayan FTP yang disebutkan di atas, pelayan IMAP cyrus, kerio-connect dan zimbra, serta pelayan SMTP sendmail.

ALPACA - teknik baharu untuk serangan MITM pada HTTPS

Sebagai contoh, apabila pengguna membuka halaman yang dikawal oleh penyerang, halaman ini boleh memulakan permintaan untuk sumber daripada tapak yang pengguna mempunyai akaun aktif (contohnya, bank.com). Semasa serangan MITM, permintaan yang dialamatkan ke tapak web bank.com ini boleh diubah hala ke pelayan e-mel yang menggunakan sijil TLS yang dikongsi dengan bank.com. Memandangkan pelayan mel tidak menamatkan sesi selepas ralat pertama, pengepala perkhidmatan dan arahan seperti "POST / HTTP/1.1" dan "Host:" akan diproses sebagai arahan yang tidak diketahui (pelayan mel akan mengembalikan "500 arahan tidak dikenali" untuk setiap tajuk).

Pelayan mel tidak memahami ciri protokol HTTP dan untuk itu pengepala perkhidmatan dan blok data permintaan POST diproses dengan cara yang sama, jadi dalam badan permintaan POST anda boleh menentukan baris dengan arahan untuk pelayan mel. Sebagai contoh, anda boleh lulus: MAIL FROM: alert(1); yang mana pelayan mel akan mengembalikan mesej ralat 501 alert(1); : alamat cacat: alert(1); mungkin tidak mengikuti

Respons ini akan diterima oleh penyemak imbas pengguna, yang akan melaksanakan kod JavaScript dalam konteks bukan tapak web penyerang yang mula-mula terbuka, tetapi tapak web bank.com yang permintaan itu dihantar, memandangkan respons datang dalam sesi TLS yang betul , sijil yang mengesahkan ketulenan respons bank.com.

ALPACA - teknik baharu untuk serangan MITM pada HTTPS

Imbasan rangkaian global menunjukkan bahawa secara umum, kira-kira 1.4 juta pelayan web terjejas oleh masalah itu, yang mana adalah mungkin untuk melakukan serangan dengan mencampurkan permintaan menggunakan protokol yang berbeza. Kemungkinan serangan sebenar ditentukan untuk 119 ribu pelayan web yang mana terdapat pelayan TLS yang disertakan berdasarkan protokol aplikasi lain.

Contoh eksploitasi telah disediakan untuk pelayan ftp pureftpd, proftpd, microsoft-ftp, vsftpd, filezilla dan serv-u, pelayan IMAP dan POP3 dovecot, courier, exchange, cyrus, kerio-connect dan zimbra, pelayan SMTP postfix, exim, sendmail , boleh mel, mdaemon dan opensmtpd. Penyelidik telah mengkaji kemungkinan melakukan serangan hanya dalam kombinasi dengan pelayan FTP, SMTP, IMAP dan POP3, tetapi ada kemungkinan masalah itu juga mungkin berlaku untuk protokol aplikasi lain yang menggunakan TLS.

ALPACA - teknik baharu untuk serangan MITM pada HTTPS

Untuk menyekat serangan, adalah dicadangkan untuk menggunakan sambungan ALPN (Perundingan Protokol Lapisan Aplikasi) untuk merundingkan sesi TLS dengan mengambil kira protokol aplikasi dan sambungan SNI (Petunjuk Nama Pelayan) untuk mengikat nama hos dalam kes penggunaan Sijil TLS yang meliputi beberapa nama domain. Di sisi aplikasi, adalah disyorkan untuk mengehadkan had bilangan ralat semasa memproses arahan, selepas itu sambungan ditamatkan. Proses membangunkan langkah untuk menyekat serangan itu bermula pada Oktober tahun lalu. Langkah keselamatan yang serupa telah pun diambil dalam Nginx 1.21.0 (proksi mel), Vsftpd 3.0.4, Courier 5.1.0, Sendmail, FileZill, crypto/tls (Go) dan Internet Explorer.

Sumber: opennet.ru

Tambah komen