Serveur de Jeu Privé

Serveur de Jeu Privé

Une structure complète de serveur privé pour le jeu World of Warcraft (fonctionnant sur AzerothCore)

Aperçu image

Aperçu

⚠️ AVERTISSEMENT : RTRealm est un projet privé créé uniquement à des fins d’apprentissage. Ce projet n’est pas affilié, approuvé ou connecté à Blizzard Entertainment de quelque manière que ce soit. World of Warcraft, WoW et tout le contenu connexe sont des marques commerciales et des propriétés de Blizzard Entertainment Inc. Ce serveur est maintenu uniquement à des fins éducatives et non commerciales dans un environnement académique.

Mon serveur fonctionne sur AzerothCore qui est un framework MMORPG open-source. Il est écrit en C++ et est basé sur le projet TrinityCore. AzerothCore permet aux développeurs de créer et gérer des serveurs privés pour World of Warcraft, offrant une plateforme de personnalisation et d’expansion du jeu.

Pour la base de données, j’ai choisi d’utiliser HeidiSQL qui est une interface puissante et facile à utiliser pour gérer MySQL, MariaDB et d’autres systèmes de bases de données. Il fournit des outils pour la conception de bases de données, l’exécution de requêtes et la gestion des données.

Les utilisateurs peuvent créer un compte sur le site web suivant : RTRealm

Sécurité des Comptes

La base de données possède son propre utilisateur, qui est utilisé uniquement pour cette seule finalité, et dispose de permissions limitées pour éviter tout risque de sécurité potentiel.

La base de données du serveur est sécurisée par le hachage des détails utilisateur tels que les mots de passe, les clés de session et le sel en utilisant l’algorithme SRP6. Cela garantit que même si la base de données est compromise, les mots de passe réels restent protégés. (Plus de détails dans les paragraphes ci-dessous)








Sur cette image, vous pouvez voir le formulaire où les utilisateurs pourront créer leur compte. Ils devront choisir un mot de passe suffisamment long et complexe pour assurer un bon niveau de sécurité (8 caractères sont nécessaires).

Le compte nouvellement créé sera stocké dans la base de données avec les détails suivants : le nom du compte, un sel (une chaîne aléatoire de caractères utilisée pour améliorer la sécurité du mot de passe), le vérificateur (une valeur dérivée du mot de passe et du sel en utilisant l’algorithme SRP6), et d’autres informations pertinentes telles que l’email, la date d’inscription, la dernière IP, etc.












SRP‑6 est une version du protocole Secure Remote Password conçue pour permettre à un client et un serveur de s’authentifier mutuellement sans jamais envoyer le mot de passe réel sur le réseau. Il fonctionne en faisant générer par les deux parties leurs propres valeurs privées et publiques, échanger uniquement les parties publiques sûres, et calculer indépendamment la même clé de session partagée en utilisant un mélange de mathématiques à grands nombres premiers et le vérificateur de mot de passe stocké.

Parce que le mot de passe lui-même n’est jamais transmis ou exposé, SRP‑6 protège contre l’écoute clandestine, les attaques par rejeu et les fuites de bases de données de serveur où un attaquant n’obtient que le vérificateur. Le protocole se termine par les deux parties prouvant qu’elles ont dérivé la même clé, offrant une authentification mutuelle et une base sécurisée pour le reste de la session.











Sur cette image, vous pouvez voir un exemple du mot de passe salé et haché stocké dans la base de données, avec les autres détails du compte.

Sécurité des Comptes image1
Sécurité des Comptes image2
Sécurité des Comptes image3
Sécurité des Comptes image4

Démonstration Vidéo

Voici une démonstration vidéo du serveur en action, présentant le processus d’inscription et de connexion. Les interactions avec la base de données sont également mises en évidence pour illustrer comment les données utilisateur sont gérées de manière sécurisée lors d’une inscription.

Programme National Réseaux & Télécoms

Ce projet démontre directement des connaissances dans plusieurs apprentissages critiques ainsi que composantes essentielles tels que :

  • AC34.01 Cyber - Mettre en œuvre des outils avancés de sécurisation d’une infrastructure du réseau

  • CE3.05 - En intégrant les problématiques de sécurité

  • CE4.01 - En visant un juste compromis entre exigences de sécurité et contraintes d’utilisation

  • CE4.02 - En “respectant” les normes et le cadre juridique

    Grâce au déploiement de RTRealm, j’ai configuré des mécanismes d’authentification sécurisés et mis en œuvre des protocoles de sécurité en couches pour protéger l’infrastructure du serveur de jeu contre les accès non autorisés.

  • AC34.04 Cyber - Proposer une architecture sécurisée de système d’information pour une petite structure

    J’ai conçu et mis en œuvre une architecture sécurisée complète pour le serveur RTRealm, incluant une séparation appropriée des préoccupations entre le serveur de jeu, la couche de base de données et le système d’inscription orienté utilisateur, garantissant l’intégrité et la confidentialité des données.

  • AC36.01 Cyber - Surveiller l’activité du système d’information

    La gestion des comptes et la journalisation des transactions ont été intégrées pour surveiller les inscriptions d’utilisateurs, les tentatives de connexion et les échecs d’authentification, fournissant des pistes d’audit pour la surveillance de la sécurité et la réponse aux incidents.

  • AC32.04 - Permettre aux collaborateurs de se connecter de manière sécurisée au système d’information de l’entreprise

  • CE1.02 - En respectant les principes fondamentaux de la sécurité informatique

    Le protocole d’authentification SRP6 garantit que les utilisateurs peuvent se connecter en toute sécurité au serveur sans exposer leurs mots de passe sur le réseau, mettant en œuvre les meilleures pratiques d’authentification à distance sécurisée dans des environnements réseau.

Ces implémentations démontrent l’application pratique de la sécurité réseau, de l’administration système et des principes de sécurité de base de données essentiels au programme N&T.

Programme National Réseaux & Télécoms image
Programme National Réseaux & Télécoms image2