135, 593 - Pentesting MSRPC
Dołącz do serwera HackenProof Discord, aby komunikować się z doświadczonymi hakerami i łowcami błędów!
Spostrzeżenia dotyczące hakowania Zajmij się treściami, które zagłębiają się w emocje i wyzwania hakowania
Aktualności dotyczące hakowania na żywo Bądź na bieżąco z szybkim tempem świata hakowania dzięki aktualnościom i spostrzeżeniom na żywo
Najnowsze ogłoszenia Bądź na bieżąco z najnowszymi programami bug bounty i istotnymi aktualizacjami platformy
Dołącz do nas na Discordzie i zacznij współpracować z najlepszymi hakerami już dziś!
Podstawowe informacje
Protokół Microsoft Remote Procedure Call (MSRPC), model klient-serwer umożliwiający programowi żądanie usługi od programu znajdującego się na innym komputerze bez konieczności zrozumienia szczegółów sieci, początkowo pochodził z oprogramowania open-source, a następnie został rozwinięty i opatrzony prawami autorskimi przez firmę Microsoft.
Mapper punktów końcowych RPC można uzyskać za pośrednictwem portu TCP i UDP 135, SMB na TCP 139 i 445 (z pustą lub uwierzytelnioną sesją) oraz jako usługę sieciową na porcie TCP 593.
Jak działa MSRPC?
Zainicjowany przez aplikację kliencką, proces MSRPC polega na wywołaniu lokalnej procedury pomocniczej, która następnie współdziała z biblioteką czasu wykonania klienta, aby przygotować i przesłać żądanie do serwera. Obejmuje to konwertowanie parametrów na standardowy format reprezentacji danych sieciowych. Wybór protokołu transportowego jest określany przez bibliotekę czasu wykonania, jeśli serwer jest zdalny, zapewniając dostarczenie RPC poprzez stos sieciowy.
Identyfikacja wystawionych usług RPC
Wystawienie usług RPC poprzez TCP, UDP, HTTP i SMB można określić poprzez zapytanie usługi lokalizatora RPC i poszczególnych punktów końcowych. Narzędzia takie jak rpcdump ułatwiają identyfikację unikalnych usług RPC, oznaczonych wartościami IFID, ujawniając szczegóły usługi i powiązania komunikacyjne:
Dostęp do usługi lokalizatora RPC jest włączony poprzez konkretne protokoły: ncacn_ip_tcp i ncadg_ip_udp do dostępu za pomocą portu 135, ncacn_np do połączeń SMB oraz ncacn_http do komunikacji RPC opartej na sieci webowej. Poniższe polecenia ilustrują wykorzystanie modułów Metasploit do audytowania i interakcji z usługami MSRPC, skupiając się głównie na porcie 135:
Wszystkie opcje oprócz tcp_dcerpc_auditor
są specjalnie zaprojektowane do celowania w MSRPC na porcie 135.
Znaczące interfejsy RPC
IFID: 12345778-1234-abcd-ef00-0123456789ab
Named Pipe:
\pipe\lsarpc
Opis: Interfejs LSA, używany do wyliczania użytkowników.
IFID: 3919286a-b10c-11d0-9ba8-00c04fd92ef5
Named Pipe:
\pipe\lsarpc
Opis: Interfejs usług katalogowych LSA (DS), używany do wyliczania domen i relacji zaufania.
IFID: 12345778-1234-abcd-ef00-0123456789ac
Named Pipe:
\pipe\samr
Opis: Interfejs LSA SAMR, używany do dostępu do publicznych elementów bazy danych SAM (np. nazwy użytkowników) i łamania haseł użytkowników niezależnie od polityki blokady konta.
IFID: 1ff70682-0a51-30e8-076d-740be8cee98b
Named Pipe:
\pipe\atsvc
Opis: Harmonogram zadań, używany do zdalnego wykonywania poleceń.
IFID: 338cd001-2244-31f1-aaaa-900038001003
Named Pipe:
\pipe\winreg
Opis: Usługa rejestru zdalnego, używana do dostępu i modyfikacji rejestru systemowego.
IFID: 367abb81-9844-35f1-ad32-98f038001003
Named Pipe:
\pipe\svcctl
Opis: Menedżer kontroli usług i usługi serwerowe, używane do zdalnego uruchamiania i zatrzymywania usług oraz wykonywania poleceń.
IFID: 4b324fc8-1670-01d3-1278-5a47bf6ee188
Named Pipe:
\pipe\srvsvc
Opis: Menedżer kontroli usług i usługi serwerowe, używane do zdalnego uruchamiania i zatrzymywania usług oraz wykonywania poleceń.
IFID: 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57
Named Pipe:
\pipe\epmapper
Opis: Interfejs DCOM, używany do łamania haseł metodą brute-force i zbierania informacji za pomocą WM.
Identyfikacja adresów IP
Korzystając z https://github.com/mubix/IOXIDResolver, pochodzącego z badania Airbusa, możliwe jest nadużycie metody ServerAlive2 wewnątrz interfejsu IOXIDResolver.
Ta metoda została wykorzystana do uzyskania informacji o interfejsie jako adresie IPv6 z boxa HTB APT. Zobacz tutaj opis APT od 0xdf, zawiera on alternatywną metodę korzystającą z rpcmap.py z Impacket z stringbinding (patrz powyżej).
Wykonywanie RCE z prawidłowymi poświadczeniami
Możliwe jest wykonanie zdalnego kodu na maszynie, jeśli poświadczenia prawidłowego użytkownika są dostępne za pomocą dcomexec.py z ramy Impacket.
Pamiętaj, aby spróbować z różnymi dostępnymi obiektami
ShellWindows
ShellBrowserWindow
MMC20
Port 593
rpcdump.exe z rpctools może komunikować się z tym portem.
Odnośniki
Dołącz do serwera HackenProof Discord, aby komunikować się z doświadczonymi hakerami i łowcami błędów!
Spostrzeżenia dotyczące hakerstwa Zajmij się treściami, które zagłębiają się w emocje i wyzwania hakerstwa
Aktualności dotyczące hakerstwa na żywo Bądź na bieżąco z szybkim tempem świata hakerstwa dzięki aktualnościom i spostrzeżeniom na żywo
Najnowsze ogłoszenia Bądź na bieżąco z najnowszymi programami bug bounty i istotnymi aktualizacjami platformy
Dołącz do nas na Discordzie i zacznij współpracować z najlepszymi hakerami już dziś!
Last updated