UPNP ditafsirkan sebagai berikut: Untuk komputer pribadi, fungsi UPnP BitComet dapat membuat modul NAT gateway atau router melakukan pemetaan port otomatis, dan memetakan port yang didengarkan BitComet dari gateway atau router ke komputer intranet. Modul firewall jaringan gateway atau router mulai membuka port ini ke komputer lain di Internet. Teknologi traversal NAT memungkinkan aplikasi web untuk mendeteksi apakah mereka berada di belakang perangkat NAT berkemampuan UPnP. Program-program ini kemudian mendapatkan alamat IP global yang dapat dirutekan bersama dan mengonfigurasi pemetaan port untuk meneruskan paket dari port eksternal NAT ke port internal yang digunakan oleh aplikasi – semuanya secara otomatis, tanpa perlu pengguna memetakan port secara manual atau melakukan hal lain. Teknologi traversal NAT memungkinkan perangkat jaringan atau aplikasi peer-to-peer untuk berkomunikasi dengan dunia luar melalui gateway NAT dengan membuka dan menutup port komunikasi secara dinamis dengan layanan eksternal. Dengan kata lain, dapat diringkas sebagai berikut: efisiensi konversi NAT sederhana tidak tinggi, dan jika teknologi UPNP diluncurkan, efisiensi konversi data NAT dapat ditingkatkan. Kedengarannya seperti hal yang baik. Tapi apa yang ???
UPNP memiliki kekurangan serius: Berikut kutipannya:
Kelemahan pertama adalah penggunaan buffer tidak diperiksa dan dibatasi. Penyerang eksternal dapat memperoleh hak istimewa kontrol dari seluruh sistem melalui ini! Karena fungsi UPnp harus menggunakan port komputer untuk bekerja, penyerang yang mendapatkan kendali juga dapat menggunakan port ini untuk mencapai tujuan penyerang. Konsekuensi dari cacat ini sangat serius, tidak peduli versi sistem Windows mana, selama UPnP berjalan, ada bahaya ini! Tetapi sebenarnya, ini tidak sepenuhnya menjadi masalah dengan teknologi UPnP itu sendiri, tetapi lebih merupakan pengawasan pemrograman. Kelemahan kedua terkait dengan mekanisme kerja UPnP. Cacat ada pada fase "penemuan perangkat" saat UPnP bekerja. Menemukan perangkat dapat dibagi menjadi dua situasi: jika komputer berkemampuan UPnP berhasil melakukan boot dan terhubung ke jaringan, ia akan segera mengirim "siaran" ke jaringan, memberi tahu perangkat UPnP di jaringan bahwa perangkat sudah siap, dan pada tingkat pemrograman, konten siaran adalah instruksi M-SEARCH (pesan). Siaran akan "didengar" oleh semua perangkat dalam "jangkauan suara". Dan umpan balik informasi yang relevan ke komputer untuk tujuan kontrol selanjutnya. Demikian pula, jika perangkat baru saja terhubung ke jaringan, itu juga akan mengirimkan "pemberitahuan" ke jaringan bahwa perangkat siap menerima kontrol dari jaringan, yang merupakan indikasi NOTIFY di tingkat pemrograman. Ini juga akan diterima oleh semua komputer dalam kisaran "jangkauan suara". Komputer akan "merasakan" bahwa perangkat telah "melapor kepada dirinya sendiri". Bahkan, instruksi NOTIFY tidak hanya dikirim ke komputer, tetapi juga dapat didengar oleh perangkat jaringan lainnya. Dalam siaran dan pendengaran yang disebutkan di atas, ada masalah! Jika peretas mengirimkan instruksi NOTIFY ke sistem pengguna, sistem pengguna akan menerima instruksi NOTIFY ini dan terhubung ke server tertentu di bawah instruksinya, dan kemudian meminta layanan unduhan ke server yang sesuai - unduh konten layanan yang akan dijalankan. Server tentu saja akan menanggapi permintaan ini. Sistem layanan UPnP akan menjelaskan deskripsi perangkat, meminta lebih banyak file untuk dikirim, dan server harus menanggapi permintaan tersebut. Dengan cara ini, siklus "permintaan-respons" terbentuk, yang menempati sejumlah besar sumber daya sistem dan menyebabkan kecepatan layanan sistem UPnP melambat atau bahkan berhenti. Jadi, cacat ini akan memungkinkan serangan "penolakan layanan"!
Faktanya, dengan kata lain, fungsi UPNP terus-menerus mengkonsumsi sumber daya jaringannya sendiri selama tahap penggunaan, dan ketika sumber daya jaringan perangkat habis, akan ada fenomena animasi yang ditangguhkan. Lihat saja informasi di atas. |