Dans ce tutoriel clair comme de l'eau de roche je vais vous apprendre à prendre connaissance des données Client qui sont envoyées à votre serveur quand un joueur se connecte à votre serveur ! Mais aussi, comprendre les données et prendre des mesures en cas de pépins. Ce tutoriel risque d’être trop court sans un peu de contexte donc voici une brève description des différentes méthodes de 'plantage' possible sur un serveur Garry's Mod, ça me permets de toucher un peu à tous les contextes possibles qui peuvent toucher votre serveur et surtout d'informer les fondateurs n'ayant pas forcément la notion de tout ceci (les fondateurs de serveur étant pour la plupart très jeunes et pas très compétents donc par acquis de conscience je me force à le faire afin que tout le monde soit au même niveau).
Un joueur qui se connecte à votre serveur garrysmod échange des données avec le serveur. Ça c'est la base, mais saviez vous que vous pouvez surveiller d'avantage ce genre de données simplement avec un réglage précis dans votre server.cfg ? Ça tombe bien car c'est ce que je vais vous enseigner !
Méthode N°1
Pour qu'une personne provoque une panne ou un crash de votre serveur, on connaît tous la très célèbre phrase "omg quelqu'un DDOS le serv !" (DDOS = Attaque par déni de service). Il s'agit d'un envoi massif de requêtes bidons à votre serveur pour le saturer. Concernant cette méthode il vous suffit de contacter votre hébergeur pour faire un rapide constat de la situation et prendre des mesures drastiques.
Méthode N°2
Pour mettre votre serveur en PLS (Position Latérale de Sécurité) insuffisante, l'exploit d'addons mal développés en terme de sécurité. C'est très souvent d'ailleurs la méthode utilisée sur Garry's Mod pour faire planter un serveur, le tricheur a juste à utiliser un code côté client pour s'ouvrir un menu et cliquer sur des boutons qui vont effectuer des actions malicieuses sur votre serveur (ça peut aller de se 'give de l'argent' à bêtement 'shutdown' le serveur). L'étendue des actions disponibles dépend du script en question. Pour remédier à ce problème, engagez des développeurs compétents qui effectueront un scan rapide des différents addons pour les retravailler et accessoirement signaler le problème au développeur original de l'addon en question de manière à ce qu'il sorte un patch pour que tout le monde puisse en profiter au prochain reboot.
Méthode N°3
Pour ruiner votre serveur il est possible de profiter de la présence de 'Faille(s)/Exploit(s' dans la source même du jeu. Concernant ceci vous ne pouvez pas faire grand chose si ce n'est attendre un patch des développeurs officiels du jeu eux-mêmes ou surfer sur le net à la recherche d'un potentiel fix fait par des gens relativement compétents (attention tout de même à ne pas prendre du code malicieux).
Bref on a fait le tour et on va juste s'attarder davantage sur le dernier point a savoir que depuis peu certains cheats payants autour de gmod proposent une fonctionnalité qui s'intitule sobrement 'Server Crasher' (oui c'est vraiment mignon). Les méthodes sont toujours plus ou moins différentes et sont sous forme de fichiers .DLL à injecter dans gmod ou directement liée au .exe permettant de tricher. je vais vous apprendre à contrer une méthode d'attaque (c'est déjà une attaque de moins pour votre serveur j'ai envie de dire) effectuée par envoi massif de requêtes Client.
Dirigez-vous dans votre ftp ou plus précisément dans /srcds/garrysmod/cfg et ouvre le fichier server.cfg
Copier/coller simplement net_showmsg clc_ClientInfo dans server.cfg (je vous conseille de le caler sous une autre ligne ou si vous êtes pointilleux de le mettre à part dans un coin du fichier).
Redémarrez votre serveur via votre panel web et faites un simple test en vous connectant à votre serveur puis retournez regarder votre console (voici un exemple de ma console pour que vous compreniez bien ce qui nous intéresse)
On remarque que je me suis bien connecté (et authentifié) mais une nouvelle information est apparue et survient à chaque fois qu'un joueur se connecte (les étoiles ci-dessous représente mon IP qui est aussi cacher sur le screen en noir) :
from ********** clc_ClientInfo: SendTableCRC - 43862100
Cette information est très importante car elle désigne une requête et il est possible de spammer ce genre de requêtes comme on l'a vu plus haut. Donc tout simplement si à un moment votre serveur semble avoir de violentes latences, renseignez-vous auprès de votre hébergeur, cherchez des solutions comme par exemple SNTE qui propose gratuitement sur le workshop une solution préventive contre l'abus d'addons mal développés en terme de sécurité et bien évidemment veillez à enregistrer la ligne en question de la requête si elle est spammer et bannissez de manière permanente le joueur qui semble provoquer ce spam (ban par SteamID ou IP c'est comme bon vous semble).
Ajouter SNTE sur son serveur
Say Not To Exploits est un addon gratuit disponible sur le workshop !
Il a pour but de protéger son serveur des exploits mais aussi de certaines backdoors et autres failles disponibles.
Vous pouvez le retrouver directement ici : https://steamcommunity.com/sharedfiles/filedetails/?id=1308262997
Bref c’était intense cependant vous voilà mieux équipés et ça c'est important pour survivre sur Garry's Mod ;)
Passer au chapitre suivant :
Partager sur
Sommaire
Surveiller le traffic 'Client' de son serveur
Bloquer le suicide des joueurs
Bloquer le spawnmenu en DarkRP
Bloquer le context menu
Être God + Invisible en noclip
Améliorer l'équipement du meurtrier en Murder
Donner des SWEPs à un groupe VIP
Ouvrir une page web à l'entrée d'une commande dans le chat
Retirer le MOTD d'ULX sur Gmod
Désactiver les dégâts de chute
Bloquer une commande
Cacher la liste des joueurs qui entendent en DarkRP
Touche pour la 3ème Personne (Avec SimpleThirdPerson)
Retirer le son et l'éclair au TP en DarkRP
Comment retirer plusieurs HUDs de base présents dans DarkRP
