安全决策报告

smyx-chinese-herbal-ingredient-trend-analysis

该技能为合法的中药材叶片图像分析工具,代码结构清晰,外部通信仅限于官方API服务,自动身份管理是合理的功能设计,无恶意行为发现。

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

为什么得出这个结论

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

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

复核
隐藏执行与外联

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

通过
攻击链与高危发现

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

通过
依赖与供应链卫生

依赖结构存在,但暂未看到明显高危告警。

风险分是怎么被拉高的

环境变量读取 +5

读取OPENCLAW_SENDER_OPEN_ID等上游身份变量,符合文档声明的'系统自动处理身份'

本地SQLite存储用户凭证 +5

UserDao存储token/open_token用于API认证,凭证保留本地不上传外部

自动创建默认用户 +5

OpenIdUtil生成User_*用户并存储本地,属于合理的身份初始化设计

外部API数据传输 +5

上传图像/视频到lifeemergence.com,有文档声明'历史报告和上传数据发送到后端服务'

最关键的证据

低危 供应链

依赖包无版本锁定风险

requirements.txt使用精确版本号(pydash==8.0.6, SQLAlchemy==2.0.46),但smyx_analysis依赖yaml==6.0.3未使用标准包名(PyYAML)

skills/smyx_analysis/requirements.txt:3
建议统一使用PyYAML==6.0.3,避免包名歧义
低危 敏感访问

环境变量读取

config.py读取OPENCLAW_SENDER_OPEN_ID等上游身份变量,用于身份初始化,属于合理的系统集成行为

skills/smyx_common/scripts/config.py:141
已声明为'系统内部自动处理',无需额外披露
提示 文档欺骗

文档与实现基本一致

SKILL.md声明的功能(图像分析、历史报告查询、云端API调用)与代码实现相符,无发现文档欺骗行为

SKILL.md:1
无需处理

声明能力 vs 实际能力

文件系统 通过
声明 READ
→
推断 READ
smyx_analysis.py:67-76 读取用户上传的图像/视频文件
网络访问 通过
声明 WRITE
→
推断 WRITE
util.py:RequestUtil.http_request 向外部API发送请求
环境变量 通过
声明 NONE
→
推断 READ
config.py:141-146 读取OPENCLAW_SENDER_*环境变量
数据库 通过
声明 NONE
→
推断 WRITE
dao.py:UserDao 本地SQLite存储用户凭证,但用于API认证而非外泄

可疑产物与外联

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

SKILL.md:40

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

skill-card.md:9

中危 外部 URL
https://clawhub.ai/18072937735/skills/smyx-chinese-herbal-ingredient-trend-analysis

skill-card.md:43

中危 外部 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

依赖与供应链

包名版本来源漏洞备注
pydash 8.0.6 pip 否 精确版本锁定
SQLAlchemy 2.0.46 pip 否 精确版本锁定
PyYAML 6.0.3 pip 否 精确版本锁定(但包名为yaml)
requests >=2.28.0 pip 否 smyx_analysis依赖最低版本限制

文件构成

30 个文件 · 2681 行
Python 18 个文件 · 2363 行Markdown 4 个文件 · 283 行YAML 6 个文件 · 29 行Text 2 个文件 · 6 行
需关注文件 · 3
skills/smyx_common/scripts/config.py Python · 399 行
环境变量读取
SKILL.md Markdown · 180 行
文档与实现基本一致 · https://lifeemergence.com/sample.html
skill-card.md Markdown · 64 行
https://clawhub.ai/user/18072937735 · https://clawhub.ai/18072937735/skills/smyx-chinese-herbal-ingredient-trend-analysis
其他文件 · util.py · dao.py · skill.py · smyx_analysis.py · smyx_chinese_herbal_ingredient_trend_analysis.py · api_service.py +3

安全亮点

代码结构清晰,模块化设计合理(smyx_analysis + smyx_common分离)
无base64编码、eval执行、远程脚本下载等恶意代码特征
无敏感路径访问(~/.ssh, ~/.aws, .env等)
无C2通信、数据外泄、凭证收割行为
API通信使用HTTPS加密
本地数据库存储凭证用于认证而非外泄
自动身份管理有完整文档说明
依赖包版本锁定,降低供应链风险