Kerentanan dalam teknologi keamanan jaringan nirkabel WPA3 dan EAP-pwd

Mathy Vanhoef, penulis serangan KRACK pada jaringan nirkabel dengan WPA2, dan Eyal Ronen, rekan penulis beberapa serangan terhadap TLS, mengungkapkan informasi tentang enam kerentanan (CVE-2019-9494 - CVE-2019-9499) dalam teknologi perlindungan jaringan nirkabel WPA3, memungkinkan Anda membuat ulang kata sandi koneksi dan mendapatkan akses ke jaringan nirkabel tanpa mengetahui kata sandinya. Kerentanan tersebut secara kolektif diberi nama kode Dragonblood dan memungkinkan metode negosiasi koneksi Dragonfly, yang memberikan perlindungan terhadap tebakan kata sandi offline, dapat disusupi. Selain WPA3, metode Dragonfly juga digunakan untuk melindungi terhadap tebakan kamus dalam protokol EAP-pwd yang digunakan di Android, server RADIUS dan hostapd/wpa_supplicant.

Studi ini mengidentifikasi dua jenis masalah arsitektur utama di WPA3. Kedua jenis masalah tersebut pada akhirnya dapat digunakan untuk merekonstruksi kata sandi akses. Jenis pertama memungkinkan Anda untuk kembali ke metode kriptografi yang tidak dapat diandalkan (serangan downgrade): alat untuk memastikan kompatibilitas dengan WPA2 (mode transit, memungkinkan penggunaan WPA2 dan WPA3) memungkinkan penyerang memaksa klien untuk melakukan negosiasi koneksi empat langkah digunakan oleh WPA2, yang memungkinkan penggunaan lebih lanjut kata sandi serangan brute force klasik yang berlaku untuk WPA2. Selain itu, kemungkinan melakukan serangan downgrade secara langsung pada metode pencocokan koneksi Dragonfly telah diidentifikasi, memungkinkan seseorang untuk melakukan roll back ke jenis kurva elips yang kurang aman.

Jenis masalah kedua mengarah pada kebocoran informasi tentang karakteristik kata sandi melalui saluran pihak ketiga dan didasarkan pada kelemahan dalam metode pengkodean kata sandi di Dragonfly, yang memungkinkan data tidak langsung, seperti perubahan penundaan selama operasi, untuk membuat ulang kata sandi asli. . Algoritme hash-ke-kurva Dragonfly rentan terhadap serangan cache, dan algoritme hash-ke-grupnya rentan terhadap serangan waktu eksekusi operasi (timing Attack).

Untuk melakukan serangan penambangan cache, penyerang harus dapat mengeksekusi kode tanpa hak istimewa pada sistem pengguna yang terhubung ke jaringan nirkabel. Kedua metode ini memungkinkan memperoleh informasi yang diperlukan untuk memperjelas pilihan bagian kata sandi yang benar selama proses pemilihan kata sandi. Efektivitas serangannya cukup tinggi dan memungkinkan Anda menebak kata sandi 8 karakter yang mencakup karakter huruf kecil, hanya mencegat 40 sesi jabat tangan dan menghabiskan sumber daya yang setara dengan menyewa kapasitas Amazon EC2 seharga $125.

