Question

Ces derniers temps, j'ai expérimenté de nombreuses applications de développement Web, telles que Drupal, Moodle, Efront et Elgg. Pour une meilleure sécurité, j'exécute des serveurs de test sur une configuration XAMPP sur une machine virtuelle XP sous Mac OS X 10.4, à l'aide de Parallels. Je pense que cela devrait être assez sécurisé, non?

Lors de l’installation d’un logiciel comme Elgg, il m’a demandé de créer un utilisateur sur le serveur MySQL afin qu’il puisse accéder à la base de données. Je souhaite savoir si ma méthode de création d'un nouvel utilisateur est correcte et quelles autorisations dois-je accorder à cet utilisateur?

Actuellement, je crée de nouveaux utilisateurs en allant dans PHPMyAdmin, la base de données MySQL, la table utilisateur et en insérant une nouvelle ligne. Est-ce correct? Pour une raison quelconque, cela ne fonctionne pas toujours.

PS - Devrais-je m'occuper de tout cela ou laisser chaque logiciel utiliser mon compte root?

Était-ce utile?

La solution

Les privilèges utilisateur MySQL que vous utilisez sont très importants et peuvent vous empêcher d’être piratés. Vous devriez suivre un système d'accès le moins privilégié.

Pour ajouter un utilisateur dans PHPMyAdmin: 1) se connecter en tant que root 2) allez sur l'onglet Privilèges 3) cliquez sur "Ajouter un nouvel utilisateur".

PHPMyAdmin regroupe les privilèges MySQL en tant que Données, Structure et Administration.

Le " Administration " les privilèges doivent être désactivés pour une application Web, seul l'utilisateur root devrait avoir cet accès. Aucune des " Administration " les privilèges peuvent être utilisés dans une exploitation par injection SQL, à moins que l'application n'autorise l'empilement de requêtes. (La plupart ne le permettent pas!)

Lors de l'installation d'une application Web, l'option " Structure " des privilèges sont nécessaires pour créer la base de données; toutefois, ils ne sont presque jamais nécessaires lors du fonctionnement de l'application Web et peuvent donc être désactivés.

Le " Data " la section est délicate. Le " FILE " privilèges est le privilège le plus dangereux que vous puissiez accorder à une application Web. La raison en est qu’elle permet à un pirate d’utiliser une vulnérabilité d’injection SQL pour lire et écrire des fichiers sur votre serveur. "FICHIER" l'accès est le seul privilège qui puisse donner à un attaquant une exécution de code à distance (RCE), et doit TOUJOURS être désactivé.

Dernier point, mais non le moindre, Apache Friends XAMPP est un logiciel épouvantable. Des vulnérabilités connues existent et n’ont pas été corrigées depuis près d’un an. J'ai recommencé à utiliser l'installation de la lampe Ubuntu, il est à la fois facile à utiliser et sécurisé.

Autres conseils

si vous insérez des lignes directement dans la table user, vous devez cliquer sur le lien FLUSH PRIVILEGES sur la page des privilèges pour forcer mysql à consulter à nouveau la table users.

le meilleur moyen consiste à utiliser la page des privilèges sur phpmyadmin pour configurer de nouveaux utilisateurs. pour y arriver, cliquez sur le logo de la maison en haut de la colonne de gauche. puis sur le côté droit de l'écran, cliquez sur le lien pour obtenir les privilèges.

et vous ne devez absolument PAS laisser votre logiciel simplement utiliser le compte root. vous devez créer un utilisateur pour chaque application avec les autorisations les plus restrictives possibles.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top