Correction d'une faille critique de contrôle d'accès
Reprise seul d'une plateforme de gestion de stock en production, à la suite d'un audit de sécurité externe, pour un acteur international de la logistique
Livré en août 2026
- 281/281
- tests API au vert
- 728 Ko
- bundle livré, sous un budget bloquant de 1 Mo
- 0
- vulnérabilité de dépendance restante
Le contexte
Une plateforme de gestion de stock déjà déployée en production, servant les opérations d'un acteur international du transport et de la logistique. Architecture Java / Spring Boot côté API, Angular côté interface, livrée en continu par une chaîne GitLab CI vers un serveur dédié.
Le problème
Un audit de sécurité mené par une équipe externe a révélé une faille critique de contrôle d'accès : le serveur ne vérifiait aucun rôle. La sécurité reposait entièrement sur l'interface Angular, qui se contentait de masquer les boutons — un contrôle contournable par un simple appel direct à l'API. Un compte en lecture seule pouvait ainsi créer des rôles d'administration, créer des produits en stock et lister l'intégralité des comptes utilisateurs, comptes administrateurs compris.
Ce que j'ai fait
J'ai pris en charge seul l'ensemble des correctifs, sur une application déjà en production. La cause racine a été localisée dans la configuration Spring Security, où aucune autorisation n'était réellement appliquée, puis reprise en profondeur côté serveur — le contrôle d'accès cessant de dépendre de l'interface. Les corrections ont couvert l'API comme le front, et chaque livraison a été validée par la suite de tests automatisés et le budget de performance avant d'être poussée en production.
Le résultat
La correction a fermé une voie d'accès qui exposait la plateforme au vol de données, à l'injection et à l'exploitation directe de l'API par n'importe quel compte authentifié, si modeste soient ses droits. Les correctifs ont été déployés en production le 18 août 2026.
Technologies
- Java
- Spring Boot
- Spring Security
- Angular
- GitLab CI/CD
- OWASP ZAP
- gitleaks
- Docker
Parlons de ce que vous voulez construire
Une question, une mission, ou simplement l'envie d'échanger : écrivez-moi.