Aller au contenu

Nouveau membre ?! Pense à te présenter pour accéder au contenu du forum !

New member ?! Introduce yourself to get access to the forum !

Ioio

 tutoriel / partage Sécurité avec les différents CMS

Messages recommandés

Bonjour,

 

Je m'inquiète pour la sécurité de vos serveurs et j'ai décidé de vous faire un mini-tuto qui va vous permettre de sécuriser votre base de données.

 

Je m'explique...

Il existe aujourd'hui de plus en plus de CMS différents pour metin2. Ils sont gratuits, ouverts au public etc... Le soucis est que la majorité d'entre eux stockent les données de connexion à votre base de données sans les chiffrer/crypter.

En général cela ne pose pas trop de soucis mais voici une liste de questions que je me poserais à votre place:

  • Si jamais quelqu'un réussit à pirater mon site et mettre la main sur le fichier de configuration ?
  • Étant donné que je ne m'y connais pas trop en PHP, si ça se trouve, le CMS que j'utilise est fait par un méchant qui s'envoie automatiquement les logs de connexion à mon serveur dans un fichier auquel il a accès !?
  • Imaginons que je me dispute avec quelqu'un qui a accès à mon FTP pour diverses raisons (par exemple: gestion du forum) il peut avoir accès à mes logs Navicat via le site !

 

Que faire ?

 

Le mieux à faire dans ce cas, si vous avez un serveur non local, est de créer un utilisateur spécial pour votre site dans la base de données.

2 Possibilités:

  1. Vous hébergez votre site sur le même serveur que votre émulateur metin2 => Lorsque vous configurez votre site, vous pouvez entrer les logs par défaut que vous avez dans vos fichier CONFIG (Hôte: localhost | User: mt2 | Password: [email protected]# |Port: 3306).
    Dans cette situation, non seulement vous vous protégez mais en plus le site sera beaucoup plus rapide car il ne perdra pas de temps à résoudre une adresse ip publique (hamachi, no-ip ou autre...)
  2. Vous hébergez votre site sur un serveur distant par rapport à votre serveur metin2.

    1. Trouvez l'adresse IP de votre site. (resolve domain sur google ou alors dans le pannel admin de l'hébergeur)
    2. Dans Putty/VBox entrez les commandes
      MySQL -u root -p
    3. Vous serez invité à entrer votre mot de passe MySQL, entrez-le (celui de Navicat etc..)
      GRANT ALL PRIVILEGES ON *.* TO 'webUser'@'999.999.999.999' IDENTIFIED BY 'MotDePasseDifferent' WITH GRANT OPTION;
    4. Vous l'aurez compris, remplacez le 999.999.999.999 par l'ip de votre site et MotDePasseDifferent par un mot de passe sûr et différent de ceux de root et [email protected]#.
    5. Configurez votre site avec les logs du nouvel utilisateur créé: Host: Adresse IP du serveur | User: webUser | Port: 3306 | Password: MotDePasseDifferent ou ce par quoi vous avez remplacé.

 

Vouala !

Le nouvel utilisateur ne pourra se connecter que si son adresse IP est = 999.999.999.999. Cela dit même si quelqu'un connaît le mot de passe webUser, il ne pourra pas s'y connecter :P

 

Maintenant si vous avez à faire à un pirate plus professionnel qui sait manipuler les codes de votre cms pour trafiquer les querries (très très très très rare), cette sécurité n'est qu'un tout petit obstacle (~2cm²) pour lui*.

 

En espérant que vous serez toujours dans des conditions optimales de sécurité,

 

Cdt,

 

* Cela s'appelle l'injection SQL et seul le développeur du CMS ou un codeur PHP/MySQL peut vous garantir la sécurité d'un site CMS dans ce domaine.

Partager ce message


Lien à poster
Partager sur d’autres sites

×

Information importante

By using this site, you agree to our Conditions d’utilisation.