Blame view

README.md 2.41 KB
5d96f53c   grouille   MAJ
1
  # PSR 2020
16098d01   grouille   MAJ README
2
  
5d96f53c   grouille   MAJ
3
4
5
6
7
8
  ## 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
16098d01   grouille   MAJ README
9
  
26e9d022   grouille   MAJ README
10
11
12
13
  - Port : 4242
  - Contenu du paquet :
    - _Identifiant du bot_ : 6 octets
    - _Temps de vie (nombre de secondes depuis le démarrage)_ 4 octets
16098d01   grouille   MAJ README
14
  
5d96f53c   grouille   MAJ
15
  ## Protocôle TCP
16098d01   grouille   MAJ README
16
  
26e9d022   grouille   MAJ README
17
18
19
20
  - 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)
    - _QUIT_ : deconnexion du C&C par rapport au bot
16098d01   grouille   MAJ README
21
22
23
  
  ### Installation de la charge utile sur un bot
  
ef04e1cb   grouille   MAJ README
24
25
26
27
28
29
30
31
32
33
34
  - _$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"
16098d01   grouille   MAJ README
35
36
37
  
  ### Exécution d'une charge sur un bot
  
ef04e1cb   grouille   MAJ README
38
39
40
41
42
43
44
45
46
47
  - _$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"
16098d01   grouille   MAJ README
48
49
50
  
  ### Suppression d'une charge sur un bot
  
ef04e1cb   grouille   MAJ README
51
52
53
54
55
56
57
58
  - _$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"
16098d01   grouille   MAJ README
59
60
61
  
  ### Demander à un bot de résultat de l'exécution d'une charge
  
ef04e1cb   grouille   MAJ README
62
63
64
65
66
67
68
69
70
  - _$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"
16098d01   grouille   MAJ README
71
  
16098d01   grouille   MAJ README
72
73
  
  **Veuillez ne pas modifier ce README sans en parler à tout le monde !**