Jums tas būtu jāzina par ostu pārsūtīšanu un UPnP

UPnP, porti, ugunsmūri, var būt diezgan grūti kaut ko padarīt pieejamu no tīkla iekšpuses, lai to varētu sasniegt arī ārējās vietās. Bieži vien ir grūti konfigurēt maršrutētāju, lai tas nosūtītu pareizu trafiku uz pareizo ierīci jūsu tīklā. Mēs strādāsim pie šī ar UPnP un ostu pārsūtīšanu.

Vai vēlaties, lai no sava mājas tīkla varētu piekļūt ierīcei, piemēram, NAS, pat ja neesat mājās? Pēc noklusējuma jūsu mājas tīkls ir aizsargāts tā, ka tas nav iespējams, jo pretējā gadījumā ļaunprātīgas personas varētu sasniegt arī jūsu tīkla ierīces. Tāpēc jums pašiem jāpielāgo iestatījumi. Ir svarīgi zināt, ko darāt, lai neapzināti neapdraudētu tīkla drošību. Lasiet arī: Vai jūsu NAS kļūst pilns? Tu to vari izdarīt.

01 interneta slāņi

Ja vēlaties kaut ko nosūtīt internetā no punkta A uz punktu B, šie dati tiek nosūtīti caur vairākiem "slāņiem". Katrs slānis vienmēr piedāvā dažas papildu funkcijas datu sūtīšanai.

Pašā apakšā jums ir fiziskais slānis, kur dati signālu veidā tiek nosūtīti pa kabeli vai bezvadu, izmantojot WiFi. Viens slānis virs tā jums ir slānis, kas datus nosūta pa kabeli vai WiFi kā vienības un nulles, kā arī pārbauda kļūdas un, ja nepieciešams, nosūta datus vēlreiz. Vēl vienā slānī augstāk jums ir iespēja nosūtīt datus starp divām tīkla ierīcēm, kaut kas tiek darīts, izmantojot MAC adresi. Katrs slānis ir mazliet abstraktāks, apakšā jūs strādājat ar fiziskiem un nullēm, virs tā - ar paketēm starp ierīcēm un adresēm. Tātad jums ir vairāki slāņi, kur katrs slānis vienmēr izmanto zemāk esošā slāņa funkcijas un abstrakcijas.

Tagad pieņemsim, ka mēs vēlamies nosūtīt tekstu "Sveika, pasaule!" Uz mūsu serveri mājās. Tīkla slānis iesaiņo tekstu un meklē maršrutētāju, kas pieņem pakotni un var to pārsūtīt pa ceļam uz mūsu serveri. Pakete nonāk vienu slāni dziļāk, līdz tā tiek pārveidota par fiziskiem signāliem un pārvietojas pa kabeli. Galu galā tas nonāk mūsu serverī, kurš nolasa datus. Tagad pieņemsim, ka serveris atbild arī ar pakotni, kurā teikts: “Sveiks, PC!”. Šī pakete arī iet cauri visiem slāņiem ceļā uz mūsu datoru. Tomēr ir viena problēma. Pakotne ir ieradusies mūsu datorā, bet kā operētājsistēma zina, kurai programmai ir paredzēta pakete? Tam ir vārti. Ports ir nekas cits kā programmas pastkaste; kur Windows, Linux vai macOS var piegādāt datus, lai programma, kurai dati ir paredzēti, tos varētu saņemt.

02 Pārsūtīšanas ostas

Ja jums nav ugunsmūra, piekļuve visām jūsu ostām ir atvērta. Tas ir labi, jo, kamēr neviena programma neatver portu, nekas nevar notikt. Turklāt Windows ir savs iebūvētais ugunsmūris. Ja programma izmanto portu un ugunsmūris to atļauj, jebkurš dators jebkurā vietā var izsaukt jūsu IP adresi ar šo portu un nosūtīt datus uz to.

Vismaz tā tas ir teorētiski ... praksē jums ir maršrutētājs, kuram ir pievienoti vairāki personālie datori, klēpjdatori un planšetdatori. Tagad pieņemsim, ka vēlaties nosūtīt datus uz datoru kaut kur ārpus sava tīkla, tad rodas problēma. Jūsu maršrutētājs veic kaut ko tādu, ko sauc par NAT vai tīkla adrešu tulkošanu. Tas ir nepieciešams, jo jūsu interneta pakalpojumu sniedzējs katram interneta savienojumam piešķir tikai vienu IP adresi, tāpēc ar šo vienu IP adresi varat savienot tieši vienu ierīci ar internetu. Maršrutētājs atrisina šo problēmu, būdams vienīgais, kas tieši savienots ar jūsu pakalpojumu sniedzēju, tādējādi pieņemot šo IP adresi un pēc tam izplatot IP adreses savām ierīcēm.

