安全决策报告

child-emotion-recognition-analysis

合法的儿童情绪识别云分析技能,所有代码执行均为云端 API 调用,subprocess 调用已全部注释禁用,核心逻辑为标准 HTTP 请求。无恶意行为发现,数据库操作用于自身身份管理而非凭证收割。存在依赖声明不完整和文档未披露本地数据库两项轻微瑕疵。

安装决策优先 来源: ClawHub 扫描时间: 2026/8/12
文件 29
IOC 10
越权项 0
发现 3

为什么得出这个结论

0/4 个维度触发
通过
声明与实际能力

声明资源与推断能力基本一致。

复核
隐藏执行与外联

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

通过
攻击链与高危发现

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

复核
依赖与供应链卫生

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

风险分是怎么被拉高的

SKILL.md 未声明本地 SQLite 数据库 +5

skill 实际使用本地 SQLite (smyx-common-claw.db) 存储用户 token 和身份信息,SKILL.md 未提及,存在阴影功能

requirements.txt 依赖声明不完整 +5

SKILL.md 仅声明 requests>=2.28.0,但代码实际依赖 pydash、SQLAlchemy、PyYAML 未写入 requirements.txt,存在 supply_chain 风险

SKILL.md 脚本调用路径与文档不一致 +3

文档声明调用 python -m scripts.child_emotion_recognition_analysis,实际入口脚本位于 skills/smyx_analysis/scripts/smyx_analysis.py,不影响安全但表明文档维护不足

subprocess 代码全部注释 +-5

AgentSkill.ai_chat() 中所有 subprocess 调用均为注释状态,为死代码不构成威胁,降低整体评分

最关键的证据

低危 文档欺骗

SKILL.md 未声明本地 SQLite 数据库存储

技能使用本地 SQLite 数据库 (smyx-common-claw.db) 存储用户 token、username、open_id 等身份信息,数据库路径强制重定向到工作区 data 目录。SKILL.md 完全未提及此行为。数据库仅用于技能自身身份管理,token 不外传,但属于文档-行为差异。

skills/smyx_common/scripts/dao.py:60
在 SKILL.md 的资源索引或注意事项中补充说明:技能使用本地 SQLite 数据库管理用户身份和会话信息,数据库位于工作区 data 目录
低危 供应链

SKILL.md 依赖声明不完整

SKILL.md 前置准备仅列出 requests>=2.28.0,但 skills/smyx_analysis/requirements.txt 和 skills/smyx_common/requirements.txt 中实际还有 pydash==8.0.6、SQLAlchemy==2.0.46、PyYAML==6.0.3。依赖声明不完整可能导致安装遗漏。

SKILL.md:52
SKILL.md 前置准备章节补充完整依赖列表:requests>=2.28.0, pydash==8.0.6, SQLAlchemy==2.0.46, PyYAML==6.0.3
提示 供应链

requests 依赖使用通配符版本

skills/smyx_analysis/requirements.txt 中 requests 使用通配符 requests>=2.28.0(pydash、SQLAlchemy、PyYAML 则有明确版本锁定),未锁定版本存在引入兼容性问题或安全漏洞的风险。

skills/smyx_analysis/requirements.txt:1
将 requests>=2.28.0 改为 requests==2.32.3 或类似明确版本

声明能力 vs 实际能力

文件系统 通过
声明 READ
→
推断 WRITE
scripts/child_emotion_recognition_analysis.py:58 将结果写入 --output 指定路径,dao.py:60 写入 SQLite 数据库
网络访问 通过
声明 READ
→
推断 READ
skills/smyx_common/scripts/util.py:356 仅发送 HTTP POST/GET 请求到 lifeemergence.com,API 端点在 config.yaml 中明确声明
命令执行 通过
声明 NONE
→
推断 NONE
skills/smyx_common/scripts/skill.py:49-73 所有 subprocess 调用均已注释禁用,为死代码
环境变量 通过
声明 NONE
→
推断 READ
config.py:155 仅读取 OPENCLAW_SENDER_OPEN_ID/OPENCLAW_SENDER_USERNAME/FEISHU_OPEN_ID 用于身份解析,属正常内部参数传递
数据库 通过
声明 NONE
→
推断 WRITE
dao.py:60-80 使用 SQLite 本地数据库存储用户 token,无外部传输,用于自身身份管理

可疑产物与外联

中危 外部 URL
https://lifeemergence.com/sample.html

SKILL.md:33

中危 外部 URL
http://192.168.1.234:9601/smyx-open-api

skills/smyx_common/scripts/config-dev.yaml:2

中危 外部 URL
http://192.168.1.234:4100

skills/smyx_common/scripts/config-dev.yaml:3

中危 外部 URL
http://192.168.1.234:7070/jeecg-boot-xzgz

skills/smyx_common/scripts/config-dev.yaml:4

中危 外部 URL
https://livemonitortest.lifeemergence.com/smyx-open-api

skills/smyx_common/scripts/config-test.yaml:2

中危 外部 URL
http://livemonitortest.lifeemergence.com

skills/smyx_common/scripts/config-test.yaml:3

中危 外部 URL
https://healthtest.lifeemergence.com/jeecg-boot-xzgz

skills/smyx_common/scripts/config-test.yaml:4

中危 外部 URL
https://lifeemergence.com/jeecg-boot-xzgz

skills/smyx_common/scripts/config.yaml:4

中危 外部 URL
https://open.lifeemergence.com/smyx-open-api

skills/smyx_common/scripts/config.yaml:5

中危 外部 URL
http://livemonitor.lifeemergence.com

skills/smyx_common/scripts/config.yaml:6

依赖与供应链

包名版本来源漏洞备注
requests >=2.28.0 pip 否 通配符版本未锁定;仅在 SKILL.md 中声明
pydash 8.0.6 pip 否 在 skills/ 子目录 requirements.txt 中,未在 SKILL.md 声明
SQLAlchemy 2.0.46 pip 否 在 skills/ 子目录 requirements.txt 中,未在 SKILL.md 声明
PyYAML 6.0.3 pip 否 在 skills/ 子目录 requirements.txt 中,未在 SKILL.md 声明

文件构成

29 个文件 · 2604 行
Python 18 个文件 · 2357 行Markdown 3 个文件 · 212 行YAML 6 个文件 · 29 行Text 2 个文件 · 6 行
需关注文件 · 2
skills/smyx_common/scripts/dao.py Python · 499 行
SKILL.md 未声明本地 SQLite 数据库存储
SKILL.md Markdown · 172 行
SKILL.md 依赖声明不完整 · https://lifeemergence.com/sample.html
其他文件 · util.py · config.py · skill.py · smyx_analysis.py · child_emotion_recognition_analysis.py · api_service.py +4

安全亮点

所有 subprocess 调用已全部注释禁用,不存在活跃的 shell 执行能力
网络请求仅指向 lifeemergence.com,API 端点在 config.yaml 中完全公开披露
未发现 base64/eval/exec/btoa/atob 等任何代码混淆或动态执行机制
未发现访问 ~/.ssh、~/.aws、.env 等敏感凭证路径的行为
未发现凭证收割+远程执行 (E2+SC2) 共现模式
数据库路径强制重定向到工作区共享 data 目录,禁止在技能目录创建私有数据库
API token 仅用于调用自身服务 API,未外传至第三方
环境变量访问仅限于明确的内部参数 (OPENCLAW_SENDER_OPEN_ID 等),不遍历搜索敏感关键字