vigilath-geo
Vigilath GEO 技能本体代码无恶意行为,但安装方式存在供应链风险:curl|bash 管道执行远程脚本,且运行时从外部域名下载额外技能文件,域名被入侵时可直接向宿主注入任意 SKILL.md。
Why this conclusion was reached
2/4 dimensions flaggedDeclared resources and inferred behavior are broadly aligned.
2 high-risk artifacts or egress signals were extracted.
The report includes 4 attack-chain steps and 2 severe findings.
Dependencies are present but no obvious high-risk issue stands out.
Attack Chain
Entry · SKILL.md:5
Escalation · install.sh:5
Escalation · install.sh:120
Impact · install.sh:5
What drove the risk score up
install.sh:5,19 — 经典危险模式,域名被入侵时安装过程可被完全劫持
install.sh:120-127 — 循环从 vigilath.cn 下载其他 SKILL.md,不自包含
install.sh:168-173 — 写入 ~/.vigilath/config,带 token 持久化
geo_client.py 需调用外部 API,属于正常业务需要
Most important evidence
curl|bash 管道安装存在域名劫持风险
SKILL.md 和 install.sh 首行都展示了 `curl -fsSL https://vigilath.cn/skill/install.sh | bash` 命令。这是已知的危险模式:当 vigilath.cn 域名被入侵或 DNS 被劫持时,安装过程可被完全替换,攻击者可向宿主注入任意 SKILL.md 和代码。
install.sh:5 运行时从外部域名下载额外技能文件
install.sh 的 fetch() 函数在安装时会从 vigilath.cn 动态下载其他技能(site-audit, seo-audit 等)的 SKILL.md 文件。安装过程不自包含,依赖外部域名持续可用且未被篡改。
install.sh:120 安装脚本写入配置文件到用户目录
install.sh 将 API token 和 base URL 写入 ~/.vigilath/config(权限 600)。这是凭证持久化行为,虽有合理解释(授权需要),但扩大了凭证的暴露面。
install.sh:168 Declared capability vs actual capability
geo_client.py:91-98 所有 API 调用均有正当业务用途 install.sh:168-173, geo_client.py:62-67 写配置有合理用途 geo_client.py:44-45 仅读取 VIGILATH_* 相关变量 Suspicious artifacts and egress
curl -fsSL https://vigilath.cn/skill/install.sh | bash install.sh:5
curl | bash install.sh:19
https://vigilath.cn/api/agent/v1 README.md:178
https://vigilath.cn/skill/install.sh install.sh:5
https://vigilath.cn install.sh:13
https://vigilath.cn/skill install.sh:26
https://clawhub.ai/user/dz1995 skill-card.md:9
https://clawhub.ai/dz1995/skills/vigilath-geo skill-card.md:39
Dependencies and supply chain
| Package | Version | Source | Known vuln | Notes |
|---|---|---|---|---|
| 无第三方依赖 | N/A | pip | No | geo_client.py 使用纯标准库,无供应链漏洞传递风险 |
File composition
README.md install.sh skill-card.md