安全决策报告

x-entrepreneur-rank

功能正常的X(Twitter)企业家榜单工具,存在文档不完整和隐式外部依赖等轻微瑕疵,无恶意行为证据。

安装决策优先 来源: ClawHub 扫描时间: 2026/9/23
文件 6
IOC 6
越权项 1
发现 3

为什么得出这个结论

1/4 个维度触发
阻止
声明与实际能力

发现 1 项声明之外的能力或越权行为。

复核
隐藏执行与外联

提取到 6 个一般风险产物,需要结合上下文判断。

通过
攻击链与高危发现

没有形成明确的恶意路径。

通过
依赖与供应链卫生

依赖结构存在,但暂未看到明显高危告警。

风险分是怎么被拉高的

subprocess 调用未声明 +10

fetch_rank.py 和 generate_report.py 使用 subprocess 调用其他脚本和打开浏览器,SKILL.md 未声明 shell 权限需求

隐式外部 CDN 依赖 +5

generate_report.py 引用 html2canvas CDN,SKILL.md 声称仅用标准库

浏览器自动打开 +5

report 生成后默认调用 xdg-open/open 自动打开浏览器,用户需显式加 --no-open 才能禁用

最关键的证据

中危 权限提升

subprocess 调用未在文档中声明

fetch_rank.py 第 128 行使用 subprocess 调用 generate_report.py,generate_report.py 第 218-224 行使用 subprocess 打开浏览器。SKILL.md 未声明 shell/EXEC 权限需求。

scripts/fetch_rank.py:128
在 SKILL.md 文档中补充说明会调用 subprocess 启动子脚本和浏览器程序。
中危 供应链

隐式外部 CDN 依赖未声明

generate_report.py 生成的 HTML 引用 html2canvas CDN (https://cdn.jsdelivr.net/npm/[email protected]/dist/html2canvas.min.js),用于导出图片功能。SKILL.md 声称「使用 Python 标准库,无需安装第三方包」。

scripts/generate_report.py:205
在文档中声明生成报告需要访问 jsdelivr CDN,或将 html2canvas 打包到本地。
低危 文档欺骗

浏览器自动打开行为缺少提示

generate_report.py 在不使用 --no-open 参数时会自动调用 xdg-open/open 打开生成的 HTML 报告。这一行为在 SKILL.md 中仅作为隐式功能存在,未在能力声明中明确。

scripts/generate_report.py:218
在文档使用说明中明确提及报告会自动在浏览器中打开,并提醒可用 --no-open 禁用。

声明能力 vs 实际能力

文件系统 通过
声明 WRITE
→
推断 WRITE
写入 JSON/HTML 到本地,符合文档描述
网络访问 通过
声明 READ
→
推断 READ
仅访问 redfox.hk API,与文档一致
命令执行 阻止
声明 NONE
→
推断 WRITE
fetch_rank.py:128 subprocess调用; generate_report.py:218-224 浏览器打开
环境变量 通过
声明 READ
→
推断 READ
仅读取 REDFOX_API_KEY 用于 API 认证

可疑产物与外联

中危 外部 URL
https://redfox.hk/settings/api-keys?source=clawhub

SKILL.md:33

中危 外部 URL
https://redfox.hk/story/api/x/hotAccount/rankList

references/api_docs.md:10

中危 外部 URL
https://redfox.hk/story/api/x/userTimeline

references/api_docs.md:46

中危 外部 URL
https://clawhub.ai/user/redfox-data

skill-card.md:9

中危 外部 URL
https://clawhub.ai/redfox-data/skills/x-entrepreneur-rank

skill-card.md:40

提示 邮箱
[email protected]

SKILL.md:90

依赖与供应链

包名版本来源漏洞备注
urllib stdlib python 否 标准库,无风险
html2canvas 1.4.1 jsdelivr CDN 否 HTML 报告图片导出用,运行时加载

文件构成

6 个文件 · 1109 行
Python 3 个文件 · 812 行Markdown 3 个文件 · 297 行
需关注文件 · 5
scripts/generate_report.py Python · 395 行
隐式外部 CDN 依赖未声明 · 浏览器自动打开行为缺少提示
scripts/fetch_rank.py Python · 282 行
subprocess 调用未在文档中声明
SKILL.md Markdown · 165 行
https://redfox.hk/settings/api-keys?source=clawhub · [email protected]
references/api_docs.md Markdown · 74 行
https://redfox.hk/story/api/x/hotAccount/rankList · https://redfox.hk/story/api/x/userTimeline
skill-card.md Markdown · 58 行
https://clawhub.ai/user/redfox-data · https://clawhub.ai/redfox-data/skills/x-entrepreneur-rank
其他文件 · fetch_tweets.py

安全亮点

代码结构清晰,无代码混淆、Base64 执行等反分析特征
网络请求仅限声明的 redfox.hk API,无其他外部通信
API 密钥仅用于认证,不外传、不记录日志
无敏感路径访问(~/.ssh, ~/.aws, .env 等)
无凭证收割、环境变量遍历、文件外传等恶意行为
subprocess 调用与声明功能相关(生成报告、打开浏览器),有合理解释
所有异常处理完善,失败账号跳过不中断整批