安全决策报告

precc

安装方式使用危险的 curl|bash 远程执行模式,等效于 supply_chain 攻击路径;PreToolUse hook 可在执行前重写 Bash 命令,具备等效 shell:WRITE 能力但文档未充分警示风险范围。

安装决策优先 来源: ClawHub 扫描时间: 21 天前
文件 3
IOC 5
越权项 2
发现 5
最直接的威胁证据
严重 供应链
curl|bash 远程脚本执行 — 等效供应链攻击

安装命令 'curl -fsSL https://peria.ai/install.sh | bash' 会在目标机器上无条件执行远程服务器返回的任意 shell 脚本。与 skill-card.md 自身标注的缓解建议('prefer a version-pinned, inspectable, checksum-verified installer')直接矛盾。若 peria.ai 域名被劫持或服务器被攻破,攻击者可在用户机器上获得完全代码执行权。

SKILL.md:101

为什么得出这个结论

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

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

阻止
隐藏执行与外联

提取到 1 个高危 IOC 或外联信号。

阻止
攻击链与高危发现

报告包含 4 步攻击链,另有 2 项高危或严重发现。

复核
依赖与供应链卫生

发现 1 项需要关注的依赖或供应链线索。

攻击链

01
用户通过 curl|bash 安装 skill,远程脚本下载并执行

初始入口 · SKILL.md:101

02
install.sh 从 peria.ai 下载 precc 预编译二进制并写入 ~/.local/bin/

权限提升 · SKILL.md:100

03
hook 写入 ~/.claude/settings.json,precc-hook 持久化为 PreToolUse 拦截点

权限提升 · SKILL.md:98

04
precc-hook 在每次 Bash 调用前重写命令,攻击者可借此注入任意命令(如 exfil env、下载 payload)

最终危害 · SKILL.md:98

风险分是怎么被拉高的

curl|bash 远程执行安装 +35

SKILL.md:101 使用 curl -fsSL https://peria.ai/install.sh | bash,违背 skill-card.md 自身推荐的版本锁定校验安装方式

PreToolUse hook 命令重写 +20

precc-hook 以 PreToolUse 身份运行,可重写任意 Bash 命令后才执行,行为等同于 shell:WRITE

第三方二进制执行 +10

skill 本身为 Rust 二进制,非开源脚本,无法审计源码,来源 peria.ai 非标准分发渠道

最关键的证据

严重 供应链

curl|bash 远程脚本执行 — 等效供应链攻击

安装命令 'curl -fsSL https://peria.ai/install.sh | bash' 会在目标机器上无条件执行远程服务器返回的任意 shell 脚本。与 skill-card.md 自身标注的缓解建议('prefer a version-pinned, inspectable, checksum-verified installer')直接矛盾。若 peria.ai 域名被劫持或服务器被攻破,攻击者可在用户机器上获得完全代码执行权。

SKILL.md:101
使用 GitHub Releases 页面直接下载版本固化的压缩包,校验 SHA256 后解压。绝不通过管道执行远程脚本。
高危 代码执行

PreToolUse Hook 可在命令执行前重写任意 Bash 命令

precc-hook 注册为 Claude Code 的 PreToolUse hook,运行在命令实际执行之前,可对任何 Bash 调用进行覆写(包括替换命令、注入参数)。这意味着即使最终执行的命令是用户可见的,hook 层面的修改对用户完全不透明。

SKILL.md:98
安装前审查 precc-hook 的行为,确认其不会静默注入额外命令。建议 fork 源码自行编译而非使用预编译二进制。
中危 权限提升

修改全局 Claude Code 配置

安装后向 ~/.claude/settings.json 注入 PreToolUse hook 入口,将 precc-hook 设为所有 Bash 命令的前置审查点,形成持久化劫持。

SKILL.md:87
安装前备份 ~/.claude/settings.json,安装后审查 diff,确认仅注入了 precc 相关条目。
中危 供应链

pip 依赖 cocoindex-code 无版本锁定

SKILL.md:64 提及 pipx install cocoindex-code,未指定具体版本,pip 默认拉取 latest,存在依赖替换风险。

SKILL.md:64
指定精确版本:pipx install cocoindex-code==x.y.z,审查 PyPI 发布历史确认无恶意版本。
低危 文档欺骗

README 声称 SHA256 校验但安装命令无体现

SKILL.md:100 声称 install.sh 会验证 SHA256,但实际的 curl|bash 命令不传递任何校验参数,用户无法在执行前独立验证。

SKILL.md:100
将校验步骤前置,示例:先下载 install.sh 审查,再执行;或提供独立的校验命令。

声明能力 vs 实际能力

命令执行 阻止
声明 NONE
→
推断 WRITE
SKILL.md:101 — 通过 curl|bash 安装二进制;PreToolUse hook 重写 Bash 命令
文件系统 通过
声明 WRITE
→
推断 WRITE
SKILL.md — 修改 ~/.claude/settings.json,安装 ~/.local/bin/precc* 二进制,写入 ~/.local/share/precc/*.db
环境变量 通过
声明 READ
→
推断 READ
SKILL.md metadata — 读取 PRECC_LICENSE_KEY
技能调用 阻止
声明 NONE
→
推断 WRITE
SKILL.md — hook 自动注入并重写命令,等效于劫持 Claude Code 工具调用流程

可疑产物与外联

严重 危险命令
curl -fsSL https://peria.ai/install.sh | bash

SKILL.md:101

中危 外部 URL
https://peria.ai/install.sh

SKILL.md:101

中危 外部 URL
https://clawhub.ai/skills/precc

SKILL.md:179

中危 外部 URL
https://clawhub.ai/user/yijunyu

skill-card.md:9

中危 外部 URL
https://clawhub.ai/yijunyu/skills/precc

skill-card.md:39

依赖与供应链

包名版本来源漏洞备注
precc unspecified binary (peria.ai/install.sh) 否 无版本号,通过 curl|bash 安装,源码闭源
cocoindex-code * pip/pipx 否 无版本锁定,默认拉取 latest
SQLCipher bundled precc binary 否 加密 telemetry 数据库,由 precc 二进制使用

文件构成

3 个文件 · 247 行
Markdown 2 个文件 · 242 行JSON 1 个文件 · 5 行
需关注文件 · 2
SKILL.md Markdown · 181 行
curl|bash 远程脚本执行 — 等效供应链攻击 · PreToolUse Hook 可在命令执行前重写任意 Bash 命令 · 修改全局 Claude Code 配置 · pip 依赖 cocoindex-code 无版本锁定 · README 声称 SHA256 校验但安装命令无体现 · curl -fsSL https://peria.ai/install.sh | bash · https://peria.ai/install.sh · https://clawhub.ai/skills/precc
skill-card.md Markdown · 61 行
https://clawhub.ai/user/yijunyu · https://clawhub.ai/yijunyu/skills/precc
其他文件 · _meta.json

安全亮点

counterfactual telemetry 明确标注为 opt-in 且默认关闭(Dormant by default)
skill-card.md 中包含 Known Risks and Mitigations 章节,对 hook 风险有自知
数据存储在本地 SQLite(~/.local/share/precc/),非云端直连
声称 k-anonymity 设计和重标识抵抗机制(daily-rotated salt)