一款用于在一个地方收集 RDP、Web 和 VNC 屏幕截图的新工具
该工具仍在开发中,应该大部分可用,但尚未完成。请将任何错误或功能请求作为 GitHub 问题提交
由于 Eyewitness 最近放弃了对 RDP 的支持,因此没有可用的 CLI 工具来捕获 RDP 屏幕截图。 Nessus 仍然可以工作,但是导出图像很痛苦,而且它们不包含在导出文件中。
我认为这是编写一个比以前的工具更强大的新工具的好机会。查看功能列表!
对于网页截图,目前的探查取决于是否安装了 Chromium 或 Google Chrome。使用pacman -S chromium
或适用于您的操作系统的同等版本进行安装。
从版本选项卡下载最新版本。有一个可供使用它们的发行版使用的 Debian 软件包(使用sudo dpkg -i scrying*.deb
安装),以及适用于 Windows、Mac 和其他 Linux 的压缩二进制文件。
获取单个网页、RDP 服务器或 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
在无头服务器上运行:
# apt install xvfb # or OS equivalent $ xvfb-run scrying -t http://example.com
自动从 nmap 输出中抓取屏幕截图:
$ nmap -iL targets.txt -p 80,443,8080,8443,3389 -oX targets.xml $ scrying --nmap targets.xml
为图像选择不同的输出目录:
$ scrying -t 2001:db8::3 --output-dir /tmp/scrying_outputs
从目标文件运行:
$ cat targets.txt http://example.com rdp://192.0.2.1 2001:db8::5 $ scrying -f targets.txt
通过网络代理运行:
$ scrying -t http://example.com --web-proxy http://127.0.0.1:8080 $ scrying -t http://example.com --web-proxy socks5://[::1]:1080
图像文件以 PNG 格式保存在以下目录结构中:
output ├── report.html ├── rdp │ └── 192.0.2.1-3389.png ├── vnc │ └── 192.0.2.1-5900.png └── web └── https_example.com.png
在output/report.html
查看报告!
旁边有勾号的功能已实现,其他为 TODO
✔️ 自动决定输入是否应被视为网址或 RDP 服务器
✔️ 如果输出目录尚不存在,则自动创建
✔️ 使用源自主机/IP 的一致且唯一的文件名保存图像
✔️ 完全支持 IPv6 和 IPv4 文字以及主机名
✔️ 从文件中读取目标并确定它们是 RDP 还是 HTTP 或使用提示
✔️ 从 Nmap 和 Nessus 输出中智能解析目标
✔️ HTTP - 使用平台 Web 渲染器,可选择提供在每个服务器上尝试的路径
✔️ 生成 HTML 报告以便轻松浏览结果
✔️ VNC - 支持发送身份验证
✔️ RDP - 大部分工作正常,不支持“普通 RDP”模式,请参阅 #15
✔️ 自定义捕获图像的大小(Web 和 RDP;VNC 通常不允许这样做)
代理支持 - SOCKS 适用于 RDP。 Web 目前已损坏,等待将 set_proxy 命令包含在 webkit2gtk #11 中
视频流 - 跟踪问题 #5
文件名中的时间戳选项
从 msf services -o csv 输出读取目标
对 RDP 用户名进行 OCR,无论是实时用户名还是图像目录
NLA/auth 来测试凭证
解析 Dirble JSON 输出以获取整个网站的屏幕截图 - 等待 nccgroup/dirble#51
完整的跨平台支持 - 在 Linux 和 Windows 上经过测试; Mac 支持已被取消优先级,等待截取可可 Web 视图的好主意
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