Cet article explique comment développer un exploit pour la CVE-2020-3153, une élévation de privilèges à l’aide d’un « path traversal » dans le client Cisco AnyConnect pour Windows (avant la version 4.8.02042). Après une brève présentation de ce produit et de son fonctionnement, nous étudierons cette vulnérabilité et verrons comment elle peut être exploitée.
En avril 2020, les détails techniques d’une vulnérabilité (CVE-2020-3153) dans un des composants du client Cisco AnyConnect pour Windows ont été publiés [1]. Son exploitation permet à un attaquant authentifié sur Windows d’élever ses privilèges.
Dans cet article, nous commencerons par examiner comment les différents composants d’AnyConnect interagissent entre eux, puis nous décrirons succinctement la vulnérabilité étudiée avant de détailler son exploitation.
1. Présentation du fonctionnement d’AnyConnect
1.1 Généralités
Le client AnyConnect pour Windows est composé de nombreux exécutables et DLL dont :
- vpnagent.exe, l’agent central de la solution réalisant la majorité des actions. Il est exécuté comme un service en tant que LocalSystem ;
- vpnui.exe, l’interface graphique d’AnyConnect. Ce programme est exécuté avec le compte de l’utilisateur courant.
L’interface graphique d’AnyConnect et d’autres composants...
