8 conseils pour sécuriser votre site Web contre les hackers

Conseils pour optimiser la sécurité de votre site Web et éviter les attaques des pirates informatiques (hackers).

Vous ne pensez peut-être pas que votre site web a quelque chose qui vaille la peine d’être piraté, mais les sites Web sont constamment compromis. La majorité des atteintes à la sécurité des sites Web ne visent pas à voler vos données ni à gâcher la présentation de votre site Web, mais plutôt à utiliser votre serveur comme relais de courrier électronique pour le courrier indésirable ou à configurer un serveur Web temporaire pour partager des fichiers de nature illégale .

D’autres moyens très répandus d’abuser des machines compromises incluent l’utilisation de vos serveurs dans le cadre d’un botnet ou l’exploitation de Bitcoins. Vous pourriez même être frappé par un ransomware.

Le piratage est effectué régulièrement à l’aide de scripts automatisés écrits dans le but d’exploiter les failles de sécurité des serveurs qui hébergent les sites web et les sites eux même aussi.

Voici donc huit conseils pour vous aider à protéger votre site en ligne et assurer votre sécurité.

8 conseils pour sécuriser votre site Web contre les hackers

1- Garder vos logiciels à jour

Cela peut sembler évident, mais il est essentiel de garder tous les logiciels à jour pour assurer la sécurité de votre site. Cela s’applique au système d’exploitation du serveur et à tout logiciel que vous exécutez sur votre site Web, tel qu’un CMS ou un forum. Lorsque des problèmes de sécurité sont constatés dans les logiciels, les pirates informatiques tentent rapidement d’en abuser.

Si vous utilisez une solution d’hébergement géré comme chez YEFIEN Communication, vous n’avez pas à vous préoccuper autant de l’application de mises à jour de sécurité pour le système d’exploitation, car la société d’hébergement devrait s’en charger.

Si vous utilisez un logiciel tiers sur votre site Web, tel qu’un CMS ou un forum, veillez à appliquer rapidement les correctifs de sécurité. La plupart des fournisseurs ont une liste de diffusion ou un flux RSS détaillant les problèmes de sécurité des sites Web. WordPress, Umbraco et de nombreux autres systèmes de gestion de contenu vous informent des mises à jour système disponibles lorsque vous vous connectez.

Assurez-vous de maintenir vos dépendances à jour et utilisez des outils tels que Gemnasium pour obtenir des notifications automatiques lorsqu’une vulnérabilité est annoncée dans l’un de vos composants.

2- Faire Attention à l’injection SQL

Les attaques par injection SQL surviennent lorsqu’un attaquant utilise un champ de formulaire Web ou un paramètre d’URL pour accéder à votre base de données ou la manipuler. Lorsque vous utilisez Transact SQL standard, il est facile d’insérer inconsciemment dans votre requête un code non fiable qui pourrait être utilisé pour modifier les tables, obtenir des informations et supprimer des données. Vous pouvez facilement éviter cela en utilisant toujours des requêtes paramétrées. La plupart des langages Web disposent de cette fonctionnalité, qui est facile à mettre en œuvre.

Considérons cette requête:

"SELECT * FROM table WHERE column = '" + parameter + "';"

Si un attaquant modifie le paramètre d’URL pour qu’il passe ‘ou’ 1 ‘=’ 1, la requête ressemblera à ceci:

"SELECT * FROM table WHERE column = '' OR '1'='1';"

Puisque « 1 » est égal à « 1 », cela permettra à l’attaquant d’ajouter une requête supplémentaire à la fin de l’instruction SQL, qui sera également exécutée.

Vous pouvez corriger cette requête en la paramétrant explicitement. Par exemple, si vous utilisez MySQLi en PHP, cela devrait devenir:

$stmt = $pdo->prepare('SELECT * FROM table WHERE column = :value');
$stmt->execute(array('value' => $parameter));

3- Se protéger contre les attaques XSS

Les attaques XSS (Cross-Site Scripting) injectent du code JavaScript malveillant dans vos pages, qui s’exécutent ensuite dans les navigateurs de vos utilisateurs et peuvent modifier le contenu de la page ou voler des informations à renvoyer à l’attaquant.

Lire aussi :
Les principes fondamentaux de la cybersécurité

Par exemple, si vous affichez des commentaires sur une page sans validation, un attaquant peut alors envoyer des commentaires contenant des balises de script et du code JavaScript, qui pourraient être exécutés dans le navigateur de tous les utilisateurs et voler leur cookie de connexion, permettant ainsi à l’attaquant de prendre le contrôle du compte de chaque utilisateur qui a vu le commentaire.

Vous devez vous assurer que les utilisateurs ne peuvent pas injecter de contenu JavaScript actif dans vos pages.

4- Faire attention aux messages d’erreurs

Faites attention à la quantité d’informations que vous donnez dans vos messages d’erreur. Ne transmettez que des erreurs minimes à vos utilisateurs, afin de vous assurer qu’ils ne divulguent pas les secrets présents sur votre serveur (clés d’API ou mots de passe de base de données, par exemple).

Ne fournissez pas non plus de détails complets sur les exceptions, car elles peuvent faciliter les attaques complexes telles que l’injection SQL.

Conservez les erreurs détaillées dans les journaux de votre serveur et ne montrez aux utilisateurs que les informations dont ils ont besoin.

5- Vérifier les mots de passe

Tout le monde sait qu’il doit utiliser des mots de passe complexes, mais cela ne signifie pas qu’on le fait toujours. Il est essentiel d’utiliser des mots de passe forts pour votre serveur et votre zone d’administration de site Web, mais également d’insister sur les bonnes pratiques en matière de mots de passe pour que vos utilisateurs puissent protéger la sécurité de leurs comptes.

