📦 Bce Cert Skill Pkg — 百度云DNS证书申请

v1.0.0

百度智能云 DNS 自动申请/续期 Let's Encrypt SSL 证书技能。支持申请证书、查看状态、自动续期、Windows 计划任务配置。

0· 56·0 当前·0 累计
by @xzhower·MIT-0
下载技能包
License
MIT-0
最后更新
2026/4/1
0
安全扫描
VirusTotal
可疑
查看报告
OpenClaw
可疑
high confidence
代码总体匹配其描述的证书申请/续期功能,但存在多处不一致和潜在风险(未声明的凭据使用、包含硬编码上传脚本、以及会注册以 SYSTEM 身份运行的计划任务),需要额外审查与风险缓解后再使用。
评估建议
要点与建议(面向非技术用户): 1) 为什么我应该谨慎? - 虽然技能主要功能(通过百度云 DNS 自动完成 Let's Encrypt 的 DNS-01 挑战并保存证书)看起来合理,但代码包里有不必要且危险的内容:一个会将文件上传到 Gitee 的脚本(upload_skill.py),并且该脚本内嵌了一个显而易见的硬编码令牌(GITEE_TOKEN)。这意味着代码可能会把本地文件/凭据推到外部服务。并且技能元数据声称“不需要凭据”,但实际上需要百度云的 Access Key/Secret,这种不一致值得怀疑。 2) 具体风险 - 硬编码的 Gitee Token:可能是泄露的凭据,或被用来上传/公开您的文件。即使您不运行 upload_skill.py,其他人(或被攻破的系统)也可能利用它。 - 注册 SYSTEM 计划任务:如果您安装计划任务(setup_task.py install),它将在 SYSTEM 账户下定期运行,这比普通用户权限高得多。若脚本或续期钩子被篡改,可导致系统级别命令执行。 - 续期钩子(RENEW_HOOK)使用 shell=True 执行:如果配置...
详细分析 ▾
用途与能力
大部分文件(acme_client.py、bce_dns.py、main.py、scheduler.py、setup_task.py)与「使用百度云 DNS 自动申请/续期 Let's Encrypt 证书」的描述一致。但仓库包含一个 upload_skill.py 脚本(用于把文件上传到 Gitee)并内置了硬编码的 GITEE_TOKEN,这与技能的核心目的不直接相关并且可用于外部数据上传/泄露,属于不必要的附加能力。Registry metadata 声明不需要环境变量,但代码明确需要 BCE_ACCESS_KEY_ID/SECRET 等配置,存在元数据与实际需求不一致。
指令范围
SKILL.md 的运行指令本身是聚焦的(复制 config、运行 main.py/setup_task.py 等),但代码会:读取/写入磁盘(account.key、证书、日志)、执行外部命令(renew_hook 通过 subprocess.run(shell=True))、并提供可注册为每天以 SYSTEM 身份运行的 Windows 计划任务(setup_task.py 使用 /ru SYSTEM /rl HIGHEST)。这些动作超出简单「申请证书」的最小权限边界,需要管理员权限并能执行任意续期钩子命令;upload_skill.py 能向外部 API 上传仓库内容并使用内置 token,存在数据外传风险。SKILL.md 没有提示或警告用户关于 upload_skill.py,也未在 registry metadata 中列出必须的凭据。
安装机制
该技能为 instruction-only(无 install spec),不会自动从不可信 URL 下载或写入安装脚本,这是较低的安装风险。requirements.txt 列出了 requests、cryptography、bce-python-sdk,依赖合理且可验证。注意:没有自动安装步骤降低风险,但手动运行 setup_task.py 会创建系统计划任务(需要管理员),这属于用户显式操作。
凭证需求
Registry metadata 显示「无需环境变量/凭据」,但 SKILL.md 与代码都要求在 config.conf 中提供 BCE_ACCESS_KEY_ID 和 BCE_SECRET_ACCESS_KEY、DOMAIN、EMAIL 等敏感信息;这是元数据与实际行为的不一致。更严重的是,upload_skill.py 包含硬编码的 GITEE_TOKEN(敏感凭据)并会把本地文件上传到 Gitee:技能包自身携带外部凭据并可能对外传输数据,这是不成比例且未经声明的凭据使用。
持久化与权限
脚本提供了注册 Windows 计划任务的功能,安装时会使用 schtasks /ru SYSTEM /rl HIGHEST 来以 SYSTEM 身份运行 scheduler.py(每天 03:00)。虽然自动续期需要定期运行,但以 SYSTEM 运行授予了高度权限,若技能目录或续期钩子被篡改,将扩大被利用的攻击面。always=false(未强制常驻)是正确的,但注册系统级计划任务应谨慎。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.02026/4/1

bce-cert-skill-pkg 1.0.0 - 百度云 DNS 管理 Let's Encrypt SSL 证书技能的初始版本。支持自动证书签发、通配符证书、状态检查和续期。提供 Windows 计划任务集成以实现自动续期。DNS 记录在流程中自动管理和清理。通过命令行界面进行简单的配置和操作。

可疑

安装命令

点击复制
官方npx clawhub@latest install bce-cert-skill-pkg
镜像加速npx clawhub@latest install bce-cert-skill-pkg --registry https://cn.longxiaskill.com

技能文档

百度智能云 DNS 自动证书申请工具技能。

功能

  • 使用百度云 DNS API 自动申请 Let's Encrypt 免费 SSL 证书
  • 支持通配符证书(*.domain.com)
  • 自动续期(证书到期前自动续期)
  • Windows 计划任务配置
  • DNS 记录自动清理

快速开始

1. 配置

复制 config.conf.exampleconfig.conf,填入以下信息:

BCE_ACCESS_KEY_ID=你的AccessKey
BCE_SECRET_ACCESS_KEY=你的SecretKey
DOMAIN=你的域名(如 example.com)
EMAIL=你的邮箱
CERT_DIR=证书保存目录

2. 申请证书

python main.py issue # 申请证书
python main.py status # 查看证书状态
python main.py renew # 续期
python main.py force # 强制重新申请

3. 配置自动续期

python setup_task.py install # 注册 Windows 计划任务
python setup_task.py status # 查看任务状态
python setup_task.py uninstall # 删除任务

代码位置

项目代码:https://gitee.com/x-hower/bce-cert

注意事项

  • 域名必须在百度云 DNS 托管
  • API 密钥保存在 config.conf 中,不要上传到 Git
  • Let's Encrypt 有速率限制(每周最多 5 次重复申请)
  • 测试时可设置 STAGING=true 使用测试环境
数据来源ClawHub ↗ · 中文优化:龙虾技能库