Introduction
Dans le monde en constante évolution de la cybersécurité, la curiosité est souvent le moteur de grandes découvertes. C'est exactement ce qui a poussé Kasra Rahjerdi, un chercheur en sécurité, à créer une application vulnérable pour tester la capacité des modèles de langage (LLMs) à s'introduire dans des systèmes numériques. Avec un budget de 1 500 $, il a lancé une expérience unique pour voir si ces modèles pouvaient reproduire des exploits communs.
La genèse du projet
Kasra a développé une application de critique de livres en utilisant React Native pour le frontend et un backend en Python. Le défi pour les LLMs était de trouver un drapeau caché dans les critiques privées des utilisateurs. L'application utilisait Firebase comme couche de données, un choix stratégique sachant que de nombreuses applications dans la nature présentent des vulnérabilités similaires.
Les vulnérabilités ciblées
L'application exploitait une faille connue sous le nom de Broken Access Control ou Missing Object-Level Authorization. Ces vulnérabilités sont courantes dans les applications utilisant Firebase ou Supabase, où une API sécurisée est contournée via une mauvaise configuration de la base de données.
Exécution de l'expérience
Kasra a testé plusieurs modèles de langage, notamment GPT-5.5 et Claude, avec des outils spécifiques pour forcer les modèles à continuer d'essayer jusqu'à ce qu'ils réussissent ou échouent. Chaque modèle a été testé sur un total de dix essais, avec un budget de 10 $ par essai et une limite de temps de deux heures.
Résultats des tests
Parmi les modèles testés, GPT-5.5 a obtenu le meilleur taux de réussite avec 7 réussites sur 10 essais, montrant une capacité impressionnante à identifier les failles. D'autres modèles, comme Deepseek-v4-pro, ont eu des résultats plus mitigés, avec seulement 3 réussites sur 10.
Analyse des coûts
Le coût par succès variait considérablement entre les modèles. GPT-5.5, bien que plus coûteux par essai, offrait un coût par succès relativement bas en raison de son taux de réussite élevé. En revanche, des modèles comme Claude-Sonnet-4.6 étaient beaucoup plus coûteux sans amélioration significative des résultats.
Implications et réflexions
Cette expérience met en lumière le potentiel des modèles de langage pour identifier des vulnérabilités dans des systèmes réels. Cependant, elle soulève également des questions sur les coûts et l'efficacité de ces outils dans des contextes de sécurité réels. Alors que l'IA continue de progresser, son rôle dans la détection des menaces et la sécurisation des systèmes ne fera que croître.
Conclusion
L'expérience de Kasra Rahjerdi fournit un aperçu fascinant des capacités actuelles des LLMs en matière de cybersécurité. Pour les développeurs et les entrepreneurs, ces résultats soulignent l'importance de sécuriser correctement les couches de données et de tester régulièrement les applications pour les vulnérabilités. Discutons de ton projet en 15 minutes.