Source : Push Security. Dans cette analyse, l’éditeur décrit « ConsentFix », une nouvelle campagne de phishing qui combine un leurre ClickFix dans le navigateur et l’abus du flux d’autorisation OAuth 2.0 via l’app première partie Microsoft Azure CLI pour détourner des consentements et obtenir des jetons d’accès.
L’attaque est entièrement « browser-native » : la victime visite un site compromis trouvé via Google Search, passe un faux challenge Cloudflare Turnstile, puis suit des instructions qui ouvrent une authentification Microsoft légitime. Après sélection/connexion, le navigateur est redirigé vers localhost avec une URL contenant un code d’autorisation OAuth. La victime copie/colle cette URL dans la page malveillante, ce qui permet à l’attaquant d’échanger le code et de lier l’Azure CLI de l’attaquant au compte Microsoft de la victime. Résultat : prise de contrôle efficace du compte sans hameçonnage d’identifiants ni passage de MFA, et contournement des méthodes résistantes au phishing (ex. passkeys) lorsque la session est déjà ouverte.
La campagne cible des comptes Microsoft en abusant de l’app Azure CLI, implicitement approuvée dans Entra ID. Les apps premières parties bénéficient de permissions étendues et d’exemptions (pas d’approbation admin requise, scopes internes/legacy, etc.), rendant cette voie plus exploitable que l’intégration d’apps tierces. Le leurre est servi depuis des sites légitimes compromis et recourt à des mécanismes anti-analyse avancés : filtrage par domaine/email, blocage IP synchronisé entre sites, chargement conditionnel de JS, et redirections vers la navigation normale si les conditions ne sont pas réunies.
Côté traces et détection, Push note que les événements d’authentification apparaissent comme des connexions à « Microsoft Azure CLI » depuis l’IP légitime de la victime (interactive). Des connexions non interactives post-compromission proviennent ensuite d’IP distinctes (observées aux États‑Unis et en Indonésie) et accèdent à des ressources telles que Windows Azure Active Directory ou Microsoft Intune Checkin. Des différences de ressources consultées peuvent aider les investigations. Les attaquants s’appuient sur des scopes legacy pour l’évasion, d’où l’intérêt d’avoir AADGraphActivityLogs activé pour repérer, par exemple, de l’énumération AD. Références utiles pour la chasse: Application ID Azure CLI 04b07795-8ddb-461a-bbee-02f9e1bf7b46 et Resource ID 00000002-0000-0000-c000-000000000000.
IoCs
- Domaines (chargement final du phishing) :
- hxxps://trustpointassurance.com/
- hxxps://fastwaycheck.com/
- hxxps://previewcentral.com
- IPs observées dans les logs Azure après compromission :
- 12.75.216.90
- 182.3.36.223
- 12.75.116.137
TTPs (extraits)
- 🚩 Phishing de consentement OAuth + schéma ClickFix (copier/coller d’une URL localhost contenant un code OAuth)
- 🎯 Ciblage Microsoft/Entra via l’app première partie Azure CLI (permissions implicites, scopes legacy)
- 🕵️ Délivrance via Google Search (watering hole/malvertising) et sites compromis à forte réputation
- 🧩 Faux Cloudflare Turnstile avec filtrage par email/domaine, anti-bot et anti-analyse (IP blocking synchronisé, JS conditionnel)
- 🔁 Aucune saisie d’identifiants sur page de phishing ; authentification Microsoft légitime puis exfiltration du code d’autorisation
Conclusion : il s’agit d’une analyse de menace visant à documenter une nouvelle technique « ConsentFix », ses mécanismes, ses artefacts et des points d’observation pour la détection.
🧠 TTPs et IOCs détectés
TTP
[‘Phishing de consentement OAuth + schéma ClickFix (copier/coller d’une URL localhost contenant un code OAuth)’, ‘Ciblage Microsoft/Entra via l’app première partie Azure CLI (permissions implicites, scopes legacy)’, ‘Délivrance via Google Search (watering hole/malvertising) et sites compromis à forte réputation’, ‘Faux Cloudflare Turnstile avec filtrage par email/domaine, anti-bot et anti-analyse (IP blocking synchronisé, JS conditionnel)’, ‘Aucune saisie d’identifiants sur page de phishing ; authentification Microsoft légitime puis exfiltration du code d’autorisation’]
IOC
{‘domains’: [‘hxxps://trustpointassurance.com/’, ‘hxxps://fastwaycheck.com/’, ‘hxxps://previewcentral.com’], ‘ips’: [‘12.75.216.90’, ‘182.3.36.223’, ‘12.75.116.137’]}
🔗 Source originale : https://pushsecurity.com/blog/consentfix