Analyse de Malware
Reading time: 7 minutes
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépôts github.
Fiches de Triche en Criminalistique
https://www.jaiminton.com/cheatsheet/DFIR/#
Services en Ligne
Outils Antivirus et de Détection Hors Ligne
Yara
Installer
sudo apt-get install -y yara
Préparer les règles
Utilisez ce script pour télécharger et fusionner toutes les règles yara de malware depuis github : https://gist.github.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9
Créez le répertoire rules et exécutez-le. Cela créera un fichier appelé malware_rules.yar qui contient toutes les règles yara pour les malwares.
wget https://gist.githubusercontent.com/andreafortuna/29c6ea48adf3d45a979a78763cdc7ce9/raw/4ec711d37f1b428b63bed1f786b26a0654aa2f31/malware_yara_rules.py
mkdir rules
python malware_yara_rules.py
Scanner
yara -w malware_rules.yar image #Scan 1 file
yara -w malware_rules.yar folder #Scan the whole folder
YaraGen : Vérifiez la présence de malware et créez des règles
Vous pouvez utiliser l'outil YaraGen pour générer des règles yara à partir d'un binaire. Consultez ces tutoriels : Partie 1, Partie 2, Partie 3
python3 yarGen.py --update
python3.exe yarGen.py --excludegood -m ../../mals/
ClamAV
Installer
sudo apt-get install -y clamav
Analyse
sudo freshclam #Update rules
clamscan filepath #Scan 1 file
clamscan folderpath #Scan the whole folder
Capa
Capa détecte des capabilités potentiellement malveillantes dans les exécutables : PE, ELF, .NET. Il trouvera donc des éléments tels que les tactiques Att&ck, ou des capacités suspectes telles que :
- vérifier l'erreur OutputDebugString
- s'exécuter en tant que service
- créer un processus
Obtenez-le dans le Github repo.
IOCs
IOC signifie Indicateur de Compromission. Un IOC est un ensemble de conditions qui identifient un logiciel potentiellement indésirable ou un malware confirmé. Les Blue Teams utilisent ce type de définition pour rechercher ce type de fichiers malveillants dans leurs systèmes et réseaux.
Partager ces définitions est très utile car lorsque le malware est identifié sur un ordinateur et qu'un IOC pour ce malware est créé, d'autres Blue Teams peuvent l'utiliser pour identifier le malware plus rapidement.
Un outil pour créer ou modifier des IOCs est IOC Editor.
Vous pouvez utiliser des outils tels que Redline pour rechercher des IOCs définis dans un appareil.
Loki
Loki est un scanner pour des Indicateurs de Compromission Simples.
La détection est basée sur quatre méthodes de détection :
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) est un scanner de malware pour Linux publié sous la licence GNU GPLv2, conçu autour des menaces rencontrées dans les environnements d'hébergement partagé. Il utilise des données de menaces provenant de systèmes de détection d'intrusion en bordure de réseau pour extraire les malwares qui sont activement utilisés dans des attaques et génère des signatures pour la détection. De plus, les données de menaces proviennent également des soumissions des utilisateurs avec la fonctionnalité de vérification LMD et des ressources de la communauté des malwares.
rkhunter
Des outils comme rkhunter peuvent être utilisés pour vérifier le système de fichiers à la recherche de rootkits et de malwares.
sudo ./rkhunter --check -r / -l /tmp/rkhunter.log [--report-warnings-only] [--skip-keypress]
FLOSS
FLOSS est un outil qui essaiera de trouver des chaînes obfusquées à l'intérieur des exécutables en utilisant différentes techniques.
PEpper
PEpper vérifie certaines informations de base à l'intérieur de l'exécutable (données binaires, entropie, URLs et IPs, certaines règles yara).
PEstudio
PEstudio est un outil qui permet d'obtenir des informations sur les exécutables Windows tels que les imports, les exports, les en-têtes, mais vérifiera également virus total et trouvera des techniques Att&ck potentielles.
Detect It Easy(DiE)
DiE est un outil pour détecter si un fichier est chiffré et également trouver des packers.
NeoPI
NeoPI est un script Python qui utilise une variété de méthodes statistiques pour détecter du contenu obfusqué et chiffré dans des fichiers texte/script. L'objectif de NeoPI est d'aider à la détection de code de shell web caché.
php-malware-finder
PHP-malware-finder fait de son mieux pour détecter du code obfusqué/suspect ainsi que des fichiers utilisant des fonctions PHP souvent utilisées dans des malwares/webshells.
Apple Binary Signatures
Lors de la vérification d'un échantillon de malware, vous devez toujours vérifier la signature du binaire car le développeur qui l'a signé peut déjà être lié à des malwares.
#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
Techniques de Détection
Empilement de Fichiers
Si vous savez qu'un dossier contenant les fichiers d'un serveur web a été dernièrement mis à jour à une certaine date. Vérifiez la date à laquelle tous les fichiers du serveur web ont été créés et modifiés et si une date est suspecte, vérifiez ce fichier.
Lignes de Base
Si les fichiers d'un dossier n'auraient pas dû être modifiés, vous pouvez calculer le hash des fichiers originaux du dossier et les comparer avec les actuels. Tout ce qui a été modifié sera suspect.
Analyse Statistique
Lorsque l'information est enregistrée dans des journaux, vous pouvez vérifier des statistiques comme le nombre de fois que chaque fichier d'un serveur web a été accédé, car un web shell pourrait être l'un des plus.
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PRs au HackTricks et HackTricks Cloud dépôts github.