Imagine : tu confies toutes les clĂ©s de la baraque Ă un super coffre-fort numĂ©rique censĂ© garder la maison. La promesse de OneLogin đ€. Puis, un matin, tu dĂ©couvres quâun tiroir â celui qui devrait ĂȘtre scellĂ© Ă double tour â renvoyait ses clĂ©s en clair via une simple requĂȘte API. Eh bien, bienvenue dans lâĂ©pisode CVE-2025-59363, protagoniste principal : One Identity OneLogin.
đ„ Le cĆur du problĂšme (en clair, pas comme les secrets)
Avant la version 2025.3.0, une requĂȘte GET Apps API v2 retournait⊠le client_secret OIDC dâune app. Oui, le secret qui doit rester confidentiel â celui quâon cache dans un coffre et quâon change avec une tronçonneuse en cas de doute â Ă©tait renvoyĂ© comme si câĂ©tait lâURL dâun logo. ConcrĂštement : un acteur malveillant disposant dâidentifiants API valides pouvait lister les applications et extraire leurs client secrets, puis les utiliser pour usurper des applications, gĂ©nĂ©rer des tokens, pivoter et faire des dĂ©gĂąts façon domino.
OneLogin a corrigĂ© ça dans le release 2025.3.0 et affirme nâavoir aucune preuve dâexploitation in the wild. Magnifique timing : patch, communiquĂ©, et tout le monde respire (relativement). Mais âaucune preuveâ ne veut pas dire âimpossibleâ. Les logs manquent parfois, les milieux underground ont le chic pour rester discrets, et les attaquants adorent les secrets opportuns.
đ§š Pourquoi câest plus quâun simple vilain bug
- Federation down the drain : quand tu voles un client_secret OIDC, tu peux prĂ©tendre ĂȘtre une appli de confiance â Single Sign-On, accĂšs aux SaaS, automatisations, tout y passe. Lâattaquant nâa plus besoin dâun mot de passe humain : il se fait passer pour lâapplication elle-mĂȘme.
- Effet cascade : beaucoup dâintĂ©grations cloud sâappuient sur les mĂȘmes mĂ©canismes OIDC/SAML â compromission dâun tenant = compromission potentielle dâun catalogue dâapplis.
- Post-exploit friendly : lâinfo circulait dĂ©jĂ autour de OneLogin (AD Connector et autres joyeusetĂ©s rĂ©vĂ©lĂ©es plus tĂŽt cette annĂ©e), donc ce nâest pas une premiĂšre surprise. On a eu dâautres incidents oĂč des clĂ©s ou signing keys ont fui et permis la forge de JWTs valides. Bref, lâĂ©cosystĂšme a Ă©tĂ© secouĂ© plusieurs fois cette annĂ©e.
đ ïž Le plan de bataille (pratique, pas spirituel)
Si tu gĂšres un tenant OneLogin (ou quelquâun dans ton SI en gĂšre un), fais ceci tout de suite â oui, maintenant, pas âaprĂšs le cafĂ©â :
- Applique la mise Ă jour 2025.3.0 si ce nâest pas dĂ©jĂ fait. Câest la correction officielle qui empĂȘche lâexposition systĂ©matique des client_secrets.
- Rotation forcĂ©e de tous les client_secrets OIDC et des API keys ayant accĂšs aux endpoints dâadministration. Traite-les comme compromis tant que tu nâes pas sĂ»r Ă 100 %.
- Audit des logs OIDC/SAMLÂ : recherche dâanomalies â appels inhabituels au endpointÂ
/api/2/apps
, IP suspectes, tokens gĂ©nĂ©rĂ©s hors heures ouvrĂ©es, ou usages dâID client insĂ©rĂ©s lĂ oĂč ils nâauraient pas dĂ» lâĂȘtre. - Bloque lâusage dâAPI keys Ă privilĂšges larges : principe du moindre privilĂšge. Si un token/API key nâa pas besoin de lister toutes les apps, ne lui donne pas ce droit.
- MFA everywhere : mĂȘme si un attaquant a des secrets dâappli, limiter les possibilitĂ©s dâactions humaines via MFA diminue lâĂ©chappĂ©e belle.
- Plan de rĂ©ponse : prĂ©parer playbooks â revocation dâAPI keys, rotation, notification des tiers, vĂ©rification des intĂ©grations critiques.
âïž Conclusion â un peu de morale (et de colĂšre contenue)
Il y a une ironie qui pique : on paie pour des solutions dâIdentity qui sont censĂ©es ĂȘtre le rempart ultime, puis on dĂ©couvre que la merde passe parfois par la porte dâadministration. La leçon ? Ne jamais centraliser la confiance sans multiplier les garde-fous : logs, rotation, principe du moindre privilĂšge, surveillance et, oui, un vrai playbook dâincident. OneLogin a patchĂ© â trĂšs bien â mais la responsabilitĂ© de la sĂ©curitĂ© finale revient Ă toi, Ă moi, Ă nous qui assemblons ces services en production.