Mapa portów

Narzędzie do mapowania portów ( rpc.portmap lub po prostu portmap lub rpcbind ) to usługa zdalnego wywoływania procedur Open Network Computing (ONC RPC), która działa na węzłach sieci zapewniających inne usługi ONC RPC.

Wersja 2 protokołu mapowania portów odwzorowuje pary numer programu ONC RPC/numer wersji na numer portu sieciowego tej wersji tego programu. Kiedy serwer ONC RPC zostanie uruchomiony, powie programowi mapującemu porty, dla każdej konkretnej pary numer programu/numer wersji, którą implementuje dla określonego protokołu transportowego ( TCP lub UDP ), jakiego numeru portu używa dla tej konkretnej pary numer programu/numer wersji w tym protokole transportowym. Klienci chcący wykonać wywołanie ONC RPC do określonej wersji określonej usługi ONC RPC muszą najpierw skontaktować się z osobą mapującą porty na serwerze, aby określić, jakiego rzeczywistego portu TCP lub UDP użyć.

Wersje 3 i 4 protokołu, zwane protokołem rpcbind, odwzorowują parę numer programu/numer wersji oraz wskaźnik określający protokół transportowy na adres punktu końcowego warstwy transportowej dla tej pary numer programu/numer wersji w tym protokole transportowym .

Usługa mapowania portów zawsze korzysta z portu TCP lub UDP 111; wymagany jest do tego stały port, ponieważ klient nie byłby w stanie uzyskać numeru portu dla usługi mapowania portów od samego narzędzia mapowania portów.

Narzędzie do mapowania portów musi zostać uruchomione przed uruchomieniem jakichkolwiek innych serwerów RPC.

Usługa mapowania portów pojawiła się po raz pierwszy w systemie SunOS 2.0.

Przykładowa instancja portmapy

Pokazuje różne programy i ich wersje oraz porty, z których korzystają. Na przykład pokazuje, że NFS jest uruchomiony w wersji 2 i 3 i można się z nim połączyć na porcie TCP 2049 lub porcie UDP 2049, w zależności od protokołu transportowego, którego chce używać klient, oraz że protokół montowania, zarówno w wersji 1, jak i 2, jest uruchomiony i można się z nim połączyć na porcie UDP 644 lub porcie TCP 645, w zależności od protokołu transportowego, którego chce używać klient.

$ rpcinfo -p program w porównaniu do portu proto 100000 2 tcp 111 portmapper 100000 2 udp 111 portmapper 100003 2 udp 2049 nfs 100003 3 udp 2049 nfs 100003 4 udp 2049 nfs 100003 2 tcp 2049 nfs 100003 3 tcp 2049 nfs 100003 4 tcp 2049 nfs 100024 1 udp 32770 stan 100021 1 udp 32770 nlockmgr 100021 3 udp 32770 nlockmgr 100021 4 udp 32770 nlockmgr 100024 1 tcp 32769 stan 100021 1 tcp 32769 nlockmgr 10 0021 3 tcp 32769 nlockmgr 100021 4 tcp 32769 nlockmgr 100005 1 udp 644 mountd 100005 1 tcp 645 mountd 100005 2 udp 644 zamontowany 100005 2 tcp 645 zamontowany 100005 3 udp 644 zamontowany 100005 3 tcp 645 zamontowany

Obawy dotyczące bezpieczeństwa

Odkryto, że usługa mapowania portów była wykorzystywana w atakach typu Distributed Denial of Service (DDoS) i Distributed Reflective Denial of Service (DRDoS) w 2015 r. Korzystając ze sfałszowanego żądania narzędzia mapowania portów, osoba atakująca może wzmocnić skutki dla celu, ponieważ zapytanie portmap zwróci wielokrotnie więcej danych niż w pierwotnym żądaniu.

Linki zewnętrzne