Attaques

SQLi et XSS

SQLi et XSS font partie des vulnérabilités web les plus connues. Elles apparaissent quand l'application traite mal les données fournies par l'utilisateur.


Injection SQL

Une injection SQL se produit lorsqu'une application intègre directement des données utilisateur dans une requête SQL sans contrôle suffisant.

Conséquences possibles :

  • accès à des données sensibles
  • modification de données
  • suppression d'informations
  • contournement d'authentification

Causes fréquentes :

Entrées utilisateur non filtrées
Requêtes SQL dynamiques
Absence de validation

Défenses :

  • requêtes paramétrées
  • validation des entrées
  • moindre privilège côté base
  • tests de sécurité réguliers
  • journalisation sans fuite de détails sensibles

Cross-Site Scripting

Une XSS permet d'injecter du JavaScript dans une page consultée par d'autres utilisateurs. Le navigateur exécute ce code comme s'il provenait du site légitime.

Types

TypeDescription
XSS réfléchiLe script est transmis dans une requête et renvoyé immédiatement
XSS stockéLe script est enregistré puis exécuté à chaque consultation

Conséquences possibles :

  • vol de session
  • phishing
  • modification du contenu affiché
  • actions au nom de la victime

Défenses :

  • validation des entrées
  • encodage des sorties
  • Content Security Policy
  • cookies HttpOnly, Secure et SameSite
  • mises à jour régulières

Comparaison

SQL InjectionXSS
Cible la base de donnéesCible le navigateur
Exploite SQLExploite JavaScript
Impact sur les donnéesImpact sur les utilisateurs
Côté serveurCôté client

Principe clé

Ne fais jamais confiance aux données fournies par l'utilisateur. Valide ce qui entre, encode ce qui sort, limite les privilèges.


Différence de défense

SQLi se traite surtout côté serveur et base de données. XSS se traite surtout au moment de produire du contenu HTML, JavaScript ou attributs.

À retenir :

  • une requête paramétrée protège contre la SQLi
  • un encodage de sortie protège contre beaucoup de XSS
  • une validation seule ne suffit pas
  • une CSP réduit l'impact, mais ne corrige pas la cause
  • HttpOnly protège le cookie contre certains vols via JavaScript

Signaux dans les logs

À surveiller :

  • erreurs SQL répétées
  • paramètres très longs ou inhabituels
  • caractères spéciaux dans les champs inattendus
  • erreurs applicatives après recherche ou formulaire
  • alertes WAF
  • contenus HTML inattendus dans les données stockées
Précédent
Upload de fichiers