Génération de payload¶
Le système de génération de payload de Stentor produit des implants dans 17 formats de sortie pour chaque scénario de livraison majeur : des exécutables Windows standard aux conteneurs contournant MOTW et à la contrebande HTML basée sur un navigateur. Toutes les payloads sont générées à la demande via l'API, compilées de manière croisée sur l'agent Relay avec l'obscurcissement Garble en option et stockées dans le backend pour téléchargement ou hébergement automatique.
Pipeline de génération¶
Le diagramme suivant montre comment un payload passe d'une requête d'API au binaire déployable :
sequenceDiagram
participant Op as Operator
participant BE as Backend
participant Relay as Relay (Kali)
Op->>BE: POST /api/v1/payloads/generate
BE->>BE: Validate request, resolve listener to C2 URL
BE->>Relay: Dispatch via WebSocket
Relay->>Relay: Cross-compile implant (Go build)
Relay->>Relay: Garble obfuscation (if enabled)
Relay->>Relay: Donut shellcode conversion (if shellcode)
Relay-->>BE: Return binary + metadata
BE->>BE: Store payload in database
BE-->>Op: Return payload ID, hash, size, artifacts Dans cette rubrique¶
- Formats de payload -- Référence complète pour les 17 formats de sortie, y compris des exemples d'API de génération, des options de configuration spécifiques au format, des considérations OPSEC, une surface de détection et un guide de sélection de format.
- Signature de code -- Téléchargez des certificats de signature de code, signez des payloads avec des signatures Authenticode et gérez le stockage de certificats cryptés pour une livraison fiable des payloads.
- Kits d'évasion -- Masquage du sommeil, obscurcissement des appels système, BeaconGate, correctifs AMSI/ETW et injection de kits personnalisés pour l'évasion au niveau de le payload.
Démarrage rapide¶
Générez un payload EXE 64 bits de base avec un seul appel d'API :
curl -s -X POST https://stentor.app/api/v1/payloads/generate \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"delivery_type": "exe",
"implant_variant": "standalone",
"listener_id": "6ea88162-d558-404a-a19f-4b4cab34b22f",
"architecture": "x64"
}' | jq '{id, filename, hash, size}'
Voir Formats de payload pour tous les formats disponibles et les options de configuration avancées.