이러한 프로세스 중 일부가 악성일 가능성이 있습니까?

이러한 프로세스 중 일부가 악성일 가능성이 있습니까?

나와 내 연인은 종종 작년의 Gmail 보안 위반과 관련된 외국 정부가 우리 컴퓨터에 액세스하려고 시도할 수도 있다는 편집증에 빠졌습니다.

루트 터미널을 열지 않았는데도 오늘밤 루트로 실행되는 이상한 프로세스가 많이 있었습니다. 누군가 이것을 보고 의심스러운지, 그리고 그 이유와 이유가 무엇인지 예 또는 아니오로 말해 줄 수 있습니까?

PID TTY          TIME CMD
    1 ?        00:00:01 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:01 ksoftirqd/0
    6 ?        00:00:00 migration/0
    7 ?        00:00:00 watchdog/0
   13 ?        00:00:00 cpuset
   14 ?        00:00:00 khelper
   15 ?        00:00:00 netns
   16 ?        00:00:00 sync_supers
   17 ?        00:00:00 bdi-default
   18 ?        00:00:00 kintegrityd
   19 ?        00:00:00 kblockd
   20 ?        00:00:00 kacpid
   21 ?        00:00:00 kacpi_notify
   22 ?        00:00:00 kacpi_hotplug
   23 ?        00:00:00 kseriod
   25 ?        00:00:00 kondemand
   26 ?        00:00:00 khungtaskd
   27 ?        00:00:03 kswapd0
   28 ?        00:00:00 ksmd
   29 ?        00:00:00 fsnotify_mark
   30 ?        00:00:00 aio
   31 ?        00:00:00 crypto
  163 ?        00:00:00 khubd
  164 ?        00:00:00 ata_sff
  165 ?        00:00:00 scsi_eh_0
  166 ?        00:00:00 scsi_eh_1
  199 ?        00:00:00 usbhid_resumer
  222 ?        00:00:00 kjournald
  271 ?        00:00:00 udevd
  442 ?        00:00:00 kpsmoused
  446 ?        00:00:36 net.agent
  450 ?        00:00:00 cfg80211
  471 ?        00:00:00 hd-audio0
  532 ?        00:00:36 net.agent
  751 ?        00:00:02 kjournald
  755 ?        00:00:00 kjournald
  756 ?        00:00:00 kjournald
  757 ?        00:00:01 kjournald
  801 ?        00:00:00 flush-8:0
 1035 ?        00:00:00 rsyslogd
 1089 ?        00:00:00 modem-manager
 1094 ?        00:00:01 polkitd
 1114 ?        00:00:02 wpa_supplicant
 1126 ?        00:00:00 gdm3
 1137 ?        00:00:00 gdm-simple-slav
 1141 tty7     00:20:11 Xorg
 1146 ?        00:00:07 acpid
 1169 ?        00:00:00 atd
 1195 ?        00:00:00 bluetoothd
 1209 ?        00:00:00 l2cap
 1212 ?        00:00:00 krfcommd
 1273 ?        00:00:00 cron
 1303 ?        00:00:00 cupsd
 1597 ?        00:00:07 kerneloops
 1627 ?        00:00:00 kconservative
 1631 ?        00:00:00 console-kit-dae
 1771 ?        00:00:00 sshd
 1800 tty1     00:00:00 getty
 1801 tty2     00:00:00 getty
 1802 tty3     00:00:00 getty
 1803 tty4     00:00:00 getty
 1804 tty5     00:00:00 getty
 1805 tty6     00:00:00 getty
 1852 ?        00:00:00 gdm-session-wor
 1857 ?        00:00:15 upowerd
 2017 ?        00:00:00 kauditd
 2172 ?        00:00:02 udisks-daemon
 2176 ?        00:00:00 udisks-daemon
 3038 ?        00:00:00 udevd
 3039 ?        00:00:00 udevd
 3251 ?        00:00:00 NetworkManager
 3440 ?        00:00:00 dhclient
 5322 ?        00:00:00 kworker/u:2
 6717 ?        00:00:00 sleep
 6720 ?        00:00:00 sleep
