Identifica processi dannosi / Suscipico dall'elenco dei processi

2

Ho una lista di 1000 processi e voglio identificare quali di essi sono legittimi e quali no. Ho solo il nome dei processi e voglio categorizzarli. C'è un modo per ottenere informazioni su tali processi a livello di codice ?

Se riesco almeno a identificare quali di questi sono processi comuni, ciò può aiutarmi a creare una lista più corta. Posso quindi cercare altri processi sconosciuti e ottenere le loro informazioni.

Fondamentalmente, ho bisogno di controllare un elenco di processi di Windows su un Mac / Linux e I hanno solo i nomi dei processi . Voglio trovare l'informazione completa dei processi in modo da poter scoprire i processi legittimi. Ci sono attualmente 1000 processi nell'elenco e potrebbe aumentarlo in futuro. Posso farlo manualmente per ora, ma voglio eseguire script per fare il controllo automaticamente.

    
posta rise of a phoenix 28.07.2015 - 06:23
fonte

3 risposte

3

L'elenco dei processi comuni / legittimi dipende dal sistema operativo installato. Inoltre, l'elenco dipenderà dal software che hai installato sul tuo computer.

In Windows, puoi provare
tasklist
In Linux, puoi provare a ps

È possibile creare un elenco di applicazioni attendibili (che è possibile eseguire manualmente o cercare online). Quindi, dopo aver ottenuto l'elenco dei processi in esecuzione a livello di codice, è possibile confrontare l'elenco con il proprio elenco di processi attendibili e visualizzare solo i processi rimanenti.

Se ritieni che alcuni di questi processi siano innocui e legittimi, puoi aggiungere questi processi al tuo elenco di applicazioni attendibili, in modo che non vengano più visualizzati la prossima volta che esegui il tuo programma.

    
risposta data 28.07.2015 - 10:39
fonte
1

Per ottenere informazioni di processo a livello di codice (come richiesto), dipende dalla lingua che si desidera utilizzare, ma anche dalla versione del processore (32 o 64 bit).

Puoi utilizzare il processo secondario di Python

:

import subprocess
cmd = 'WMIC PROCESS get Caption,Commandline,Processid'
proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
for line in proc.stdout:
    print line

Oppure WMI modulo per entrambe le versioni del processore:

import wmi
c = wmi.WMI ()

for process in c.Win32_Process ():
  print process.ProcessId, process.Name

Puoi anche chiamare qualsiasi comando digitato in CMD da Python usando il modulo subprocess che ho menzionato prima.

Come per isolare i processi sospetti, devi prima elencare i criteri su cui basare il tuo giudizio.

Ad esempio, i sistemi operativi Windows 7 e 8 hanno una gerarchia di processi in cui possiamo trovare solitamente tre o quattro processi di livello superiore. Questo rende facile vedere quali processi sono i genitori degli altri. Wininit , ad esempio, è l'antenato di un numero elevato di processi, incluse più istanze del famoso svchost.exe processo. Poiché questo processo è troppo importante per il sistema operativo Windows, i malware lo usano e appaiono nell'elenco di svchost come svch0st.exe ( 0 invece di o ), svhost.exe (senza c ) e così sopra.

Quindi una volta che hai questo criterio in testa puoi ordinarli in un elenco Python e visualizzarli separatamente per aiutarti a distinguere i processi sospetti.

    
risposta data 28.07.2015 - 11:20
fonte
0

ProcessExplorer di SysInternals può aiutarti con questo se hai accesso alla macchina.

È anche possibile inviare dati di processo con hash a VirusTotal per darti un'idea se si tratta di un file / processo legittimo o meno.

Inoltre, codifica i dati dei codici che trovo molto utili.

Epuoideterminarerapidamentequalifilesonofirmati.

PerunbrevetutorialsucomeottenereilmassimodaProcessExplorer,consulta: link (immagini da howtogeek.com)

    
risposta data 28.07.2015 - 18:01
fonte

Leggi altre domande sui tag