Tāpēc pieņemsim, ka vēlaties nosūtīt ziņojumu no kafijas bāra uz mājas datoru, tad nav jēgas izmantot maršrutētāja piešķirto vietējo IP adresi, jo šai IP adresei ir nozīme tikai jūsu tīklā. Ārpus tā tas ne uz ko neattiecas. Tā vietā jūs varat izmantot savu ārējo IP adresi kopā ar savu portu. Problēma ir tāda, ka maršrutētājam pēc tam jāzina, kur nosūtīt datus. Izmantojot tikai ārējo IP adresi un portu, maršrutētājs joprojām nezina, kuram datoram, planšetdatoram vai viedtālrunim pakete ir paredzēta. Tāpēc notiek porta pārsūtīšana: ar to jūs maršrutētājā norādāt, ka, ja dati šajā ostā drīz parādīsies, šie dati ir jāpārsūta uz noteiktu ierīci.

Jūs varētu domāt, kā internets vispār darbojas jūsu tīklā. Apmeklējot vietni, dati tiek sūtīti arī turp un atpakaļ, un šie dati vienkārši nonāk jūsu datorā, nenosakot porta pārsūtīšanu. Tas darbojas, jo jūsu maršrutētājs pats jau izmanto porta pārsūtīšanu savienojumiem, kurus iestatījāt no iekšpuses, lai visas paketes pareizi nonāktu tur, kur tām jābūt. Pati ostas pārsūtīšana nav drošības risks. Šo risku rada lietojumprogrammas klausīšanās šajā ostā. Pieņemsim, ka pārsūtāt X portu uz datoru, kuru nekad neatjaunināt, un tas ir liels risks zināmo drošības ievainojamību dēļ. Tāpēc, nosūtot portu uz to, ir svarīgi vienmēr uzturēt ierīci atjauninātu.

03 UPnP

UPnP nozīmē universālu Plug and Play. Tas ļauj tīkla ierīcēm "redzēt" viens otru. Katra ierīce var paziņot par sevi tīklā, ļaujot ierīcēm viegli sazināties un sadarboties savā starpā. Viena no UPnP funkcijām ir atļaut ierīcei pārsūtīt portus, tāpēc jums tas nav jādara manuāli.

Pieņemsim, ka jūsu Xbox vēlas saņemt trafiku portā 32400, tad ierīce to var automātiski pieprasīt no maršrutētāja, kas pēc tam izveidos atbilstošo kārtulu un tādējādi pārsūtīs visu šī porta trafiku uz jūsu Xbox, izmantojot IP vai MAC adresi. . Tomēr UPnP ir drošības risks. Problēma ir tā, ka UPnP neizmanto nekādu autentifikācijas veidu. Ļaunprātīga programmatūra var viegli atvērt ostas. Problēma ir tā, ka UPnP var izmantot attālināti. Daudzas maršrutētāju ražotāju ieviestās UPnP ir nedrošas. 2013. gadā uzņēmums sešus mēnešus skenēja internetu, lai redzētu, kuras ierīces reaģēja uz UPnP. Atsaucās ne mazāk kā 6900 ierīču, no kurām 80 procenti bija saistīti ar mājas ierīci, piemēram, printeri, tīmekļa kameru vai IP kameru. Tāpēc iesakām maršrutētājā atspējot UPnP. Svarīgākos secinājumus no pētījuma varat atrast kontekstā "UPnP droši?"

UPnP drošs?

Rapid7 veiktā UPnP drošības pētījuma galvenie secinājumi.

- 2,2 procenti no visām publiskajām IPv4 adresēm atbildēja uz UPnP trafiku internetā, jeb 81 miljons unikālu IP adrešu.

- 20 procenti no šīm IP adresēm ne tikai reaģēja uz interneta trafiku, bet arī piedāvāja API, kas sasniedzama attālināti, lai konfigurētu UPnP ierīci!

23 miljoni ierīču izmanto neaizsargātu libupnp versiju - plaši izmantotu programmatūras bibliotēku, kas ievieš UPnP protokolu. Noplūdes šajā versijā var izmantot attālināti, un tam nepieciešama tikai viena UDP pakete.