5 mesures de sécurité PHP à implémenter

Dernière mise à jour le 25 Avr 2018
5 mesures de sécurité PHP à implémenter

PHP est le langage de programmation le plus populaire et est largement utilisé pour le développement rapide de sites Web dynamiques. Les serveurs Web sont accessibles au public, de sorte qu’ils peuvent présenter d’éventuelles failles de sécurité.
Dans cet article, nous allons décrire en détail certaines vulnérabilités des plus courantes rencontrées dans les applications web PHP ainsi que des suggestions quant à la manière de les gérer et de les prévenir.

PHP est une plate-forme d’application web stable et presque pas chère. Comme d’autres plates-formes basées sur le Web, PHP est également dangereux pour les attaques externes. Pour cela, les développeurs, les architectes de bases de données et les administrateurs système doivent prendre des précautions avant de déployer des applications PHP sur un serveur live. Ces techniques de sécurité peuvent être effectuées avec quelques lignes de code ou un peu de réglage des paramètres de votre application.

 

Besoin de commencer à vendre vos produits en ligne,
et développer votre activité sur le web ?

Lancer mon site eCommerce maintenant

 

L’injection SQL

L’injection SQL est le type de piratage le plus courant et cible spécifiquement les sites Web ou applications Web pilotés par des bases de données qui lient ou interagissent avec des bases de données. L’injection SQL est un type d’injection de code, où les pirates exploitent pleinement des vulnérabilités des mesures de sécurité du site pour envoyer des requêtes SQL spéciales à la base de données qui peut les modifier et supprimer la base de données entière.

Ce type d’attaque se produit lorsque les développeurs ne vérifient pas la fonctionnalité de validation des données dans les zones du site Web où les données provenant de sources externes peuvent être insérées dans le site Web. L’attaquant peut facilement ajouter ses propres instructions SQL dans des requêtes SQL non protégées qui utilisent les données soumises par l’utilisateur pour vérifier quelque chose dans la base de données.

Comment protéger votre site web contre les hacks

Cross Side Scripting (XSS)

Cross Site Scripting est l’une des formes les plus courantes de piratage informatique, les pirates utilisent la vulnérabilité d’un site web légitime pour forcer le site à faire certaines choses. Dans XSS, le pirate infecte une page Web avec le script malveillant côté serveuret chaque fois qu’un utilisateur visite cette page, le script est téléchargé dans le navigateur de du client et exécuté.

Comment l’éviter ?

  • Pour rester protégé de XSS, utilisez des fonctions d’échappement, notamment des caractères d’échappement qui comprennent des syntaxes HTML et JavaScript telles que ‘>’ et ‘<‘ ou convertissez-les en entités HTML (par exemple, < deviendrait <).
  • Des sites comme les forums, où les utilisateurs publient des liens HTML, une syntaxe alternative comme bbcodes (ce qui est très commun sur les forums) et peut être utilisé pour surmonter l’échappement des caractères HTML.
  • La fonction htmlspecialchars () identifie toute sortie que vous ne voulez pas comme une sortie HTML et la convertit en entités HTML, par exemple: ‘&’ devient ‘&’ et ‘ »‘ (double guillemet) devient  »  »;
  • Vérifiez et testez toujours le site avant de le lancer.

 

Besoin d’un contrat de maintenance annuel complet pour votre site web ?
Votre site web à jour avec les dernières versions, protégé contre les attaques
et avec une performance maximale:

Protéger mon business maintenant !

 

La session et le piratage de cookies ne peuvent pas violer la base de données ou l’application Web elle-même, mais cela peut affecter les comptes d’utilisateurs. Une session est une entité déclenchée lorsque les utilisateurs établissent un contact avec un serveur Web et consiste en une certaine période d’interaction entre les utilisateurs et l’application Web qui peut être authentifiée à l’aide de mesures de sécurité telles qu’un nom d’utilisateur et un mot de passe. Dans toute cette session, l’application Web stocke un cookie ou un fichier sur le navigateur de l’utilisateur, qui contient des informations sur la session telles que les préférences des utilisateurs, les données d’authentification, les codes uniques ou les informations du panier.

Comment l’éviter ?

  • Pour empêcher les pirates de définir des ID de session avant la connexion, les ID doivent changer après un certain temps, par conséquent, la fonction session_regenerate_id () doit être utilisée chaque fois que l’utilisateur se connecte, en lui attribuant un nouvel ID
  • Le risque peut être minimisé en revalidant un utilisateur qui va effectuer des tâches importantes ou sensibles comme la réinitialisation des mots de passe.
  • Si le mot de passe utilisateur est stocké dans une variable de session, il doit être chiffré à l’aide de la fonction sha1 ()
  • Si l’application Web contient des informations sensibles telles que les numéros de cartes de débit et de crédit, utilisez une connexion SSL ou toute autre connexion sécurisée pour éviter les piratages de session et de cookies

5 bonnes pratiques qu’un bon développeur PHP7 devrait tenir compte

Directory / Path Traversal

Directory appelé aussi « Path traversal » est une méthode de destruction d’applications Web en accédant aux fichiers du répertoire racine du document, ce qui permet aux pirates d’afficher des fichiers restreints et d’interagir avec le serveur Web en exécutant des commandes. Ces attaques de piratage se produisent à partir du navigateur et se fait en entrant l’URL dans la barre d’adresse qui permet de sortir du répertoire racine et dans les répertoires du serveur principal. Cette attaque peut également être effectuée via des portails d’entrée sur la partie frontale de l’application Web.

Comment l’éviter ?

  • Validez et nettoyez toutes les entrées utilisateur et supprimer toutes les données suspectes et filtrer les métacaractères;
  • Ne stockez jamais des fichiers de configuration sensibles dans la racine Web.
  • Si un suspect demande un fichier à créer, construisez le chemin complet du fichier et tous les caractères du chemin doivent être normalisés (par exemple changer « %20 » en espaces);
  • Une programmation soigneuse sur le serveur web devrait être faite. Essayez de profiter des logiciels de sécurité, de correctifs et de scanners de vulnérabilité.

Les 14 meilleurs scanners de sécurité WordPress pour détecter les codes malveillants et les hacks

Pour finir

Il faut savoir que la sécurité de votre site web est une phase importante dans tout le processus. Dans ce blog, nous avons mentionné ici les cinq premières mesures de sécurité PHP à suivre. Vous avez encore des questions ou besoin de plus d’informations ? Faites un commentaire ci-dessous.

 

Obtenir un score de 90 et plus sur Google PageSpeed Insights Mobile & Desktop

Obtenir un site rapide sur Google Page Speed

 

    Téléchargement du module

    Laissez-nous votre prénom et votre adresse de courriel pour vous envoyer le module par courriel:


      Pssssst Attendez...

      Laissez nous votre meilleure adresse email et vous recevrez le premier nos prochaines publications...


        Recevoir chaque semaine notre publication en avant première.

        Rejoignez nos 153 845 fidèles lecteurs et restez informés concernant le domaine du développement web, en étant le premier à recevoir notre publication chaque semaine.