AuthProbe: Specification-Driven, Multi-Identity Detection of Broken Object-Level Authorization in Recruitment API
AuthProbe est un scanner de sécurité black-box open-source qui exploite les spécifications OpenAPI et les tests multi-identités pour détecter automatiquement les vulnérabilités de type Broken Object-Level Authorization (BOLA) dans les API de recrutement en vérifiant l'accès aux données entre différentes identités par rapport à la propriété réelle (ground-truth).
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez l'internet comme une ville immense et bouillonnante où chaque bâtiment est un service différent et où, à l'intérieur de ces bâtiments, se trouvent des millions de petits casiers privés. Certains casiers contiennent vos photos, d'autres vos candidatures à un emploi, et d'autres encore vos dossiers médicaux. Dans cette ville, il y a des gardes de sécurité aux portes qui vérifient votre pièce d'identité pour s'assurer que vous avez votre place dans le bâtiment. Mais voici la partie délicate : le simple fait de posséder une pièce d'identité valide pour entrer dans le bâtiment ne signifie pas que vous avez le droit d'ouvrir chaque casier à l'intérieur. Une faille de « Broken Object-Level Authorization » (BOLA) est comme un garde qui vérifie votre identité à la porte d'entrée, mais qui vous laisse ensuite déambuler dans le couloir et ouvrir n'importe quel casier que vous voulez, même s'il appartient à quelqu'un d'autre. C'est un problème énorme car cela signifie qu'un étranger pourrait s'introduire et voler vos données personnelles sans casser de serrures ni forcer de verrous ; il leur demande simplement, et le système, confus, répond « oui ».
Pendant des années, les experts en sécurité ont essayé de construire de meilleurs gardes. Ils utilisent des « pare-feu » qui recherchent des méchants connus portant des masques spécifiques, et ils utilisent des « scanners » qui parcourent le bâtiment en prétendant être une seule personne. Mais ces outils passent souvent à côté du vrai danger, car un voleur n'a pas besoin d'un masque effrayant ou d'une serrure brisée ; il a juste besoin de demander un casier qui n'est pas le sien tout en portant une pièce d'identité parfaitement valide. Ce document présente un nouveau type de testeur de sécurité appelé AuthProbe. Considérez AuthProbe non pas comme un simple garde, mais comme une équipe d'espions capables de changer instantanément d'identité. Ils ne se contentent pas de traverser le bâtiment une seule fois ; ils traversent en tant qu'« Alice », voient quels casiers Alice peut ouvrir, puis changent instantanément pour devenir « Bob » et tentent d'ouvrir les casiers d'Alice. Si Bob peut ouvrir le casier d'Alice, le système présente une faille d'autorisation défectueuse, et AuthProbe la détecte immédiatement.
La grande idée du document : Le détective changeur d'identité
Le document présente AuthProbe, un outil gratuit et open-source conçu pour traquer ces failles de sécurité spécifiques dans les systèmes informatiques qui gèrent les candidatures et les données de recrutement. Les chercheurs ont conçu cet outil car ils ont remarqué que les scanners de sécurité existants échouaient à détecter un type de vol très sournois.
Voici comment fonctionne AuthProbe, en utilisant une analogie simple : Imaginez une bibliothèque où vous pouvez emprunter des livres. Un scanner de sécurité normal pourrait entrer en tant qu'« Étudiant A », emprunter un livre et dire : « D'accord, l'Étudiant A peut emprunter des livres. Tout est en ordre ! » Mais ce scanner ne sait pas si l'Étudiant A est également autorisé à emprunter le livre réservé de l'« Étudiant B ».
AuthProbe est différent. Il commence par lire le manuel de règles officiel de la bibliothèque (appelé spécification OpenAPI), qui répertorie chaque type de livre et la manière de les demander. Ensuite, il fait intervenir deux ou plusieurs « testeurs » (appelons-les Alice et Bob).
- La phase de découverte : AuthProbe demande à Alice : « Quels sont les livres dans ta pile personnelle ? » et enregistre la liste. Il fait la même chose pour Bob. Il sait maintenant exactement quels livres appartiennent à qui.
- Le changement : Ensuite, AuthProbe demande à Alice d'essayer d'emprunter un livre qui appartient à Bob.
- La preuve : Si le système de la bibliothèque dit à Alice : « Voici le livre de Bob », AuthProbe sait que quelque chose ne va pas. Il ne se contente pas de deviner ; il vérifie en demandant à Bob de récupérer ce même livre pour voir quelle est la version « réelle ». Si le livre qu'Alice a obtenu correspond au livre que possède Bob, AuthProbe a découvert une fuite de type Broken Object-Level Authorization (BOLA).
Ce que l'outil a trouvé (et ce qu'il n'a pas trouvé)
Les chercheurs ont testé AuthProbe sur deux systèmes de recrutement fictifs qu'ils ont construits dans leur laboratoire. L'un des systèmes était intentionnellement défectueux pour imiter un désastre du monde réel où les données de millions de candidats à l'emploi auraient été exposées. L'autre système était « durci », ce qui signifie qu'il a été corrigé avec les contrôles de sécurité appropriés.
- Sur le système défectueux : AuthProbe a trouvé toutes les failles implantées. Il a réussi à démontrer qu'« Alice » pouvait lire les transcriptions de chats privés et les coordonnées de « Bob ». Il a également découvert que le système utilisait des numéros simples et prévisibles (comme 1, 2, 3) pour les identifiants, ce qui signifiait qu'un voleur pouvait simplement deviner le numéro suivant pour voler plus de données.
- Sur le système corrigé : AuthProbe a trouvé zéro problème. Il a tenté de voler des données, mais le système a correctement répondu : « Non, vous ne pouvez pas voir cela. » Cela est crucial car cela signifie que l'outil ne tire pas de fausses alertes ; il ne signale un problème que lorsqu'il en est absolument certain.
Le document mesure également la vitesse de l'outil. Ils ont testé l'outil avec des systèmes contenant entre 1 et 50 éléments. Le temps nécessaire pour scanner a augmenté de manière linéaire : à mesure que le nombre d'éléments augmentait, le temps augmentait proportionnellement. Par exemple, scanner un système de 50 éléments a pris environ 114 millisecondes (une fraction infime de seconde). Cela suggère que l'outil est assez rapide pour être utilisé automatiquement chaque fois qu'une entreprise met à jour son logiciel, agissant comme une barrière de sécurité finale avant qu'une nouvelle version ne soit déployée.
Pourquoi cela importe
Le document soutient que la plupart des outils de sécurité actuels sont comme des gardes qui ne cherchent que des personnes portant des masques ou transportant des armes. Ils ratent la personne qui porte un uniforme valide mais qui essaie de voler un casier qui n'est pas le sien. AuthProbe corrige cela en utilisant l'astuce de la « multiplicité d'identités ». Il prouve que pour attraper ce type spécifique de vol, il faut être capable de prétendre être deux personnes différentes en même temps.
Les chercheurs précisent que AuthProbe est un outil de type boîte noire (black-box), ce qui signifie qu'il n'a pas besoin de voir le code interne de l'ordinateur pour fonctionner ; il communique simplement avec le système depuis l'extérieur. Cela le rend très utile pour les entreprises qui n'ont pas accès au code source du logiciel qu'elles utilisent. Cependant, le document admet également ses limites : il ne peut tester que ce qu'il peut voir et nommer. Si un système cache complètement ses listes de données ou utilise des codes secrets et imprévisibles pour les identifiants, AuthProbe pourrait ne rien trouver à tester. Il est conçu pour être un partenaire d'autres outils de sécurité, et non un remplacement.
En résumé, AuthProbe est une nouvelle méthode automatisée pour s'assurer que, lorsque vous vous connectez à un site web, vous ne pouvez voir que vos propres données, et non celles des autres. Il transforme un problème de sécurité complexe en un contrôle simple et répétable qui peut s'exécuter automatiquement, protégeant ainsi les informations privées des chercheurs d'emploi contre les voleurs sournois qui savent comment tromper les gardes.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.