내 컴퓨터에서 이러한 명령을 실행하는 것은 무엇이며 이는 정상적인 동작입니까?

내 컴퓨터에서 이러한 명령을 실행하는 것은 무엇이며 이는 정상적인 동작입니까?

나는 htop을 살펴보는 데 시간을 보냈고 루트 사용자가 짧은 시간 동안 일련의 이상한 프로세스/명령을 실행한 것을 발견했으며 이것이 정상적인 동작인지(또는 일종의 맬웨어인지) 궁금했습니다. 다음은 htop에 나타나는 명령의 전체 목록이 아닙니다. 이 Debian 서버에서는 Tomcat과 MySQL만 실행되고 있습니다.

ifconfig eth 0
ps -ef
bash
uptime
top
netstat -antop
pwd
echo "find"
gnome-terminal
whoami
sleep 1
id
su
cd /etc

여기에 이미지 설명을 입력하세요.

지금은 그게 악한 것 같지 않나요?
이러한 프로세스를 종료하면 항상 임의의 문자열을 포함하는 새로운 프로세스가 즉시 생성됩니다. 여기에 이미지 설명을 입력하세요.

답변1

이는 악성 코드처럼 보이지만 그 자체를 잘 숨기지 않습니다. 조심스럽게 작성된 악성 코드는 커널을 감염시키고 작업 목록에서 완전히 숨기도록 준비합니다. 이것은 어설프게 무해한 것처럼 위장 uptime하지만, 제대로 수행되지 않았으며, uptime그렇게 오래 실행되지 않기 때문에 어쨌든 의심스럽습니다.

악성코드임을 확인하셨다면 읽어주세요감염된 서버를 처리하는 방법은 무엇입니까?

시스템을 다시 설치해야 합니다. 멀웨어가 투박해 보이지만 제거할 수 있을지 확신할 수 없습니다. 일부는 숨겨져 있는 것이 더 나을 수도 있습니다.

재설치하기 전에 악성 코드가 어떻게 거기에 도달했는지 알아내십시오. 잘못된 소스에서 프로그램을 설치했습니까? 설치한 프로그램에 알려진 보안 취약점이 있습니까? 로그, 파일 날짜, 명령 기록 등을 확인하세요.

다시 설치할 때 깨끗한 소스에서 모든 소프트웨어를 구하십시오. 공급자의 HTTPS 웹사이트에 있는 체크섬과 비교하여 설치 미디어의 체크섬을 확인합니다. 가능할 때마다 배포판의 소프트웨어를 고수하고 체크섬 확인을 수행하십시오(Debian에서는 기본적으로). 신뢰할 수 없는 소스의 바이너리에 분산 바이너리 권한을 부여합니다. 인터넷 연결 서비스를 활성화하기 전에 모든 보안 업데이트를 적용했는지 확인하십시오. 비 distro 소프트웨어를 설치해야 하는 경우 신뢰할 수 있는 소스에서 해당 소프트웨어를 검색하고, 알려진 보안 취약점이 없는 최신 버전을 다운로드하고, 가능한 한 적은 권한을 부여하십시오. 강력한 비밀번호를 사용하세요(필요한 경우 보안 구역에서 작업하는 경우 모니터 옆 스티커 메모에 비밀번호를 적어두세요).

답변2

pstree또는 를 사용하여 ps auxf어떤 프로세스가 실행되고 있는지 확인할 수도 있습니다 . (아마 이 출력이 더 읽기 쉬울 것입니다.)

맬웨어가 의심되는 경우 네트워크에서 통신을 시도하는 프로세스도 확인해야 합니다.

또한 이를 사용하여 netstat -tupln예상치 못한 프로세스가 원격 연결을 수신하고 있는지 확인할 수도 있습니다. netstat -tupn현재 통신 내용 도 표시됩니다.

또한 시작 스크립트를 살펴 /etc/init.d/보고 /etc/rc.*/특이한 항목이 있는지 확인하세요. 댓글에서 이미 제안한 crontab과 동일합니다.

답변3

/boot/nnfwcjkwna 나에게는 좋지 않습니다.

프로세스의 pid와 유형을 확인하십시오.

ls -l /proc/pid 번호/EXE

예:

여기에 이미지 설명을 입력하세요.

이렇게 하면 실행 파일의 전체 경로를 볼 수 있습니다. 거기로 이동하여 ls -al을 사용하여 내용을 확인하세요. 바이너리 파일을 보려면 strings file more를 사용한 다음 공백을 사용하여 찾아보세요.

새로 열린 포트를 보고 Nestat 및/또는 lsof를 사용하여 실행 파일을 식별합니다.

일부 안전 조언은 다음과 같습니다.

  1. 단일 사용자 모드 실행 수준을 입력합니다.
  2. /etc/passwd 및 /etc/shadow를 확인하여 새 사용자 및 cron 구성 파일이 추가되지 않았는지 확인하세요.
  3. 루트 비밀번호를 변경하세요.
  4. 직접 루트 로그인 및 "su" 명령은 금지됩니다.
  5. 새 사용자를 추가하고 sudo를 실행할 수 있는 유일한 사용자로 sudo로 설정합니다.
  6. chmod 000 /usr/bin/sudo 그런 다음 setfacl rx 규칙을 사용하여 해당 사용자만 sudo를 사용하도록 허용합니다.
  7. chattr +iau /etc/passwd /etc/shadow
  8. 초기화 파일을 확인하세요. 해당 파일도 거기에 설치되어 재부팅 시 다시 실행될 수 있습니다.
  9. 일반적인 런레벨로 돌아가 네트워킹을 시작합니다.
  10. nmap -v -sS -O 127.0.0.1 -p "1-65500"

이들 중 적어도 일부가 귀하에게 도움이 되기를 바랍니다.

편집: 아래에 설명된 대로 이는 영구적인 해결 방법은 아니지만 문제를 조사하는 데 도움이 되는 방법입니다. 무슨 일이 일어났는지 모르고 그냥 시스템을 다시 설치하면 별 소용이 없습니다.

답변4

~에 따르면이 솔루션/lib/libudev.so, 귀하의 바이러스는 또는 에 있습니다 /lib/libudev4.so. 다음을 수행해야 합니다.

chattr -i /lib/libudev.so 

그런 다음 링크에 설명된 대로 다른 모든 항목을 삭제, 재부팅 및 삭제합니다.

당신은 설치할 수 있습니다조개 바이러스.

관련 정보