SAD DNS: serangan untuk mengganti data palsu dalam cache DNS

Sekumpulan Penyelidik dari Universiti Tsinghua dan University of California di Riverside telah mengembangkan jenis serangan baru bahawa membenarkan penggantian data palsu dalam cache pelayan DNS, yang dapat digunakan untuk menipu alamat IP domain sewenang-wenangnya dan mengalihkan panggilan ke domain ke pelayan penyerang.

Serangan memintas perlindungan tambahan kepada pelayan DNS untuk menyekat kaedah keracunan cache DNS klasik yang dicadangkan pada tahun 2008 oleh Dan Kaminsky.

Kaedah Kaminsky memanipulasi saiz medan id pertanyaan DNS yang boleh diabaikan, yang hanya 16 bit. Untuk mencari pengecam yang betul yang diperlukan untuk menipu nama host, hantarkan sekitar 7.000 permintaan dan simulasi kira-kira 140.000 tindak balas palsu.

Serangan itu menyebabkan banyak paket palsu IP terikat ke penyelesai DNS dengan id transaksi DNS yang berbeza. Untuk mengelakkan respons pertama di-cache, nama domain yang sedikit diubahsuai ditentukan dalam setiap tindak balas palsu.

Untuk melindungi daripada serangan jenis ini, Pengeluar pelayan DNS melaksanakan pembahagian nombor port rangkaian secara rawak sumber dari mana permintaan resolusi dihantar, yang mengimbangi ukuran pengenal yang tidak cukup besar (untuk mengirim tindak balas rekaan, selain memilih pengecam 16-bit, perlu memilih salah satu dari 64 ribu port, yang meningkatkan jumlah pilihan untuk pemilihan hingga 2 ^ 32).

Serangan itu DNS SAD mempermudah pengenalan port secara dramatik dengan memanfaatkan aktiviti yang disaring di port rangkaian. Masalahnya terserlah dalam semua sistem operasi (Linux, Windows, macOS dan FreeBSD) dan ketika menggunakan pelayan DNS yang berbeza (BIND, Unbound, dnsmasq).

Dikatakan bahawa 34% dari semua pemecah terbuka diserang, serta 12 dari 14 perkhidmatan DNS teruji teratas, termasuk 8.8.8.8 (Google), 9.9.9.9 (Quad9), dan 1.1.1.1 (CloudFlare), serta 4 dari 6 router yang diuji dari vendor terkenal.

Masalahnya disebabkan oleh keanehan pembentukan paket respons ICMP, bahawa membolehkan akses ke port rangkaian aktif ditentukan dan tidak digunakan melebihi UDP. Dengan ciri ini, anda dapat mengimbas port UDP terbuka dengan cepat dan memintas perlindungan secara efektif berdasarkan pilihan port rangkaian sumber secara rawak, mengurangkan bilangan pilihan kekuatan brute menjadi 2 ^ 16 + 2 ^ 16 dan bukannya 2 ^ 32.

Punca masalah adalah mekanisme untuk membatasi intensiti penghantaran bilangan paket ICMP pada timbunan rangkaian, yang menggunakan nilai pembilang yang dapat diramalkan, dari mana permulaan pendikit bermula. Kaunter ini biasa digunakan untuk semua lalu lintas, termasuk lalu lintas palsu dari penyerang dan lalu lintas sebenar. Secara lalai, di Linux, respons ICMP terhad kepada 1000 paket sesaat. Untuk setiap permintaan yang mencapai port jaringan tertutup, timbunan rangkaian menambah penghitung dengan 1 dan mengirimkan paket ICMP dengan data dari port yang tidak dapat dijangkau.

Oleh itu, jika anda menghantar 1000 paket ke port rangkaian yang berbeza, yang semuanya ditutup, pelayan akan menyekat penghantaran respons ICMP selama satu saat dan penyerang boleh yakin bahawa tidak ada port terbuka di antara 1000 port yang dicari. Sekiranya paket dihantar ke port terbuka, pelayan tidak akan memberikan respons ICMP dan nilai kaunter tidak akan berubah, iaitu setelah 1000 paket dihantar, had kadar tindak balas tidak akan tercapai.

Oleh kerana paket palsu dilakukan dari IP palsu, penyerang tidak dapat menerima respons ICMP, tetapi terima kasih kepada jumlah penghitung, setelah setiap 1000 paket palsu, dia dapat mengirim permintaan ke port yang tidak ada dari IP sebenar dan menilai kedatangan jawapan; jika jawapannya datang, maka dalam salah satu daripada 1000 bungkusan. Setiap detik, penyerang dapat mengirim 1000 paket palsu ke port yang berlainan dan dengan cepat menentukan blok masuk port terbuka, kemudian mempersempit pemilihan dan menentukan port tertentu.

Kernel Linux menyelesaikan masalah dengan patch yang mengacak parameternya untuk membatasi intensiti penghantaran paket ICMP, yang memperkenalkan kebisingan dan meminimumkan kebocoran data melalui saluran sampingan.

Fuente: https://www.saddns.net/


Tinggalkan komen anda

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda dengan *

*

*

  1. Bertanggungjawab untuk data: AB Internet Networks 2008 SL
  2. Tujuan data: Mengendalikan SPAM, pengurusan komen.
  3. Perundangan: Persetujuan anda
  4. Komunikasi data: Data tidak akan disampaikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Pangkalan data yang dihoskan oleh Occentus Networks (EU)
  6. Hak: Pada bila-bila masa anda boleh menghadkan, memulihkan dan menghapus maklumat anda.