Falsification des requêtes côté serveur

La falsification des requêtes côté serveur (SSRF) est une vulnérabilité grave de la sécurité web qui permet à un attaquant de manipuler un serveur pour qu'il effectue des requêtes non souhaitées. Pour les équipes SOC, il est essentiel de comprendre la SSRF, ses impacts potentiels et les stratégies d'atténuation pour protéger les applications web.
  • Selon un rapport de Positive Technologies, 35 % des applications web testées se sont révélées vulnérables aux attaques SSRF.
  • Les vulnérabilités du SSRF ont joué un rôle important dans la violation de données très médiatisée de Capital One en 2019, exposant les informations sensibles de plus de 100 millions de clients.
  • Qu'est-ce que la falsification des requêtes côté serveur ?

    La falsification des requêtes côté serveur (SSRF) est une vulnérabilité qui permet à un attaquant de tromper un serveur en lui faisant faire des requêtes involontaires vers des ressources internes ou externes. Ces requêtes sont faites à partir du serveur lui-même, qui peut avoir plus de privilèges et d'accès qu'une requête côté client. La SSRF peut être exploitée pour accéder à des systèmes internes, extraire des données sensibles ou mener d'autres attaques au sein du réseau de l'organisation.

    Comment fonctionnent les attaques de type "Server-Side Request Forgery" (falsification de requête côté serveur)

    Une attaque SSRF comporte généralement les étapes suivantes :

    1. Identification de la vulnérabilité : L'attaquant identifie une fonction d'application web qui traite les URL fournies par l'utilisateur ou peut effectuer des requêtes HTTP.
    2. Création d'une requête malveillante : L'attaquant crée une requête qui inclut une URL vers une ressource interne ou sensible.
    3. Exploitation de la vulnérabilité : Le serveur traite la requête malveillante et envoie la requête à l'URL spécifiée.
    4. Accès à des données sensibles : La requête du serveur extrait des données des systèmes internes, qui sont ensuite renvoyées à l'attaquant, ce qui entraîne une fuite de données ou un accès non autorisé.
    diagramme illustrant le processus d'attaque du SSRF

    Exemples réels d'attaques par falsification de requêtes côté serveur

    1. Violation des données de Capital One (2019) : L'attaquant a exploité une vulnérabilité SSRF pour accéder à des informations sensibles à partir des services de métadonnées AWS, ce qui a entraîné l'exposition de plus de 100 millions de dossiers de clients.
    2. Vulnérabilité SSRF de GitHub (2020) : Une vulnérabilité dans la fonction de mise en miroir des dépôts de GitHub permet aux attaquants de déclencher des requêtes internes, exposant potentiellement des services internes.

    Indicateurs d'attaques par falsification de requêtes côté serveur

    1. Trafic sortant inhabituel : La surveillance des requêtes sortantes inattendues du serveur vers des adresses IP internes ou des domaines externes inattendus peut indiquer une attaque SSRF.
    2. Journaux d'accès inattendus : Les journaux d'accès montrant des demandes de services ou de ressources internes qui ne devraient pas être accessibles à l'extérieur constituent un signal d'alarme.
    3. Anomalies dans les réponses du serveur : Réponses contenant des métadonnées internes ou des informations sensibles renvoyées à l'utilisateur.

    Différences entre le Server-Side Request Forgery (SSRF) et Cross-Site Request Forgery (CSRF)

    Server-Side Request Forgery (SSRF) et Cross-Site Request Forgery (CSRF) sont deux vulnérabilités critiques de la sécurité web qui peuvent avoir de graves conséquences si elles sont exploitées. Bien que ces deux types d'attaques impliquent la manipulation du comportement d'une application web, elles fonctionnent de manière fondamentalement différente et ciblent des aspects différents des applications web. Comprendre les différences entre SSRF et CSRF est essentiel pour que les équipes SOC puissent mettre en œuvre des mesures de sécurité appropriées et protéger efficacement leurs systèmes.

    Vous trouverez ci-dessous un tableau comparatif détaillé mettant en évidence les principales différences entre SSRF et CSRF :

    Aspect Falsification des requêtes côté serveur (SSRF) Cross-Site Request Forgery (CSRF)
    Définition Le SSRF est une vulnérabilité qui permet à un attaquant de manipuler un serveur afin d'effectuer des requêtes involontaires vers des ressources internes ou externes. CSRF est une vulnérabilité qui permet à un attaquant de tromper un utilisateur authentifié en lui faisant faire des requêtes involontaires à une application web.
    Cible Le serveur lui-même, ce qui l'amène à effectuer des actions non autorisées au nom de l'attaquant. Le navigateur de l'utilisateur, en exploitant la session authentifiée de l'utilisateur avec une application web.
    Vecteur d'attaque Manipule directement les requêtes côté serveur, souvent par le biais d'entrées fournies par l'utilisateur et traitées par le serveur. Utilise l'ingénierie sociale pour inciter les utilisateurs à cliquer sur des liens malveillants ou à visiter des sites web malveillants qui envoient des requêtes en leur nom.
    Impact Peut conduire à un accès non autorisé aux services internes, à l'exfiltration de données et à des compromissions potentiellement graves du réseau interne. Peut entraîner des actions non autorisées telles que la modification des paramètres de l'utilisateur, l'exécution de transactions ou la publication de contenu sans le consentement de l'utilisateur.
    Indicateurs communs Modèles inhabituels de trafic sortant, journaux d'accès inattendus aux ressources internes et anomalies dans les réponses des serveurs. Changements inattendus dans les paramètres des comptes d'utilisateurs, transactions financières inexpliquées et journaux d'activité anormaux.
    Stratégies de prévention
    • Valider et assainir les entrées des utilisateurs
    • Restreindre les demandes sortantes
    • Segmentation du réseau
    • Utiliser des en-têtes de sécurité
    • Audits de sécurité réguliers
    • Utiliser des jetons anti-CSRF
    • Attribut du cookie SameSite
    • Ré-authentification pour les actions sensibles
    • Sensibiliser les utilisateurs aux liens suspects
    • Tests de sécurité réguliers

    Stratégies de prévention efficaces

    1. Validation et assainissement des données d'entrée :

    • Valider et assainir toutes les entrées utilisateur, en veillant à ce que seuls les URL et les domaines autorisés le soient.
    • Mettre en place une liste blanche stricte des URL que le serveur peut demander, afin d'éviter toute destination involontaire.

    2. Segmentation et isolation du réseau :

    • Segmenter le réseau pour s'assurer que les serveurs web ne peuvent pas accéder directement aux services internes sans passer par les contrôles de sécurité appropriés.
    • Utiliser des pare-feu et des listes de contrôle d'accès (ACL) pour restreindre l'accès des serveurs aux ressources internes sensibles.

    3. Utilisation d'en-têtes et de protocoles de sécurité :

    • Mettre en œuvre des en-têtes de sécurité tels que la politique de sécurité du contenu (CSP) pour restreindre les ressources qui peuvent être chargées ou demandées par l'application.
    • Appliquer le protocole HTTPS pour garantir une communication cryptée entre le serveur et les ressources externes, ce qui réduit le risque d'interception des données.

    4. Surveillance et enregistrement :

    • Surveiller en permanence le trafic sortant et enregistrer toutes les requêtes côté serveur, en particulier celles adressées à des adresses IP internes ou à des domaines inattendus.
    • Utiliser des systèmes de détection des anomalies pour identifier des modèles de demande inhabituels qui pourraient indiquer une tentative de SSRF.

    5. Audits de sécurité et tests de pénétration réguliers :

    • Mener régulièrement des audits de sécurité et des tests de pénétration afin d'identifier et de corriger les vulnérabilités du SSRF.
    • Utiliser des outils automatisés tels que OWASP ZAP, Burp Suite et des scanners spécifiques aux SSRF pour détecter les faiblesses potentielles des SSRF.

    6. Principe du moindre privilège :

    • Appliquer le principe du moindre privilège, en veillant à ce que l'application web dispose des autorisations minimales nécessaires à l'exécution de ses fonctions.
    • Restreindre les capacités du serveur pour qu'il n'effectue des requêtes externes qu'en cas d'absolue nécessité.

    S'assurer que vos applications web sont sécurisées contre les attaques SSRF est vital pour maintenir l'intégrité des données et protéger les informations sensibles. Si vous êtes préoccupé par les vulnérabilités SSRF dans vos applications, notre équipe à Vectra AI peut vous aider. Faites une visite gratuite de la plate-forme Vectra AI pour découvrir comment nous pouvons vous aider à renforcer vos défenses contre SSRF et d'autres cybermenaces.

    Foire aux questions

    Qu'est-ce que la falsification des requêtes côté serveur (SSRF) ?

    Quels sont les indicateurs communs d'une attaque SSRF ?

    Comment prévenir la FSR ?

    Comment la validation des entrées contribue-t-elle à prévenir le SSRF ?

    Comment les en-têtes de sécurité peuvent-ils contribuer à atténuer la SSRF ?

    Comment fonctionne une attaque SSRF ?

    Quels sont les exemples d'attaques SSRF ?

    Quel est l'impact d'une vulnérabilité du SSRF ?

    Quel est le rôle de la segmentation du réseau dans l'atténuation des effets du SSRF ?

    Quels outils peuvent être utilisés pour détecter les vulnérabilités du SSRF ?