Analisi del Malware

Reading time: 6 minutes

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks

CheatSheets di Forense

https://www.jaiminton.com/cheatsheet/DFIR/#

Servizi Online

Strumenti Antivirus e di Rilevamento Offline

Yara

Installa

bash
sudo apt-get install -y yara

Preparare le regole

Usa questo script per scaricare e unire tutte le regole yara per malware da github: https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9
Crea la directory rules ed eseguila. Questo creerà un file chiamato malware_rules.yar che contiene tutte le regole yara per malware.

bash
wget https://gist.githubusercontent.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9/raw/4ec711d37f1b428b63bed1f786b26a0654aa2f31/malware_yara_rules.py
mkdir rules
python malware_yara_rules.py

Scansione

bash
yara -w malware_rules.yar image  #Scan 1 file
yara -w malware_rules.yar folder #Scan the whole folder

YaraGen: Controlla il malware e crea regole

Puoi utilizzare lo strumento YaraGen per generare regole yara da un binario. Dai un'occhiata a questi tutorial: Parte 1, Parte 2, Parte 3

bash
python3 yarGen.py --update
python3.exe yarGen.py --excludegood -m  ../../mals/

ClamAV

Installa

sudo apt-get install -y clamav

Scansione

bash
sudo freshclam      #Update rules
clamscan filepath   #Scan 1 file
clamscan folderpath #Scan the whole folder

Capa

Capa rileva potenziali capacità malevole in eseguibili: PE, ELF, .NET. Quindi troverà cose come tattiche Att&ck, o capacità sospette come:

  • controlla l'errore OutputDebugString
  • esegui come servizio
  • crea processo

Ottienilo nel Github repo.

IOCs

IOC significa Indicatore di Compromissione. Un IOC è un insieme di condizioni che identificano alcuni software potenzialmente indesiderati o malware confermati. I Blue Teams utilizzano questo tipo di definizione per cercare questo tipo di file malevoli nei loro sistemi e reti.
Condividere queste definizioni è molto utile poiché quando il malware viene identificato in un computer e viene creato un IOC per quel malware, altri Blue Teams possono usarlo per identificare il malware più rapidamente.

Uno strumento per creare o modificare IOCs è IOC Editor.
Puoi utilizzare strumenti come Redline per cercare IOCs definiti in un dispositivo.

Loki

Loki è uno scanner per Indicatori di Compromissione Semplici.
La rilevazione si basa su quattro metodi di rilevazione:

1. File Name IOC
Regex match on full file path/name

2. Yara Rule Check
Yara signature matches on file data and process memory

3. Hash Check
Compares known malicious hashes (MD5, SHA1, SHA256) with scanned files

4. C2 Back Connect Check
Compares process connection endpoints with C2 IOCs (new since version v.10)

Linux Malware Detect

Linux Malware Detect (LMD) è uno scanner di malware per Linux rilasciato sotto la licenza GNU GPLv2, progettato attorno alle minacce affrontate negli ambienti di hosting condivisi. Utilizza dati sulle minacce provenienti dai sistemi di rilevamento delle intrusioni ai margini della rete per estrarre malware che viene attivamente utilizzato negli attacchi e genera firme per la rilevazione. Inoltre, i dati sulle minacce sono anche derivati dalle segnalazioni degli utenti con la funzione di checkout LMD e dalle risorse della comunità malware.

rkhunter

Strumenti come rkhunter possono essere utilizzati per controllare il filesystem per possibili rootkit e malware.

bash
sudo ./rkhunter --check -r / -l /tmp/rkhunter.log [--report-warnings-only] [--skip-keypress]

FLOSS

FLOSS è uno strumento che cercherà di trovare stringhe offuscate all'interno di eseguibili utilizzando diverse tecniche.

PEpper

PEpper controlla alcune informazioni di base all'interno dell'eseguibile (dati binari, entropia, URL e IP, alcune regole yara).

PEstudio

PEstudio è uno strumento che consente di ottenere informazioni sugli eseguibili di Windows come importazioni, esportazioni, intestazioni, ma controllerà anche virus total e troverà potenziali tecniche Att&ck.

Detect It Easy(DiE)

DiE è uno strumento per rilevare se un file è crittografato e anche per trovare packers.

NeoPI

NeoPI è uno script Python che utilizza una varietà di metodi statistici per rilevare contenuti offuscati e crittografati all'interno di file di testo/script. Lo scopo previsto di NeoPI è aiutare nella rilevazione di codice web shell nascosto.

php-malware-finder

PHP-malware-finder fa del suo meglio per rilevare codice offuscato/sospetto così come file che utilizzano funzioni PHP spesso usate in malware/webshell.

Apple Binary Signatures

Quando controlli alcuni campioni di malware dovresti sempre controllare la firma del binario poiché il sviluppatore che l'ha firmato potrebbe essere già relato a malware.

bash
#Get signer
codesign -vv -d /bin/ls 2>&1 | grep -E "Authority|TeamIdentifier"

#Check if the app’s contents have been modified
codesign --verify --verbose /Applications/Safari.app

#Check if the signature is valid
spctl --assess --verbose /Applications/Safari.app

Tecniche di Rilevamento

File Stacking

Se sai che una cartella contenente i file di un server web è stata aggiornata l'ultima volta in una certa data. Controlla la data in cui tutti i file nel server web sono stati creati e modificati e se qualche data è sospetta, controlla quel file.

Baselines

Se i file di una cartella non avrebbero dovuto essere modificati, puoi calcolare l'hash dei file originali della cartella e confrontarli con quelli correnti. Qualsiasi modifica sarà sospetta.

Analisi Statistica

Quando le informazioni sono salvate nei log puoi controllare statistiche come quante volte ogni file di un server web è stato accesso poiché una web shell potrebbe essere una delle più.

tip

Impara e pratica l'Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica l'Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks