Saya telah menghabiskan sedikit waktu meneliti topik ini dan sepertinya tidak dapat menemukan jawaban yang tepat, jadi saya cukup yakin itu bukan duplikat, dan sementara pertanyaan saya didasarkan pada kebutuhan keamanan, saya pikir masih aman untuk tanyakan di sini tetapi beri tahu saya jika saya perlu memindahkannya ke komunitas keamanan.
Pada dasarnya, apakah permintaan DNS pernah menggunakan TCP (jika demikian, skenario apa yang bisa terjadi)? Sekali lagi, saya hanya berbicara tentang pertanyaan. Apakah mungkin bagi mereka untuk melakukan perjalanan melalui TCP? Jika domain hanya panjang maksimal 253 byte, dan paket UDP dapat sebesar 512 byte, bukankah kueri selalu keluar sebagai UDP? Saya tidak berpikir permintaan dapat diselesaikan cukup besar untuk memerlukan penggunaan TCP. Jika server DNS pernah mendapatkan permintaan untuk domain yang lebih besar dari 253 byte, apakah server akan menjatuhkannya / tidak mencoba dan menyelesaikannya? Saya yakin saya telah membuat beberapa asumsi yang salah di sini.
Untuk beberapa konteks, saya bekerja dengan grup keamanan untuk memasukkan permintaan DNS ke dalam alat pemantauan keamanan mereka, dan untuk berbagai alasan kami telah memutuskan kami akan menangkap lalu lintas ini melalui penangkapan paket standar pada server DNS dan pengontrol domain. Persyaratan inti adalah untuk menangkap semua permintaan DNS sehingga mereka dapat mengidentifikasi apa yang dicoba klien untuk menyelesaikan domain yang diberikan. Berdasarkan persyaratan ini, kami tidak peduli dengan menangkap respons DNS atau lalu lintas lain seperti transfer zona, yang juga didorong oleh kenyataan bahwa kami perlu membatasi volume log sebanyak mungkin. Karena itu, kami berencana untuk menangkap hanya permintaan DNS yang ditujukan untuk server DNS dan dikirim melalui UDP. Untuk lebih banyak konteks (semacam ruang lingkup pertanyaan merayap di sini), sekarang telah diangkat bahwa kita mungkin perlu memperluas keamanan ' Visibilitas sehingga mereka dapat memantau aktivitas seperti saluran terselubung yang berjalan di atas DNS (yang akan menghadirkan kebutuhan untuk menangkap respons DNS juga, dan selanjutnya trafik TCP). Tetapi bahkan dalam skenario semacam itu, saya pikir setiap lalu lintas DNS keluar akan dalam bentuk pencarian / permintaan, dan bahwa ini akan selalu lebih dari UDP, bahkan jika dari sumber jahat (karena alasan saya pada paragraf pertama). Jadi ini memunculkan beberapa pertanyaan tambahan:
Bukankah kita setidaknya akan menangkap setengah dari percakapan dengan pendekatan yang saya uraikan? Atau apakah klien pernah mengirimkan lalu lintas DNS yang tidak dalam bentuk kueri? (mungkin seperti semacam balasan untuk respons server DNS, dan mungkin berakhir melalui TCP)
Bisakah DNS query dimodifikasi untuk menggunakan TCP? Apakah server DNS menerima dan menanggapi permintaan DNS yang datang melalui TCP?
Tidak yakin apakah itu relevan, tapi kami membatasi permintaan DNS ke server DNS resmi dan memblokir semua lalu lintas keluar lainnya melalui port 53. Saya jelas pemula, jadi saya minta maaf jika pertanyaan saya tidak sesuai, dan beri tahu saya bagaimana saya harus memodifikasi.