13386 ?        00:00:00 kworker/1:2
21237 ?        00:00:02 kworker/0:2
24297 ?        00:00:11 kworker/1:1
27326 ?        00:00:02 kworker/0:1
29045 ?        00:00:01 kworker/u:0
30132 ?        00:00:00 migration/1
30134 ?        00:00:00 ksoftirqd/1
30135 ?        00:00:00 watchdog/1
30238 ?        00:00:48 irq/19-0000:01:
31245 ?        00:00:00 kworker/u:1

답변1

목록이 너무 길어서 우리가 한 줄씩 검토하는 것을 원하지 않으시나요? 많은 프로세스가 루트로 실행되는 것은 일반적입니다. Unix 시스템은 일반적으로 모든 작업에 대해 하나의 프로세스를 가지므로 많은 시스템 서비스에는 자체 프로세스가 있습니다. 실제로 그 중 일부(예: all /0또는 /(CPU를 식별하는 숫자)와 대부분은 로 시작하는 k)는 커널 스레드입니다.

누군가가 귀하의 컴퓨터를 제어하는 ​​것이 걱정된다면 ps이는 유용한 도구가 아닙니다 . 미숙한 루트킷에는 프로세스 목록에서 악성 프로세스를 숨기는 코드가 포함되어 있습니다. 악성 코드가 루트로 실행되지 않아 커널 보고서를 변경할 수 없더라도 무해한 것으로 위장합니다 sh.

, 여기서는 "괜찮다"라는 단어가 적절하지 않을 수도 있습니다.

답변2

이름을 기반으로 프로세스가 악성인지 여부를 평가하는 아이디어는 적어도 구식입니다... 음, 오랫동안;)

거짓 플래그 작전, 누구?

  1. 감염자는 바이너리에 악성 코드를 추가/삽입할 가능성이 높습니다.
  2. 악성 바이너리는 일반적으로 무해하다고 생각하는 것과 동일한 이름을 가질 가능성이 높으며 목록은 다음을 제공합니다.전혀 모른다파일 시스템 또는 해당 파일 비트의 바이너리 위치에 대한 정보입니다. 예를 들어, 최소한 다음 프로세스 중 하나에 해당하는 루트 소유의 setuid 바이너리가 있는지 확인해야 합니다.
  3. 루트킷은 일반적으로 목록에 표시되지 않도록 숨기려고 합니다.

이 목록은 완전한 것이 아닙니다. 게다가 슈퍼유저 권한으로 악성 코드를 실행하는 시스템에는 (기술적) 문제가 없습니다.거짓말하다당신을 위한.

최소한 오프라인 분석이 필요합니다. 패키지 관리자를 사용하는 경우 예상 위치의 바이너리를 (서명된) 패키지의 해시와 비교할 수 있습니다. 전반적으로, 수많은 스크립트 외에도 검사할 수 있는 실제 바이너리의 작은 세트만 남아 있어야 합니다. 그러나 스크립트의 경우에도 패키지의 스크립트에는 바이너리를 확인할 수 있는 해시가 함께 제공됩니다.

답변3

내가 야생에서 만난 유일한 루트킷(오래 전 Solaris 8에서)은 "lpsched" 프로세스로 비밀번호 스니퍼를 실행했습니다. 문제는 그 중 두 개(루트킷의 버그)를 실행하고 "man lpsched"가 lpsched가 없는 디렉토리에서 실행한다는 것입니다. 또한 "ps"는 ​​트로이 목마에 의해 제어되어 추가적인 이상한 lpsched 프로세스를 표시하지 않지만 top은 이를 표시합니다.

정말 걱정된다면 /proc에 있는 모든 PID를 살펴보세요. 실행 파일이 실제로 어디에 있는지 확인하려면 /proc/$PID/exe 링크를 살펴보세요. 실행 파일의 위치를 ​​다시 확인하세요.~해야 한다살다. 이 방법으로 찾은 모든 디렉토리에 대해 "ls"를 시도하고 "ls"가 해당 디렉토리를 모두 표시하는지 확인하십시오. "ls"가 디렉토리를 표시하지 않는다는 것은 뭔가 잘못되었다는 분명한 힌트입니다.

특정 프로세스가 의심스러운 경우 chkrootkit(http://www.chkrootkit.org/) 및 rootkit Hunter(http://www.chkrootkit.org/)를 다운로드하여 뭔가 발견했는지 확인하십시오. 루트킷 사냥꾼 중에는 결코 포함되지 않는 루트킷이 세상에 떠돌고 있다는 것을 깨달아야 합니다.

관련 정보