
Amber est un chargeur PE indépendant de la position (réfléchissant) qui permet l'exécution en mémoire de fichiers PE natifs (EXE, DLL, SYS...). Il permet un déploiement furtif de charges utiles en mémoire, pouvant être utilisé pour contourner les produits antivirus, pare-feu, IDS, IPS et les mesures d'atténuation de la liste blanche des applications. Les charges utiles réfléchissantes générées par Amber peuvent être soit déployées depuis un serveur distant, soit exécutées directement en mémoire comme une shellcode générique. Par défaut, chaque charge utile générée est encodée à l'aide du nouvel encodeur SGN. Amber utilise CRC32_API et IAT_API pour résoudre discrètement les adresses des fonctions de l'API Windows. Après le chargement et l'exécution du fichier PE en mémoire, la charge utile réfléchissante est effacée pour éviter les scanners mémoire.
Des binaires précompilés sont disponibles dans les versions.
Compilation à partir des sources
La seule dépendance pour compiler les sources est le moteur keystone. Suivez ces instructions pour installer la bibliothèque. Une fois libkeystone installé sur le système, il suffit de l'installer avec go ツ
go install github.com/EgeBalci/amber@latest
Installation Docker
docker pull egee/amber
docker run -it egee/amber
Le tableau suivant liste les commutateurs pris en charge par amber.
Exemple d'utilisation
amber -f test.exe
amber -e 10 --iat -f test.exe
Utilisation avec Docker
docker run -it -v /tmp/:/tmp/ amber -f /tmp/file.exe
| Commutateur | Type | Description |
|---|---|---|
| -f,--file | string | Fichier PE d'entrée. |
| -o,--out | string | Nom du fichier binaire de la charge utile générée. |
| -e | int | Nombre de fois que la charge utile réfléchissante générée sera encodée. |
| --iat | bool | Utiliser le bloc résolveur d'API IAT au lieu du bloc résolveur d'API CRC. |
| -l | int | Nombre maximum d'octets pour l'obfuscation (par défaut 5). |
| --sys | bool | Effectuer des appels système bruts. (x64 uniquement). |
| --scrape | bool | Supprimer l'octet magique et le stub DOS du PE. |