tcpd robi DoS identd

Jakub Bogusz qboosh w prioris.mini.pw.edu.pl
Śro, 6 Gru 2000, 02:02:00 CET


Wczoraj taki numer zaobserwowałem... przeszukałem swoje archiwum
pld-list i znalazłem 2 podobne spostrzeżenia, jednak bez wyjaśnienia
zjawiska.

Problem pojawia się, kiedy w (rl)inetd.conf jest wpisane wywołanie
identd przez tcpd (z pakietu tcp_wrappers, nie próbowałem z tcpd).
Nie zależy to od rodzaju identd (pident, oident) - ten nawet nie musi
być uruchamiany (może być regułka deny w hosts.*).

tcpd z tcp_wrappers może sprawdzać przez ident, do kogo należy
przychodzące połączenie - no i jeżeli połączenie przychodzi
z localhost, to łączy się z lokalnym identd - za pośrednictwem tcpd,
który sprawdza, do kogo należy... no i się zapętla.

Efekt: w logach coś takiego:
inetd[956]: auth/tcp server failing (looping or being flooded), service
terminated for 10 min

Komunikat nawet niekoniecznie poprawny - inetd nie musiał być
uruchomiony. inetd wyłącza na 10 minut, rlinetd na kilkadziesiąt sekund
- po tym zabawa zaczyna się od nowa...

Workaround - chyba tylko wpisanie ident w inetd.conf bez pośrednictwa tcpd

Opcja używania ident jest w tcp_wrappers konfigurowalna przed
kompilacją. Chyba nie ma możliwości wyłączenia tego potem dla niektórych
usług z niektórych hostów (np. dla połączenia na port 113 z localhosta).


-- 
Jakub Bogusz
http://prioris.mini.pw.edu.pl/~qboosh/



Więcej informacji o liście dyskusyjnej pld-devel-pl