Blame view

README.md 2.55 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
  - Port : 4242
  - Commandes :
97ac6b64   grouille   MAJ README
19
    - _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
26e9d022   grouille   MAJ README
20
    - _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 !**