우분투의 crond64 / tsm 바이러스


14

최근에 홈 서버가 느리게 느려지는 것을 알았습니다. 모든 자원이 개 프로세스에 의해 먹게되었다 : crond64tsm. 내가 그들을 반복적으로 죽 였지만, 그들은 계속해서 계속 나타났습니다.

동시에 ISP가 내 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]

나는으로의 튕겨 나갔습니다 나는 바이러스가있을 수 있음을 웹 사이트. Sophos AV를 실행하여 전체 하드 드라이브를 검사하고 실제로에서 일부 바이러스를 발견했습니다 /tmp/.mountfs/.rsync. 그래서 전체 폴더를 삭제하고 이것이 있다고 생각했습니다. 그러나 나중에 계속 돌아 왔습니다. 그런 다음 사용자 cron 파일을 검사했습니다 /var/spool/cron/crontabs/kodi(바이러스는 미디어 서버 kodi의 사용자를 사용하여 실행 중임).

# 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

바이러스가 다른 디렉토리에서 가끔씩 자신을 재 활성화하는 것처럼 보입니다. 해당 디렉토리의 내용은 다음과 같습니다.

>>> 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

나는이 모든 파일과 crontab의 항목을 삭제하고 이것으로 희망하면 문제가 해결됩니다. 그러나 나는 이것이 어떤 바이러스인지, 어떻게 감염되었는지 (Kodi에 연결되었을 수 있는지), 바이러스를 예방하기 위해 무엇을 할 수 있는지에 관심이 있습니다. 운 좋게도 제한된 권한을 가진 사용자 만 실행했지만 여전히 처리가 성가시다.


편집하다

이 바이러스의 모든 유골을 제거했지만 (전체 tmp 폴더도 제거 했음에도 불구하고) 바이러스가 계속 재발했습니다. 에 항목이 있다는 것을 깨달았 ~/.ssh/authorized_hosts습니다. 이것은 바이러스가 반복적으로 이식 될 수있는 방법을 설명합니다. 항목을 제거하고 해당 사용자에 대한 로그인을 비활성화하고 암호 로그인을 비활성화하고 (비밀번호 만) 비표준 포트를 사용합니다.

또한 임의의 봇에 의해 임의의 사용자 이름으로 서버에서 로그인 시도가 반복되는 것을 발견했습니다. 내 컴퓨터가 처음에 어떻게 감염되었는지 생각합니다.


4
이미 한 번 해킹 당했다면 디스크에 다른 곳이 있거나 감염되었을 가능성이 있습니다. 시스템을 날려 버리고 다시 빌드해야합니다. 바이러스는 하나의 응용 프로그램에만 영향을 미치지 않으며 일반적으로 디스크에 퍼집니다.
토마스 워드

나는 동의한다! 누군가 시스템에
들어간

물론 이것은 저장 솔루션이 될 것입니다. 하지만 방금이 시스템을 다시 설치하고 발생한 상황을 이해하지 않고 다시 설치하고 싶지 않았습니다. 파일을 복사함으로써, 이것은 다시 시작되었을 수 있었고 나는 단지 내 시간을 낭비했을 것입니다.
erik

아마도 시스템이 손상되어 바이러스가 계속 재감염되는 방식 일 것입니다. 나는 시스템을 핵 폐기하고 새로운 것부터 시작한다.
토마스 워드

1
또한 사용자의 .bashrc 파일에서 감염을 발견했습니다 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 ~. 방금 cp /etc/skel/.bashrc /home/mycompromiseduser/제거했습니다.
letsjump

답변:


6

나는 똑 같았다. 서비스가 rsync를 설치하고 파일을 얻었습니다. dota.tar.gz사용자 폴더에서 파일을 찾았습니다 .

  1. 방화벽에서 나가는 포트 (22)를 부정 (예를 들어 ufw deny out 22)
  2. pkill -KILL -u kodi (이것은 사용자 kodi의 모든 실행중인 프로세스를 종료시킵니다)
  3. deluser kodi
  4. userhome을 제거하십시오
  5. rsync를 제거하십시오 (이것을 사용하지 않았습니다)
  6. 없애다 /tmp/.mountfs*

이것은 아마도 kodi의 것들을 망칠 것입니다. 전체 userhome을 제거하는 대신 아마도 dota.tar.gz(있는 경우) .ttp폴더를 제거 할 수 있습니다 (crontab을 청소하는 것을 잊지 마십시오!)

재부팅 후 더 이상 나가는 연결이 표시되지 않습니다 (확인하십시오 :

netstat -peanut | grep 22

암호가 약한 사용자를 통해 감염이 발생했습니다 (기본 암호가있는 kodi 계정일까요?).


1

나는 같은 멀웨어를 가지고있었습니다. ssh (기본 포트가 아닌 포트)를 통해 사용자 암호를 저장하지 않고 입력 한 결과 약 24 시간 후에 검색되어 제거되었습니다.

내 경우에는, 사용자의 crontab을 삭제, rm -rdf /tmp/.*, rm -rdf /home/user/.*, killall -u user충분했다.


1

오늘이 일을했다. 나는 시스템을 조사한 결과 약 한 달 동안 시스템에 흔적이 있다는 것을 알았으며 ISP가 알려줄 때까지이 일이 있다는 것을 알지 못했습니다.

악성 코드는 안전하지 않은 사용자를 통해 암호가 약합니다. 제 경우에는 타임머신 사용자였습니다. 침투 기록은 다음과 같습니다.

98341:Dec 23 23:45:36 fileserver sshd[23179]: Accepted password for timemachine from 46.101.149.19 port 45573 ssh2

이것은 XMRIG 광부 이며 다른 IP에서 동일한 취약점을 검색하는 익스플로잇입니다. 따라서 한 시스템은 수십 개의 다른 시스템을 캐스케이드 감염시킬 수 있습니다. 이 사이버 공격에 대한 MS 보고서를 살펴볼 수 있습니다 .

이러한 종류의 공격으로부터 가장 효과적인 보호 방법은 fail2ban서버에 설치 하고 속도 제한 ssh를 ufw사용하여 서버의 SSH에 액세스 할 수있는 시스템에 화이트리스트 ACL을 사용하는 것입니다.


0

필자의 경우 감염의 원인은 사용자가 자신의 계정을 만들 때와는 다른 안전하지 않은 암호를 변경하지 않았기 때문입니다 (물론 그에게 지시했습니다). 내 서버는 아마도 일부 목록에있을 것입니다 : fail2ban에서 일주일에 약 1000 개의 금지가 발생합니다 (잘못된 사용자 또는 암호로 4 번 시도하고 한 달 동안 차단됩니다)


0

이것은 내 솔루션입니다 (또한 crypo 마이닝 맬웨어라고도 함).

  1. crontab 작업을 pkill
  2. 이 crontab 작업 설명이 다음을 가리키는 것을 정리하십시오. /home/xxx/.ttp/a/upd>/dev/null 2> & 1
  3. /tmp/.xxx/.rsync/c/aptitude>/dev/null 2> & 1 제거
  4. 가장 중요한 (나에게 먼 길을가는 길), 그렇지 않으면 계속 돌아옵니다 : crontab -e (이 사용자에게)를 실행하십시오.
  5. 포트 번호를 변경하십시오.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.