4369 - Pentesting Erlang Port Mapper Daemon (epmd)
Podstawowe informacje
Erlang Port Mapper Daemon (epmd) pełni rolę koordynatora dla rozproszonych instancji Erlanga. Jest odpowiedzialny za mapowanie symbolicznych nazw węzłów na adresy maszyn, zapewniając, że każda nazwa węzła jest skojarzona z określonym adresem. Rola epmd jest kluczowa dla płynnej interakcji i komunikacji między różnymi węzłami Erlanga w sieci.
Domyślny port: 4369
To jest domyślnie używane w instalacjach RabbitMQ i CouchDB.
Wyliczanie
Ręczne
Automatyczne
Introduction
Wprowadzenie
The Erlang Port Mapper Daemon (EPMD) is a network service that runs on the Erlang runtime system. It is responsible for managing the distribution of Erlang nodes on a network. EPMD listens on port 4369 by default and allows nodes to register and discover each other.
Erlang Port Mapper Daemon (EPMD) to usługa sieciowa działająca na systemie uruchomieniowym Erlang. Odpowiada za zarządzanie dystrybucją węzłów Erlang w sieci. EPMD nasłuchuje na domyślnym porcie 4369 i umożliwia rejestrację i odkrywanie węzłów.
Automatic Discovery
Automatyczne odkrywanie
One of the key features of EPMD is its ability to automatically discover Erlang nodes on a network. This feature is particularly useful in distributed Erlang systems where nodes need to communicate with each other.
Jedną z kluczowych cech EPMD jest jego zdolność do automatycznego odkrywania węzłów Erlang w sieci. Ta funkcja jest szczególnie przydatna w rozproszonych systemach Erlang, gdzie węzły muszą komunikować się między sobą.
When a new Erlang node starts, it can register itself with EPMD by sending a registration request to the EPMD server. The EPMD server then assigns a unique port number to the node and adds it to its registry. Other nodes can discover this new node by querying the EPMD server.
Gdy nowy węzeł Erlang zostaje uruchomiony, może zarejestrować się w EPMD, wysyłając żądanie rejestracji do serwera EPMD. Serwer EPMD przypisuje węzłowi unikalny numer portu i dodaje go do swojego rejestru. Inne węzły mogą odkryć ten nowy węzeł, pytając serwer EPMD.
Conclusion
Podsumowanie
EPMD plays a crucial role in managing the distribution of Erlang nodes on a network. Its automatic discovery feature simplifies the process of node registration and allows nodes to easily communicate with each other in distributed Erlang systems.
EPMD odgrywa kluczową rolę w zarządzaniu dystrybucją węzłów Erlang w sieci. Jego funkcja automatycznego odkrywania upraszcza proces rejestracji węzłów i umożliwia łatwą komunikację między nimi w rozproszonych systemach Erlang.
Erlang Cookie RCE
Remote Connection
Jeśli uda ci się ujawnić ciasteczko uwierzytelniające, będziesz mógł wykonać kod na hoście. Zazwyczaj ciasteczko to znajduje się w ~/.erlang.cookie
i jest generowane przez Erlang przy pierwszym uruchomieniu. Jeśli nie jest zmieniane lub ustawiane ręcznie, jest to losowy ciąg [A:Z] o długości 20 znaków.
Więcej informacji na https://insinuator.net/2017/10/erlang-distribution-rce-and-a-cookie-bruteforcer/ Autor udostępnia również program do bruteforce'owania ciasteczka:
Lokalne połączenie
W tym przypadku zamierzamy wykorzystać CouchDB do eskalacji uprawnień lokalnie:
Przykład zaczerpnięty z https://0xdf.gitlab.io/2018/09/15/htb-canape.html#couchdb-execution Możesz użyć maszyny Canape HTB do ćwiczenia, jak wykorzystać tę podatność.
Metasploit
Shodan
port:4369 "na porcie"
Last updated