Les injections SQL via JSON, une nouvelle technique pour contourner les WAF
Des chercheurs en sécurité ont fait la découverte d'une nouvelle technique d'attaque dont l'objectif est de contourner les WAF, à savoir les pare-feu qui protègent les applications Web, grâce à l'utilisation de JSON pour réaliser des injections SQL.
Les WAF (Web Application Firewall) sont très populaires, car ils jouent un rôle essentiel dans la protection des applications hébergées sur un serveur Web, en analysant, en filtrant et en bloquant le trafic à la recherche de requêtes malveillantes. Ceci permet de lutter contre les injections SQL (SQLi), l'exploitation de failles XSS, etc... Cette barrière défensive doit être franchie par l'attaquant s'il veut pouvoir compromettre le serveur Web.
L'entreprise Clarory, spécialisée dans la cybersécurité, a mis au point une nouvelle technique qui permet de contourner les mécanismes de protection des WAF. Les solutions actuelles du marché sont efficaces lorsqu'il s'agit de bloquer les injections SQL, mais cette protection peut être contournée si la requête malveillante est masquée dans un code JSON. En effet, le JSON n'étant pas pris en charge, la requête malveillante outrepasse le WAF et parvient jusqu'à l'application Web. Cela s'explique par le fait que si le WAF ne reconnaît pas la syntaxe SQL, il ne cherche pas à l'analyser avec son moteur de protection SQLi.
Noam Moshe, chercheur en sécurité chez Claroty, précise que cette technique "consiste à ajouter la syntaxe JSON aux charges utiles de type injection SQL qu'un WAF est incapable d'analyser". Il affirme également : "La plupart des WAF détectent facilement les attaques SQLi, mais l'ajout préalable de JSON à la syntaxe SQL rendait le WAF aveugle à ces attaques." - En effet, quand il dit que la plupart des WAF sont concernés, il s'avère que cette technique a fonctionné contre AWS, Cloudflare, F5, Imperva et Palo Alto Networks ! La bonne nouvelle, c'est que ces fournisseurs ont fait le nécessaire et que le JSON est pris en charge à présent.
Cette technique est dangereuse, car l'attaquant peut exploiter cette technique pour contourner le WAF et tenter d'exploiter une faille de sécurité dans l'application Web. Au final, cela peut lui permettre de prendre le contrôle du serveur Web ou d'exfiltrer des données à partir de la base de données, en fonction de ce qu'il parvient à exploiter comme vulnérabilités.