Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
Linuksowy backdoor wstrzyknięty do SSH
Symantec opublikował analizę interesującego linuksowego backdoora, który był w stanie skutecznie kamuflować swą obecność oraz komunikację nawet w systemach o restrykcyjnej kontroli bezpieczeństwa.
Linux.Fokirtor, bo tak właśnie został ochrzczony ten zaawansowany kod tylnej furtki, był w stanie wstrzyknąć własne funkcje bezpośrednio w proces działającego już uprzednio w systemie serwera SSH.
Cała komunikacja, by uniknąć wzbudzających podejrzenia transmisji, również była wpleciona pomiędzy typowy ruch SSH. Fokirtor śledził po prostu cały przekaz tego typu, a komendy przeznaczone dla siebie rozpoznawał po zapowiadającej je sekwencji znaków: „:!;.”.
Po początkowym znaczniku następowały już właściwe polecenia zaszyfrowane za pomocą algorytmu Blowfish oraz zakodowane z wykorzystaniem Base64.
Wykrycie tego nietypowego backdoora jest możliwe np. na podstawie identyfikacji ruchu sieciowego zawierającego powyższą charakterystyczną sekwencję znaków, możliwe jest też wykrycie kilku typowych ciągów znaków w zrzucie procesu SSHD.
— WS
Wiecie co robi kod który jest podany pod linkiem?
Chodzi mi o ” :!;.UKJP9NP2PAO4 ”
:]
Możecie podać konkretne metody wykrywania tego backdoora?
Np. za pomocą nasłuchiwania ruchu narzędziem tcpdump.
Czy coś takiego zdałoby egzamin?
tcpdump -l -s0 -w – tcp dst port 22 | strings | grep -i ’:!;.’
A jakie są te „typowe” ciągi znaków w zrzucie pamięci procesu SSHD?
W sumie co do tych „typowych” ciągów znaków, to odpowiedź jest w raporcie Symanteca, ale nie podali przykładów jak całość wykonać.
Znalazłem fajny skrypt do Icingi wykrywający tego backdoora w pamięci SSHD ;)
https://blog.kumina.nl/2013/11/icinga-check-for-linux-fokirtor/
soal,
Tak, wygląda na to, że to się nada :).
Another identification method is to dump the SSHD process and search for the following strings within the dump (where [VALUE] can be various values):
key=[VALUE]
dhost=[VALUE]
hbt=3600
sp=[VALUE]
sk=[VALUE]
dip=[VALUE]
http://www.symantec.com/connect/blogs/linux-back-door-uses-covert-communication-protocol