2011-07-12 18 views
12

Podczas korzystania z programów Erlang, takich jak ejabberd, rozpoczyna się Erlang port mapper daemonepmd i otwiera port 4369.Jaki jest najgorszy przypadek, gdy port epmd jest otwarty?

Ten port jest dostępny przez Internet (tylko najnowsze wersje ejabberd pozwalają domyślnie skonfigurować plik epmd do lokalnego hosta).

Dokumentacja ejabberd zaleca ustawienie blocking this port via packet filter rules i comment in the Debian bug tracker nazywa to domyślne zachowanie "koszmarem z punktu widzenia bezpieczeństwa".

Jaki jest najgorszy scenariusz, kiedy ejabberd działa, a port 4369 nie jest zablokowany?

Powiedz - zapora jest źle skonfigurowana przez przypadek lub coś w tym stylu.

Jaka byłaby najgorsza rzecz, jaką płynny atakował Erlang nad tym portem?

Pod jaki użytkownik/uprawnieniami działa epmd w dystrybucji linuksowej (na przykład Debian/Ubuntu)?

Odpowiedz

1

Możesz znaleźć adresy źródłowe/docelowe i pary numerów portów aktywnych połączeń między BEAM. Może to prowadzić do ataków DoS na połączenia między belkami.

+0

Przypuszczam, że BEAM jest czymś w rodzaju procesu w Erlangu? – maxschlepzig

+0

BEAM to maszyna wirtualna. BEAM inicjuje i odbiera połączenia TCP dla połączeń międzymiastowych. Więc to nie jest proces Erlanga, ale faktycznie jest to program Linux lub UNIX działający jako proces Linux of UNIX. – jj1bdx

5

Świetne pytanie.

Oprócz portu 4369 należy również wziąć pod uwagę porty, które zasugeruje do rzeczywistej komunikacji między węzłami (domyślnie 5001-6024). Podobnie jak wszystkie usługi TcP, będzie narażona na działanie złoczyńców, ponieważ oprogramowanie nigdy nie jest wolne od błędów, a więc hakowalne. Pomyśl o SSH i jego przepełnieniu bufora. Ponieważ "epmd" nie zapewnia wielu usług, komunikacja międzywęzłowa jest uwierzytelniana za pomocą bezpiecznego kodu cookie, a we względnym starszym wieku w Erlang można się spodziewać wielu błędów w tym obszarze. Ale dobry rodowód sam w sobie nie liczy się w strefie bezpieczeństwa. ;-)

Jak napisałeś, potrzebujesz odpowiednio skonfigurowanej zapory, aby upewnić się, że serwer nie jest tak narażony. Podczas procesu konserwacji należy upewnić się, że prawidłowe działanie zapory jest dokładnie sprawdzane.

Och, i uruchomię mój węzeł Erlang jako użytkownik inny niż root z ograniczonymi uprawnieniami do plików.

Powiązane problemy