Ostatnio zauważyłem, że mój serwer domowy jest boleśnie powolny. Wszystkie zasoby zostały pochłonięte przez dwa procesy: crond64
i tsm
. Mimo że wielokrotnie ich zabijałem, wciąż się pojawiały.
Jednocześnie mój dostawca usług internetowych powiadomił mnie o nadużyciu pochodzącym z mojego adresu IP:
==================== Excerpt from log for 178.22.105.xxx====================
Note: Local timezone is +0100 (CET)
Jan 28 20:55:44 shared06 sshd[26722]: Invalid user admin from 178.22.105.xxx
Jan 28 20:55:44 shared06 sshd[26722]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.22.105.xxx
Jan 28 20:55:45 shared06 sshd[26722]: Failed password for invalid user admin from 178.22.105.xxx port 33532 ssh2
Jan 28 20:55:46 shared06 sshd[26722]: Received disconnect from 178.22.105.xxx port 33532:11: Bye Bye [preauth]
Jan 28 20:55:46 shared06 sshd[26722]: Disconnected from 178.22.105.xxx port 33532 [preauth]
Jan 28 21:12:05 shared06 sshd[30920]: Invalid user odm from 178.22.105.xxx
Jan 28 21:12:05 shared06 sshd[30920]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=178.22.105.xxx
Jan 28 21:12:07 shared06 sshd[30920]: Failed password for invalid user odm from 178.22.105.xxx port 45114 ssh2
Jan 28 21:12:07 shared06 sshd[30920]: Received disconnect from 178.22.105.xxx port 45114:11: Bye Bye [preauth]
Jan 28 21:12:07 shared06 sshd[30920]: Disconnected from 178.22.105.xxx port 45114 [preauth]
Byłem z końcówkami o tej stronie, że mogę mieć wirusa. Uruchomiłem Sophos AV, skanując cały dysk twardy i rzeczywiście znalazł wirusa /tmp/.mountfs/.rsync
. Więc usunąłem cały folder i pomyślałem, że to jest to. Ale potem wracało. Następnie sprawdziłem plik cron użytkownika /var/spool/cron/crontabs/kodi
(wirus działał przy użyciu użytkownika mojego serwera mediów kodi), który wyglądał tak:
# DO NOT EDIT THIS FILE - edit the master and reinstall.
# (cron.d installed on Sun Feb 3 21:52:03 2019)
# (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $)
* */12 * * * /home/kodi/.ttp/a/upd>/dev/null 2>&1
@reboot /home/kodi/.ttp/a/upd>/dev/null 2>&1
5 8 * * 0 /home/kodi/.ttp/b/sync>/dev/null 2>&1
@reboot /home/kodi/.ttp/b/sync>/dev/null 2>&1
#5 1 * * * /tmp/.mountfs/.rsync/c/aptitude>/dev/null 2>&1
Wygląda na to, że wirus reaktywuje się co jakiś czas z innego katalogu. Zawartość tego katalogu to:
>>> ls /home/kodi/.ttp/*
/home/kodi/.ttp/cron.d /home/kodi/.ttp/dir2.dir
/home/kodi/.ttp/a:
a bash.pid config.txt crond32 crond64 cronda crondb dir.dir pools.txt run stop upd
/home/kodi/.ttp/b:
a dir.dir rsync run stop sync
/home/kodi/.ttp/c:
aptitude dir.dir go ip lib n p run slow start stop tsm tsm32 tsm64 v watchdog
Usunąłem wszystkie te pliki i wpisy w crontab i mam nadzieję, że dzięki temu problem został rozwiązany. Byłbym jednak zainteresowany tym, co to był wirus, jak go złapałem (może być podłączony do Kodi) i co mogę zrobić, aby temu zapobiec. Na szczęście był uruchamiany tylko przez użytkownika z ograniczonymi prawami, ale irytujący był nadal.
EDYTOWAĆ
Chociaż pozornie usunąłem wszystkie pozostałości tego wirusa (usunąłem również cały folder tmp), wirus wciąż wracał. Uświadomiłem sobie, że istnieje wpis ~/.ssh/authorized_hosts
, którego na pewno nie umieściłem. To wyjaśnia, w jaki sposób wirus może być wielokrotnie przesadzany. Usunąłem wpis, wyłączyłem logowanie dla tego użytkownika, wylogowałem hasło (tylko hasło) i korzystam teraz z niestandardowego portu.
Zauważyłem też wielokrotne próby logowania na moim serwerze losowymi nazwami użytkowników, prawdopodobnie przez jakiegoś bota (dziennik wyglądał zadziwiająco podobnie do tego uruchomionego z mojego adresu IP, wysłanego do mnie przez mojego dostawcę usług internetowych). Myślę, że w ten sposób mój komputer został zainfekowany.
cd ~ && rm -rf .ssh && mkdir .ssh && echo "ssh-rsa AAAAB... ...VKPRK+oRw== mdrfckr">>.ssh/authorized_keys && chmod 700 .ssh && cd .ssh && chmod 600 authorized_keys && cd ~
. Zrobiłem to,cp /etc/skel/.bashrc /home/mycompromiseduser/
aby go usunąć.Odpowiedzi:
Miałem to samo. Usługa zainstalowała rsync i otrzymała trochę plików. Znalazłem
dota.tar.gz
plik w folderze użytkownika.ufw deny out 22
)pkill -KILL -u kodi
(to zabija wszystkie uruchomione procesy użytkownika kodi)deluser kodi
/tmp/.mountfs*
Pamiętaj, że to prawdopodobnie zniszczy kodi. Zamiast usuwania całego domu użytkownika prawdopodobnie możesz tylko usunąć
dota.tar.gz
(jeśli jest) i.ttp
folder (nie zapomnij wyczyścić crontab!)Po ponownym uruchomieniu nie widzę już żadnych połączeń wychodzących (sprawdź za pomocą:
Infekcja nastąpiła przez użytkownika ze słabym hasłem (może konto kodi z domyślnym hasłem?)
źródło
Miałem to samo złośliwe oprogramowanie. Wpis został dokonany za pomocą niezapisanego hasła użytkownika przez ssh (port inny niż domyślny), został wykryty i usunięty po około 24 godzinach.
W moim przypadku, usuwanie crontab użytkownika,
rm -rdf /tmp/.*
,rm -rdf /home/user/.*
,killall -u user
było za mało.źródło
Miałem to dzisiaj. Sprawdziłem system i stwierdziłem, że mój system ma ślady przez około miesiąc i nie zdawałem sobie sprawy, że to było, dopóki mój dostawca usług internetowych mnie nie powiadomił.
Szkodliwe oprogramowanie pochodzi od niepewnego użytkownika ze słabym hasłem. W moim przypadku był to użytkownik timemachine. Dziennik penetracji wyglądał tak.
Jest to górnik XMRIG i exploit, który skanuje inne adresy IP w poszukiwaniu tych samych słabych punktów. Tak więc jedna maszyna może zainfekować kaskadowo dziesiątki innych. Możesz zajrzeć do raportu MS na temat tego cyberataku .
Najskuteczniejszą ochroną przed tego rodzaju atakami jest instalacja
fail2ban
na serwerze, ograniczenie dostępu sshufw
i użycie białej listy ACL dla systemów, które mają dostęp do SSH na twoim serwerze.źródło
W moim przypadku źródłem infekcji był użytkownik, który nie zmienia swojego niebezpiecznego hasła od czasu, gdy utworzyłem jego konto (oczywiście, że mu kazałem). Mój serwer prawdopodobnie znajduje się na niektórych listach: dostaję około 1000 banów tygodniowo z fail2ban (spróbuj 4 razy z niewłaściwym użytkownikiem lub hasłem i zostań zablokowany na miesiąc)
źródło
To jest moje rozwiązanie (nazywane także złośliwym oprogramowaniem wydobywającym crypo):
źródło