README.md
PSR 2020
Informations utiles
- La liste des bots actifs doit être vidée toutes les 10 secondes sur le C&C
- Il doit être possible d'exécuter une charge utile sur plusieurs bots en même temps pour faire du DDOS
Protocôle UDP
- Port : 4242
- Contenu du paquet :
- Identifiant du bot : 6 octets
- Temps de vie (nombre de secondes depuis le démarrage) 4 octets
Protocôle TCP
- Port : 4242
- Commandes :
- STAT : retourne le status du bot (La réponse comprend son temps de vie, le nombre de charges utiles téléversées, le nombre d'exécution de charges utiles). Par exemple, un bot ayant un temps de vie de 1524 secondes, possédant 12 charges et ayant réalisé 3 exécutions enverra : 1524,12,3
- QUIT : deconnexion du C&C par rapport au bot
Installation de la charge utile sur un bot
- $C&C : "upload?\n"
- $BOT : "OKupload\n"
- $C&C : "%d\n", charge.name.size
- $BOT : "OKname_size\n"
- $C&C : "%s\n", charge.name
- $BOT : "OKname\n"
- $C&C : "%d\n", charge.data.size
- $BOT : "OKdata_size\n"
- $C&C : "%s\n", charge.data // On envoie octect par octet
- $BOT : "bye"\n" // Lorsque tous les octets sont reçus
- $C&C : "bye"\n"
Exécution d'une charge sur un bot
- $C&C : "execute?\n"
- $BOT : "OKexecute\n"
- $C&C : "%d\n", charge.name.size
- $BOT : "OKname_size\n"
- $C&C : "%s\n", charge.name
- $BOT : "OKname\n" // si la charge n'est pas presente sur le bot alors se dernier envoi un autre message "NOKname\n" et ca stop l'echange
- $BOT : "%d\n", id //indice de l'execution dans la structure de donne choisie (liste chaine, table de hashage...a definir) pour stocker les resultats d'execution sur le bot
- $C&C : "OKid\n"
- $BOT : "bye"\n"
- $C&C : "bye"\n"
Suppression d'une charge sur un bot
- $C&C : "delet?\n"
- $BOT : "OKdelet\n"
- $C&C : "%d\n", charge.name.size
- $BOT : "OKname_size\n"
- $C&C : "%s\n", charge.name
- $BOT : "OKname\n" //si la charge n'est pas presente sur le bot alors se dernier envoi "NOKname\n" et ca stop l'echange
- $C&C : "bye"\n"
- $BOT : "bye"\n"
Demander à un bot de résultat de l'exécution d'une charge
- $C&C : "result?\n"
- $BOT : "OKresult\n"
- $C&C : "%d\n", id
- $BOT : "OKid" //si id existe pas, renvoie "NOKid\n" et stop l'echange
- $BOT : "%d\n", executions[id].result.size
- $C&C : "OKresult_size\n"
- $BOT : "%s\n", executions[id].result //on envoi octect par octet
- $C&C : "bye"\n" //qd a recu tt les packets
- $BOT : "bye"\n"
Veuillez ne pas modifier ce README sans en parler à tout le monde !