
Un outil pour collecter des captures d'écran RDP, web et VNC en un seul endroit
Un nouvel outil pour collecter des captures d’écran RDP, web et VNC en un seul endroit
Cet outil est encore en développement et devrait être largement utilisable mais n’est pas encore complet. Veuillez signaler tout bug ou demande de fonctionnalité sous forme de GitHub issues
Depuis qu’Eyewitness a récemment abandonné la prise en charge de RDP, il n’existe pas d’outil CLI fonctionnel pour capturer des captures d’écran RDP. Nessus fonctionne toujours, mais c’est pénible d’extraire les images et elles ne sont pas incluses dans le fichier d’exportation.
J’ai pensé que c’était une bonne occasion d’écrire un nouvel outil plus puissant que ceux qui existaient auparavant. Consultez la liste des fonctionnalités !
Pour les captures d’écran web, scrying dépend actuellement d’une installation de Chromium ou Google Chrome. Installez avec pacman -S chromium ou l’équivalent pour votre système d’exploitation.
Téléchargez la dernière version depuis l’onglet releases. Il y a un paquet Debian disponible pour les distributions qui l’utilisent (installez avec sudo dpkg -i scrying*.deb), et des binaires compressés pour Windows, Mac et autres Linux.
Capture une seule page web, serveur RDP ou serveur VNC :
$ scrying -t http://example.com
$ scrying -t rdp://192.0.2.1
$ scrying -t 2001:db8::5 --mode web
$ scrying -t 2001:db8::5 --mode rdp
$ scrying -t 192.0.2.2
$ scrying -t vnc://[2001:db8::53]:5901
Exécution sur un serveur headless :
# apt install xvfb # or OS equivalent
$ xvfb-run scrying -t http://example.com
Capture automatiquement des captures d’écran à partir d’une sortie nmap :
$ nmap -iL targets.txt -p 80,443,8080,8443,3389 -oX targets.xml
$ scrying --nmap targets.xml
Choisissez un répertoire de sortie différent pour les images :
$ scrying -t 2001:db8::3 --output-dir /tmp/scrying_outputs
Exécution à partir d’un fichier de cibles :
$ cat targets.txt
http://example.com
rdp://192.0.2.1
2001:db8::5
$ scrying -f targets.txt
Exécution via un proxy web :
$ scrying -t http://example.com --web-proxy http://127.0.0.1:8080
$ scrying -t http://example.com --web-proxy socks5://\[::1\]:1080
Les fichiers image sont enregistrés au format PNG dans la structure de répertoires suivante :
output
├── report.html
├── rdp
│ └── 192.0.2.1-3389.png
├── vnc
│ └── 192.0.2.1-5900.png
└── web
└── https_example.com.png
Consultez le rapport à l’adresse output/report.html !
Les fonctionnalités avec une coche à côté ont été implémentées, les autres sont à faire (TODO)
USAGE:
scrying [OPTIONS] <--file <FILE>|--nmap <NMAP XML FILE>|--nessus <NESSUS XML FILE>|--target <TARGET>>
OPTIONS:
--disable-report Don't create a report.html [aliases: no-report]
-f, --file <FILE> Targets file, one per line
-h, --help Print help information
-l, --log-file <LOG FILE> Save logs to the given file
-m, --mode <MODE> Force targets to be parsed as `web`, `rdp`, `vnc` [default:
auto] [possible values: web, rdp, vnc, auto]
--nessus <NESSUS XML FILE> Nessus XML file
--nmap <NMAP XML FILE> Nmap XML file
-o, --output <OUTPUT DIR> Directory to save the captured images in [default: output]
--proxy <PROXY> Default SOCKS5 proxy to use for connections e.g.
socks5://[::1]:1080
--rdp-domain <RDP DOMAIN> Domain name to provide to RDP servers that request one
--rdp-pass <RDP PASS> Password to provide to RDP servers that request one
--rdp-proxy <RDP PROXY> SOCKS5 proxy to use for RDP connections e.g.
socks5://[::1]:1080
--rdp-timeout <RDP TIMEOUT> Seconds to wait after last bitmap before saving an image
[default: 2]
--rdp-user <RDP USER> Username to provide to RDP servers that request one
-s, --silent Suppress most log messages
--size <SIZE> Set the size of captured images in pixels. Due to protocol
limitations, sizes greater than 65535x65535 may get truncated
in interesting ways. This argument has no effect on VNC
screenshots. [default: 1280x1024]
-t, --target <TARGET> Target, e.g. http://example.com, rdp://[2001:db8::4]
--test-import Exit after importing targets
--threads <THREADS> Number of worker threads for each target type [default: 10]
-v, --verbose Increase log verbosity
-V, --version Print version information
--vnc-auth <VNC AUTH> Password to provide to VNC servers that request one
--web-mode <WEB MODE> Choose between headless Chrom{e,ium} or native webview (GTK
on Linux, Edge WebView2 on Windows, Cocoa WebView on Mac
[default: chrome] [possible values: chrome, native]
--web-path <WEB PATH> Append a path to web requests. Provide multiple to request
each path sequentially
--web-proxy <WEB PROXY> HTTP/SOCKS Proxy to use for web requests e.g.
http://[::1]:8080