Berdasarkan kerentanan yang teridentifikasi, beberapa skenario serangan telah diusulkan:

  • Serangan rollback pada WPA2 dengan kemampuan melakukan pemilihan kamus. Dalam lingkungan di mana klien dan titik akses mendukung WPA3 dan WPA2, penyerang dapat menggunakan titik akses jahat mereka sendiri dengan nama jaringan yang sama yang hanya mendukung WPA2. Dalam situasi seperti ini, klien akan menggunakan metode negosiasi koneksi yang merupakan karakteristik WPA2, di mana akan ditentukan bahwa rollback tersebut tidak dapat diterima, namun ini akan dilakukan pada tahap ketika pesan negosiasi saluran telah dikirim dan semua informasi yang diperlukan untuk serangan kamus sudah bocor. Metode serupa dapat digunakan untuk mengembalikan versi kurva elips yang bermasalah di SAE.

    Selain itu, ditemukan bahwa daemon iwd, yang dikembangkan oleh Intel sebagai alternatif untuk wpa_supplicant, dan tumpukan nirkabel Samsung Galaxy S10 rentan terhadap serangan penurunan versi bahkan di jaringan yang hanya menggunakan WPA3 - jika perangkat ini sebelumnya terhubung ke jaringan WPA3 , mereka akan mencoba menyambung ke jaringan WPA2 tiruan dengan nama yang sama.

  • Serangan saluran samping yang mengekstrak informasi dari cache prosesor. Algoritme pengkodean kata sandi di Dragonfly berisi percabangan bersyarat dan penyerang, yang memiliki kemampuan untuk mengeksekusi kode pada sistem pengguna nirkabel, berdasarkan analisis perilaku cache, dapat menentukan blok ekspresi if-then-else mana yang dipilih. Informasi yang diperoleh dapat digunakan untuk melakukan tebakan kata sandi progresif menggunakan metode yang mirip dengan serangan kamus offline pada kata sandi WPA2. Untuk perlindungan, diusulkan untuk beralih menggunakan operasi dengan waktu eksekusi konstan, terlepas dari sifat data yang diproses;
  • Serangan saluran samping dengan perkiraan waktu pelaksanaan operasi. Kode Dragonfly menggunakan beberapa grup perkalian (MODP) untuk mengkodekan kata sandi dan sejumlah variabel iterasi, yang jumlahnya bergantung pada kata sandi yang digunakan dan alamat MAC titik akses atau klien. Penyerang jarak jauh dapat menentukan berapa banyak iterasi yang dilakukan selama pengkodean kata sandi dan menggunakannya sebagai indikasi untuk menebak kata sandi secara progresif.
  • Penolakan panggilan layanan. Penyerang dapat memblokir pengoperasian fungsi tertentu dari titik akses karena habisnya sumber daya yang tersedia dengan mengirimkan permintaan negosiasi saluran komunikasi dalam jumlah besar. Untuk melewati perlindungan banjir yang disediakan oleh WPA3, cukup mengirimkan permintaan dari alamat MAC fiktif dan tidak berulang.
  • Penggantian ke grup kriptografi yang kurang aman yang digunakan dalam proses negosiasi koneksi WPA3. Misalnya, jika klien mendukung kurva elips P-521 dan P-256, dan menggunakan P-521 sebagai opsi prioritas, maka penyerang, terlepas dari dukungannya,
    P-521 pada sisi access point dapat memaksa klien untuk menggunakan P-256. Serangan tersebut dilakukan dengan menyaring beberapa pesan selama proses negosiasi koneksi dan mengirimkan pesan palsu dengan informasi tentang kurangnya dukungan untuk jenis kurva elips tertentu.

Untuk memeriksa kerentanan perangkat, beberapa skrip telah disiapkan dengan contoh serangan:

  • Dragonslayer - implementasi serangan terhadap EAP-pwd;
  • Dragondrain adalah utilitas untuk memeriksa kerentanan titik akses untuk kerentanan dalam penerapan metode negosiasi koneksi SAE (Simultaneous Authentication of Equals), yang dapat digunakan untuk memulai penolakan layanan;
  • Dragontime - skrip untuk melakukan serangan saluran samping terhadap SAE, dengan mempertimbangkan perbedaan waktu pemrosesan operasi saat menggunakan MODP grup 22, 23 dan 24;
  • Dragonforce adalah utilitas untuk memulihkan informasi (menebak kata sandi) berdasarkan informasi tentang waktu pemrosesan operasi yang berbeda atau menentukan penyimpanan data dalam cache.

Aliansi Wi-Fi, yang mengembangkan standar untuk jaringan nirkabel, mengumumkan bahwa masalah ini mempengaruhi sejumlah implementasi awal WPA3-Personal dan dapat diperbaiki melalui pembaruan firmware dan perangkat lunak. Belum ada kasus kerentanan yang digunakan untuk melakukan tindakan jahat yang terdokumentasi. Untuk memperkuat keamanan, Aliansi Wi-Fi telah menambahkan pengujian tambahan pada program sertifikasi perangkat nirkabel untuk memverifikasi kebenaran penerapannya, dan juga telah menghubungi produsen perangkat untuk bersama-sama mengoordinasikan perbaikan atas masalah yang teridentifikasi. Patch telah dirilis untuk hostap/wpa_supplicant. Pembaruan paket tersedia untuk Ubuntu. Debian, RHEL, SUSE/openSUSE, Arch, Fedora dan FreeBSD masih memiliki masalah yang belum diperbaiki.

Sumber: opennet.ru

Tambah komentar