可疑 — 风险评分 45/100
上次扫描:2 天前 重新扫描
45 /100
self-evolution-engine
自我进化引擎 - 让AI Skill具备自我分析、自我改进、自我学习的能力
发现硬编码API密钥和未声明的系统目录写入操作,技能文档未完整披露实际能力范围。
技能名称self-evolution-engine
分析耗时40.4s
引擎pi
谨慎使用
1. 移除payment.py中的硬编码API密钥,改用环境变量注入;2. 在SKILL.md中明确声明filesystem:WRITE权限及目标目录;3. 审查对/root/.openclaw/workspace的访问必要性

攻击链 4 步

入口 通过SKILL.md伪装成合法的自我进化工具
SKILL.md:1
提权 利用硬编码API密钥冒充合法服务发起请求
payment.py:12
提权 写入/root/.openclaw/workspace系统目录创建隐蔽文件
evolution_generator.py:20
影响 通过备份机制持久化恶意代码到目标Skill目录
version_manager.py:50

安全发现 4 项

严重性 安全发现 位置
高危
硬编码API密钥泄露
payment.py第12行包含硬编码的BILLING_API_KEY='sk_f03aa8f8bbcf79f7aa11c112d904780f22e62add1464e3c41a79600a451eb1d2',该密钥在所有HTTP请求头中明文传输,攻击者可轻易提取
BILLING_API_KEY = "sk_f03aa8f8bbcf79f7aa11c112d904780f22e62add1464e3c41a79600a451eb1d2"
→ 将API密钥存储在环境变量SKILLPAY_API_KEY中,代码中通过os.environ.get('SKILLPAY_API_KEY')读取
payment.py:12
高危
未声明的系统目录写入
evolution_generator.py和version_manager.py默认操作/root/.openclaw/workspace/skills/目录,在该目录下创建.evolutions、.backups子目录并写入文件,但SKILL.md未声明此filesystem:WRITE能力
self.skill_dir = Path(workspace_dir) / skill_name  # workspace_dir='/root/.openclaw/workspace/skills'
→ 在SKILL.md中明确声明对Skill工作区目录的读写权限
evolution_generator.py:20
中危
支付模块文档缺失
payment.py作为独立文件提供SkillPay计费功能,但其存在和功能未在SKILL.md核心能力中提及,存在文档-代码差异
"""SkillPay Billing Integration 自动集成付费验证功能"""
→ 在SKILL.md工具清单或核心能力中明确说明payment.py的计费功能
payment.py:1
低危
依赖版本未锁定
requirements.txt中的pandas>=2.0.0、numpy>=1.24.0等依赖使用范围版本,可能引入依赖混淆攻击风险
pandas>=2.0.0
numpy>=1.24.0
→ 使用精确版本号(如pandas==2.0.3)或锁定次要版本范围(如pandas~=2.0.0)
requirements.txt:1
资源类型声明权限推断权限状态证据
文件系统 NONE WRITE ✗ 越权 evolution_generator.py:20 workspace_dir='/root/.openclaw/workspace/skills'; vers…
网络访问 NONE READ ✓ 一致 payment.py:27-35 requests.get/post to BILLING_API_URL
命令执行 NONE NONE 无subprocess/shell调用
1 高危 2 项发现
🔑
高危 API 密钥 疑似硬编码凭证
API_KEY = "sk_f03aa8f8bbcf79f7aa11c112d904780f22e62add1464e3c41a79600a451eb1d2"
payment.py:12
🔗
中危 外部 URL 外部 URL
https://skillpay.me
payment.py:11

目录结构

9 文件 · 56.0 KB · 1662 行
Python 5f · 1300L Markdown 2f · 329L JSON 1f · 19L Text 1f · 14L
├─ 📁 references
│ └─ 📝 architecture.md Markdown 245L · 6.7 KB
├─ 📁 scripts
│ ├─ 🐍 error_analyzer.py Python 281L · 9.6 KB
│ ├─ 🐍 evolution_generator.py Python 394L · 13.6 KB
│ ├─ 🐍 performance_monitor.py Python 200L · 6.9 KB
│ └─ 🐍 version_manager.py Python 283L · 10.2 KB
├─ 📋 _meta.json JSON 19L · 442 B
├─ 🐍 payment.py Python 142L · 5.2 KB
├─ 📄 requirements.txt Text 14L · 217 B
└─ 📝 SKILL.md Markdown 84L · 3.1 KB

依赖分析 6 项

包名版本来源已知漏洞备注
requests * pip 无版本锁定
python-dateutil >=2.8.0 pip 范围版本
pandas >=2.0.0 pip 无版本锁定
numpy >=1.24.0 pip 无版本锁定
psutil >=5.9.0 pip 范围版本
matplotlib >=3.7.0 pip 范围版本

安全亮点

✓ 代码结构清晰,使用类封装功能逻辑
✓ 无shell命令注入风险,未发现subprocess/shell调用
✓ 网络请求仅限于官方BILLING_API_URL(https://skillpay.me),无恶意IP连接
✓ 进化方案需人类审核确认后应用,体现安全设计