Même si les utilisateurs ne l’apprécient pas, l’application de mots de passe tels qu’un minimum de huit caractères, y compris une lettre majuscule et un chiffre, aidera à protéger leurs informations à long terme.

Les mots de passe doivent toujours être stockés sous forme de valeurs cryptées, de préférence en utilisant un algorithme de hachage à sens unique tel que SHA.

L’utilisation de cette méthode signifie que lorsque vous authentifiez des utilisateurs, vous ne faites que comparer des valeurs chiffrées. Dans le cas où quelqu’un piraterait et volerait vos mots de passe, leur déchiffrement n’est pas possible.

6- Éviter que les utilisateurs chargent / téléversent des fichiers

Autoriser les utilisateurs à télécharger des fichiers sur votre site Web peut constituer un risque important pour la sécurité de votre site Web, même s’il s’agit simplement de changer d’avatar. Le risque est que tout fichier téléchargé, aussi innocent que cela puisse paraître, pourrait contenir un script qui, lorsqu’il est exécuté sur votre serveur, ouvre complètement votre site Web.

Si vous avez un formulaire de téléchargement de fichier, vous devez traiter tous les fichiers avec une grande suspicion. Si vous autorisez les utilisateurs à télécharger des images, vous ne pouvez pas vous fier à l’extension de fichier ou au type mime pour vérifier que le fichier est une image, car celles-ci peuvent facilement être falsifiées.

Alors, que pouvez-vous faire pour empêcher cela?

En fin de compte, vous voulez empêcher les utilisateurs d’exécuter tous les fichiers qu’ils téléchargent. Par défaut, les serveurs Web ne tentent pas d’exécuter des fichiers avec des extensions d’image, mais ne vous contentez pas de vérifier l’extension du fichier car un fichier portant le nom image.jpg.php est connu pour le danger qu’il représente.

Lire aussi :
La mise à jour de sécurité Meltdown et Spectre de Microsoft plante certains PC équipés d'un processeur AMD

Certaines options consistent à renommer le fichier lors du téléchargement pour garantir l’extension correcte, ou à modifier les autorisations du fichier, par exemple, chmod 0666 afin qu’il ne puisse pas être exécuté.

7- Utiliser le protocole HTTPS

HTTPS est un protocole de sécurité utilisé pour assurer la sécurité sur Internet. HTTPS garantit que les utilisateurs parlent au serveur auquel ils s’attendent et que personne d’autre ne peut intercepter ou modifier le contenu qu’ils voient en transit.

Il est vivement recommandé d’utiliser uniquement le protocole HTTPS.

Ce n’est plus aussi difficile ou coûteux que par le passé. Let’s Encrypt chez YEFIEN Communication fournit des certificats totalement gratuits et automatisés, dont vous aurez besoin pour activer HTTPS.

Notamment, Google a annoncé qu’il augmenterait votre classement dans les résultats de recherche si vous utilisez HTTPS, ce qui constitue également un avantage en termes de référencement. HTTP non sécurisé est sur le point de disparaître et il est temps de procéder à la mise à niveau.

8- Utiliser des outils de sécurité pour votre site Web

Une fois que vous pensez avoir tout fait, il est temps de tester la sécurité de votre site Web. Le moyen le plus efficace d’y parvenir consiste à utiliser certains outils de sécurité de site Web, souvent appelés tests d’intrusion ou tests au stylo.

Il existe de nombreux produits commerciaux et gratuits pour vous aider. Ils fonctionnent sur des bases similaires aux hackers de scripts en ce sens qu’ils testent tous les exploits connus et tentent de compromettre votre site en utilisant certaines des méthodes mentionnées précédemment, telles que SQL Injection.

Quelques outils gratuits qui en valent la peine d’être vus:

  • Netsparker (édition communautaire gratuite et version d’essai disponibles). Bon pour tester l’injection SQL et XSS
  • OpenVAS prétend être le scanner de sécurité open source le plus avancé. Bon pour tester les vulnérabilités connues, analyse actuellement plus de 25 000. Mais cela peut être difficile à installer et nécessite l’installation d’un serveur OpenVAS qui ne fonctionne que sur * nix. OpenVAS est un fork d’un Nessus avant qu’il ne devienne un produit commercial à source fermée.
  • SecurityHeaders.io (vérification en ligne gratuite). Outil permettant de signaler rapidement les en-têtes de sécurité mentionnés ci-dessus (tels que CSP et HSTS) activés et correctement configurés par un domaine.
  • Xenotix XSS Exploit Framework: Un outil de OWASP (Projet de sécurité des applications Web ouvertes) qui inclut une vaste sélection d’exemples d’attaques XSS, que vous pouvez exécuter pour vérifier rapidement si les entrées de votre site sont vulnérables dans Chrome, Firefox et IE.

Les résultats des tests automatisés peuvent être décourageants, car ils présentent une multitude de problèmes potentiels. L’important est de se concentrer d’abord sur les problèmes critiques. Chaque problème signalé contient normalement une bonne explication de la vulnérabilité potentielle. Vous constaterez probablement que certains problèmes moyens / faibles ne sont pas une préoccupation pour votre site.

Vous pouvez prendre d’autres mesures pour essayer de compromettre manuellement votre site en modifiant les valeurs POST / GET. Un proxy de débogage peut vous aider car il vous permet d’intercepter les valeurs d’une requête HTTP entre votre navigateur et le serveur. Une application gratuite populaire appelée Fiddler est un bon point de départ.

A Propos Yefien

Voir aussi

Africa Web Festival 2023 : l’Afrique se prépare à l’émergence d’un citoyen numérique bien formé

L’Africa Web Festival, le plus grand événement numérique de l’Afrique francophone, revient pour sa 10e …

Laisser un commentaire

%d blogueurs aiment cette page :