Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
OST-C2-Spec — Source ouverte C&C Spécification | Kitploit
Outils/GitHubGitHub/rasta-mouse/ost-c2-spec
ExploitationMouvement LatéralPost-ExploitationCommandement et ContrôleRed Teaming
GitHubrasta-mouse/ost-c2-spec

OST-C2-Spec

Source ouverte C&C Spécification

Voir le dépôt
2831817il y a 1 anVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Brouillon : Demande de Discussion

Résumé

Ce document donne un aperçu de la version 1 de la spécification OST C&C. Il est destiné à fournir une description détaillée des messages et des champs contenus dans ces messages.

Introduction

La motivation derrière cette spécification est de fournir un protocole de messagerie C&C (incluant les tâches, la sortie structurée et le routage pair-à-pair) qui peut être implémenté tel quel, ou simplement servir d'inspiration aux développeurs de projets. Ce document n'est pas destiné à décrire ce qu'est un C&C. Il est supposé que le lecteur comprend ce que c'est et à quoi cela sert.

Les mots-clés « MUST », « MUST NOT », « REQUIRED », « SHALL », « SHALL NOT », « SHOULD », « SHOULD NOT », « RECOMMENDED », « MAY » et « OPTIONAL » doivent être interprétés comme décrit dans RFC2119.

Hypothèses environnementales

Cette spécification repose sur les hypothèses suivantes :

  • Les messages sont envoyés sur un réseau non chiffré.
  • Les charges utiles des implants embarquent la clé publique RSA utilisée par le serveur d'équipe avec lequel elles sont destinées à communiquer.

Glossaire des termes

Voici une liste des termes utilisés dans ce document.

  • Métadonnées de l'implant: Informations qu'un implant rapporte sur lui-même à un serveur d'équipe.

  • Requête de tâche: Tâche donnée à un implant pour qu'il l'exécute.

  • Réponse de tâche: Le statut et la sortie (le cas échéant) d'une tâche donnée.

  • Clé de session: Clé de chiffrement unique utilisée par un implant pour chiffrer ses messages.

Messages de tâche

En-tête de tâche

Chaque message de requête et de réponse de tâche DOIT avoir l'en-tête de 16 octets suivant.```text | Byte | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | | -------------------------------------------------------------| | 0 | Type | Code | Flags | Label | | -------------------------------------------------------------| | 1 | Identifier | Length | | -------------------------------------------------------------|

- **Type**: entier de 1 octet.  Le 'type' de tâche.  Voir [[Types de tâches et codes](https://github.com/rasta-mouse/ost-c2-spec?tab=readme-ov-file#task-types-and-codes)].
- **Code**: entier de 1 octet.  Un 'sous-code' pour le Type donné.  Voir [[Types de tâches et codes](https://github.com/rasta-mouse/ost-c2-spec?tab=readme-ov-file#task-types-and-codes)].
- **Flags**: entier de 2 octets.  Un ensemble de drapeaux binaires décrivant l'état du message.  Voir [[Drapeaux de tâche](https://github.com/rasta-mouse/ost-c2-spec?tab=readme-ov-file#task-flags)].
- **Label**: entier de 4 octets.  Une étiquette unique pour corréler plusieurs messages liés à la même tâche.
- **Identifier**: entier de 4 octets.  Un identifiant séquentiel utilisé pour reconstruire les messages fragmentés dans le bon ordre.
- **Length**: entier de 4 octets.  La longueur totale des données de la tâche.

## Types de tâches et codes```text
|------------------|--------------------------|
| Type             | Code                     |
|------------------|--------------------------|
| 0 - NOP          | 0                        |
|------------------|--------------------------|
| 1 - Exit         | 0                        |
|------------------|--------------------------|
| 2 - Set          | 0 - Sleep/Jitter         |
|                  | 1 - SpawnTo              |
|                  | 2 - BlockDLLs            |
|                  | 3 - PPID                 |
|------------------|--------------------------|
| 3 - File         | 0 - Copy                 |
|                  | 1 - Move                 |
|                  | 2 - Delete               |
|                  | 3 - Upload               |
|                  | 4 - Download             |
|------------------|--------------------------|
| 4 - Directory    | 0 - Print                |
|                  | 1 - Change               |
|                  | 2 - Create               |
|                  | 3 - Copy                 |
|                  | 4 - Move                 |
|                  | 5 - List                 |
|                  | 6 - Delete               |
|------------------|--------------------------|
| 5 - WhoAmI       | 0                        |
|------------------|--------------------------|
| 6 - Process      | 0 - List                 |
|                  | 1 - Kill                 |
|                  | 2 - Inject Spawn         |
|                  | 3 - Inject Explicit      |
|------------------|--------------------------|
| 7 - Registry     | 0 - Query                |
|                  | 1 - Add                  |
|                  | 2 - Delete               |
|------------------|--------------------------|
| 8 - RPortFwd     | 0 - Start                |
|                  | 1 - Data                 |
|------------------|--------------------------|
| 9 - Environment  | 0 - Get                  |
|                  | 1 - Set                  |
|------------------|--------------------------|
| 10 - SOCKS       | 0 - Connect              |
|                  | 1 - Data                 |
|                  | 2 - Close                |
|------------------|--------------------------|
| 11 - Tokens      | 0 - List                 |
|                  | 1 - Make                 |
|                  | 2 - Steal                |
|                  | 3 - Use                  |
|                  | 4 - Revert               |
|                  | 5 - Delete               |
|                  | 6 - Purge                |
|------------------|--------------------------|
| 12 - Run         | 0                        |
|------------------|--------------------------|
| 13 - ItemStore   | 0 - List                 |
|                  | 1 - Add                  |
|                  | 2 - Delete               |
|                  | 3 - Purge                |
|------------------|--------------------------|
| 14 - LocalExec   | 0 - .NET                 |
|                  | 1 - BOF                  |
|                  | 2 - Managed PowerShell   |
|                  | 3 - Unmanaged PowerShell |
|------------------|--------------------------|
| 15 - PrintScreen | 0                        |
|------------------|--------------------------|
| 16 - RemoteExec  | 0 - WinRM                |
|                  | 1 - WMI                  |
|                  | 2 - PsExec               |
|                  | 3 - SSH                  |
|------------------|--------------------------|
| 17 - Link        | 1 - Link SMB             |
|                  | 2 - Link TCP             |
|------------------|--------------------------|
| 18 - Unlink      | 0                        |
|------------------|--------------------------|
| 19 - P2P         | 0 - Acknowledge          |
|                  | 1 - PassThru             |
|------------------|--------------------------|
| 20 - Jobs        | 0 - List                 |
|                  | 1 - Kill                 |
|---------------------------------------------|

Indicateurs de tâche

Certains indicateurs sont mutuellement exclusifs et NE DOIVENT PAS être définis ensemble. Si aucun indicateur n'est défini, une tâche DEVRAIT être considérée comme terminée avec succès et la sortie associée (le cas échéant) n'est PAS fragmentée.```text

ValueDescription
0No flags
1Task Error
2Task Running (as job)
4Message is fragmented, more to follow
8Message is fragmented, no more to follow
## Données de tâche
Télécharger l’outil