UPNP este interpretat astfel: Pentru un calculator privat, funcția UPnP a BitComet poate face ca modulul NAT al gateway-ului sau routerului să facă mapare automată a porturilor și să mapeze portul pe care BitComet îl ascultă de la gateway sau router către computerul intranet. Modulul firewall-ului de rețea al gateway-ului sau routerului începe să deschidă acest port către alte calculatoare de pe Internet. Tehnologia de traversare NAT permite aplicațiilor web să detecteze dacă se află în spatele unui dispozitiv NAT capabil UPnP. Aceste programe primesc apoi o adresă IP globală rutabilă partajată și configurează maparea porturilor pentru a redirecționa pachetele de la porturile externe NAT către porturile interne folosite de aplicație – totul automat, fără ca utilizatorii să fie nevoie să mapeze porturile manual sau să facă altceva. Tehnologia de traversare NAT permite dispozitivelor de rețea sau aplicațiilor peer-to-peer să comunice cu lumea exterioară prin gateway-uri NAT prin deschiderea și închiderea dinamică a porturilor de comunicare cu servicii externe. Cu alte cuvinte, poate fi rezumat astfel: eficiența de conversie a NAT simplu nu este ridicată, iar dacă tehnologia UPNP este lansată, eficiența conversiei datelor NAT poate fi îmbunătățită. Sună ca un lucru bun. Dar ce ???
UPNP are neajunsuri serioase: Iată un fragment:
Primul defect este că utilizarea tamponelor nu este controlată și restricționată. Atacatorii externi pot obține privilegii de control asupra întregului sistem prin această metodă! Deoarece funcția UPnp trebuie să folosească porturile calculatorului pentru a funcționa, un atacator care preia controlul poate folosi aceste porturi pentru a atinge scopul atacatorului. Consecințele acestui defect sunt foarte grave, indiferent de versiunea sistemului Windows, atâta timp cât UPnP funcționează, există acest pericol! Dar, strict vorbind, aceasta nu este în totalitate o problemă a tehnologiei UPnP în sine, ci mai degrabă o omisiune de programare. Al doilea defect este legat de mecanismul de funcționare al UPnP. Defectul există în faza de "descoperire a dispozitivului", când UPnP funcționează. Descoperirea unui dispozitiv poate fi împărțită în două situații: dacă un calculator capabil UPnP pornește cu succes și se conectează la rețea, va trimite imediat o "difuzare" către rețea, notificând dispozitivul UPnP din rețea că este gata, iar la nivel de programare, conținutul difuzat este o instrucțiune M-SEARCH (mesaj). Transmisia va fi "auzită" de toate dispozitivele aflate în "raza de acțiune a sunetului". Și să trimită informațiile relevante către calculator pentru controlul ulterioar. În mod similar, dacă un dispozitiv este doar conectat la rețea, acesta va trimite și o "notificare" către rețea că este pregătit să accepte controlul de la rețea, care este o indicație NOTIFY la nivel de programare. De asemenea, va fi acceptat de toate calculatoarele din intervalul "razei sonore". Calculatorul va "simți" că dispozitivul "s-a raportat singur". De fapt, instrucțiunile NOTIFY nu sunt trimise doar către calculatoare, ci pot fi auzite și de alte dispozitive de rețea. În transmisia și ascultarea menționate mai sus apare o problemă! Dacă un hacker trimite o instrucțiune NOTIFY către sistemul unui utilizator, acesta va primi această instrucțiune NOTIFY și se va conecta la un server specific conform instrucțiunilor sale, apoi va solicita un serviciu de descărcare către serverul corespunzător – descărcând conținutul serviciului ce urmează să fie executat. Serverul va răspunde, desigur, acestei cereri. Sistemul de servicii UPnP va explica descrierea dispozitivului, solicitând trimiterea mai multor fișiere, iar serverul va trebui să răspundă acestor cereri. Astfel, se formează un ciclu "cerere-răspuns", care ocupă o cantitate mare de resurse de sistem și face ca viteza serviciului UPnP să încetinească sau chiar să se oprească. Așadar, acest defect va face posibil un atac de tip "denial of service"!
De fapt, cu alte cuvinte, funcția UPNP consumă constant propriile resurse de rețea în timpul stadiului de utilizare, iar când resursele de rețea ale dispozitivului sunt epuizate, va apărea un fenomen de animație suspendată. Uită-te doar la informațiile de mai sus. |