Skill Trust Decision

ubuntu-pro-auditor

代码仅是简单的 Ubuntu Pro 状态检查器(kernel/ESM/Livepatch/危险模块),行为合法且无恶意操作,但 SKILL.md 过度声明了大量未实现的企业级功能(AI CVE 关联、合规引擎、修复编排、仪表板、集成等),存在文档欺骗。

Install decision first Source: ClawHub Scanned: Jun 20, 2026
Files 3
Artifacts 0
Violations 1
Findings 3

Why this conclusion was reached

1/4 dimensions flagged
Block
Declared vs actual capability

1 undeclared or violating capabilities were inferred.

Pass
Hidden execution and egress

No obvious high-risk egress or execution signals were found.

Pass
Attack chain and severe findings

There is no explicit malicious chain in the report.

Review
Dependencies and supply chain hygiene

Dependency information is incomplete, so supply-chain confidence stays limited.

What drove the risk score up

文档-行为严重不符 +20

SKILL.md 声称 AI CVE 关联引擎、自动化修复编排、合规仪表板、Slack/Telegram 集成、Fleet 管理、PDF 报告等 enterprise 功能,但 main.py 仅 58 行代码,只做 uname/pro/lsmod/canonical-livepatch 四个系统命令调用,无任何企业功能实现

subprocess 调用超出声明 +5

allowed-tools 未声明 Bash,但代码使用 subprocess 执行 shell 命令(uname/pro/lsmod/livepatch),违反声明-行为一致性原则

Most important evidence

Medium Doc Mismatch

SKILL.md 过度声明未实现的企业级功能

SKILL.md 声称具备完整的 enterprise 合规平台能力(AI CVE 关联、多数据源关联、自动化修复编排、board-ready 合规仪表板、Slack/Telegram/PagerDuty 集成、Fleet 100+ 服务器管理、自定义策略引擎、PDF 报告生成),但实际 main.py 仅 58 行,只做本地系统命令调用,无任何对应实现。代码与文档能力严重不符。

SKILL.md:1
将 SKILL.md 重写为准确描述:仅声明 CVE 扫描、ESM 状态检查、Livepatch 状态检查、危险内核模块检测四项功能
Low Priv Escalation

subprocess 调用未在 allowed-tools 中声明

main.py 使用 subprocess.run 执行 uname/pro/lsmod/canonical-livepatch 等命令,属于 shell:WRITE 级别操作,但 allowed-tools 未声明 Bash 工具。实际调用的命令均为本地系统信息查询,权限合理,但与声明不符。

main.py:12
在 allowed-tools 中声明 Bash(shell:WRITE),或重构为 Read 只读方式
Low Doc Mismatch

skill.json pricing 信息缺失字段

skill.json 的 free plan 缺少 price 字段,与 starter/professional 不一致。此外 skill.json 的 features 字段与 main.py 实际功能匹配度更高(ESM check, Livepatch status, dangerous module detection),进一步印证 SKILL.md 存在过度营销。

skill.json:1
补充 free plan 的 price 字段(建议为 0)

Declared capability vs actual capability

Filesystem Pass
Declared NONE
→
Inferred NONE
main.py — 代码未访问文件系统
Network Pass
Declared NONE
→
Inferred NONE
main.py — 代码无网络请求,仅调用本地 CLI 工具
Shell Block
Declared NONE
→
Inferred READ
main.py:12,15,19 — subprocess.run 调用 uname/pro/lsmod/livepatch 但 allowed-tools 未声明 Bash
Environment Pass
Declared NONE
→
Inferred NONE
main.py — 未遍历 os.environ
Skill Invoke Pass
Declared NONE
→
Inferred NONE
无技能调用

Suspicious artifacts and egress

No obvious IOC was extracted.

Dependencies and supply chain

There are no structured dependency warnings.

File composition

3 files · 208 lines
Markdown 1 files · 98 linesPython 1 files · 58 linesJSON 1 files · 52 lines
Files of concern · 3
SKILL.md Markdown · 98 lines
SKILL.md 过度声明未实现的企业级功能
main.py Python · 58 lines
subprocess 调用未在 allowed-tools 中声明
skill.json JSON · 52 lines
skill.json pricing 信息缺失字段

Security positives

代码极其简洁(58行),逻辑清晰可审计
无 Base64/eval/混淆代码
无外部网络请求,无数据外传
无凭证收割、环境变量遍历
无文件写入或持久化操作
调用的命令(uname/pro/lsmod/canonical-livepatch)均为 Ubuntu Pro 合法的本地诊断工具
依赖仅标准库(json/subprocess/sys/datetime),无第三方依赖
预扫描未发现 IOC(IP、URL、哈希)
有超时保护(timeout=5/10)防止命令挂起