Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

API6 SSRF API

devsecops

Définition

L'API6 Server-Side Request Forgery (SSRF) est le sixième risque de l'OWASP API Security Top 10, couvrant les vulnérabilités SSRF dans les APIs. Une SSRF API survient quand une API accepte une URL fournie par le client et effectue une requête vers cette URL depuis le serveur, sans valider suffisamment la destination. L'attaquant peut ainsi amener le serveur à effectuer des requêtes vers des ressources internes normalement inaccessibles depuis Internet. Dans le contexte des microservices et APIs modernes, l'API6 SSRF est particulièrement dangereuse car les APIs sont souvent déployées dans des environnements cloud (AWS, GCP, Azure) où le service de métadonnées des instances (http://169.254.169.254/ pour AWS) est accessible depuis le serveur. Un attaquant exploitant une SSRF API peut récupérer les credentials IAM de l'instance cloud, obtenir les tokens d'accès, et prendre le contrôle de l'ensemble de l'infrastructure. Les manifestations courantes de l'API6 SSRF incluent : les endpoints de téléchargement de ressources distantes (fetch resource from URL, importation de données, webhooks), les endpoints de rendering de contenu distant (génération de screenshots de pages web, parsing de feeds RSS), les endpoints de vérification d'URLs (test de connexion), et les intégrations de services tiers utilisant des URLs fournies par l'utilisateur. La remédiation de l'API6 SSRF combine plusieurs contrôles : validation de l'URL par allowlist (uniquement les domaines explicitement autorisés), refus des résolutions DNS vers des adresses privées (RFC1918), interdiction des schémas non-HTTP (file://, gopher://, dict://), et utilisation de bibliothèques de requête HTTP avec protection anti-SSRF intégrée (ssrf-filter pour Node.js, bogon pour Python). Les déploiements cloud doivent désactiver l'accès au service de métadonnées depuis les instances d'application si non nécessaire (Instance Metadata Service v2 avec token obligatoire sur AWS).

Exploitation SSRF vers le service de métadonnées cloud

L'exploitation la plus dangereuse de l'API6 : amener le serveur à requêter http://169.254.169.254/latest/meta-data/iam/security-credentials/ (AWS) ou http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/ (GCP). Ces endpoints retournent les credentials IAM de l'instance (AccessKeyId, SecretAccessKey, SessionToken) permettant à l'attaquant de prendre le contrôle du compte cloud. Mitigation AWS : IMDS v2 avec token obligatoire (hop limit=1 empêche les requêtes SSRF d'atteindre le service de métadonnées).

Allowlist vs Blocklist pour la validation d'URLs

La validation d'URL anti-SSRF doit utiliser une approche allowlist (uniquement les domaines explicitement autorisés) plutôt que blocklist (bloquer les IPs privées connues). Une blocklist est facilement contournée via : rebinding DNS (le DNS retourne une IP publique, après validation l'IP change vers une adresse privée), encodages d'URL alternatifs (decimal IP, IPv6, etc.). L'allowlist garantit que seules les destinations légitimes sont accessibles, quelle que soit la technique de contournement tentée.

SSRF dans les webhooks et callbacks

Les APIs de webhook (où le client configure une URL callback) sont des vecteurs SSRF classiques : un attaquant configure son webhook vers http://internal-admin-panel/ ou http://169.254.169.254/. La protection : résoudre et valider l'IP de destination du webhook avant de l'enregistrer (pas seulement au moment de l'envoi), refuser les IPs RFC1918 et link-local, et implémenter un délai entre la soumission d'un webhook et sa première utilisation pour permettre une validation asynchrone plus complète.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis