Skill Trust Decision

human-emotion-recognition-analysis

技能主体功能正常,但存在文档-行为差异:数据库存储和内部身份管理未在SKILL.md中声明,属于阴影功能。

Install decision first Source: ClawHub Scanned: 20 days ago
Files 30
Artifacts 12
Violations 2
Findings 4
Most direct threat evidence

Why this conclusion was reached

1/4 dimensions flagged
Block
Declared vs actual capability

2 undeclared or violating capabilities were inferred.

Review
Hidden execution and egress

12 lower-risk artifacts were extracted and still need context.

Pass
Attack chain and severe findings

There is no explicit malicious chain in the report.

Pass
Dependencies and supply chain hygiene

Dependencies are present but no obvious high-risk issue stands out.

What drove the risk score up

文档-行为差异 +15

SKILL.md未声明database:WRITE权限,但代码使用SQLite存储用户token和身份

内部身份管理阴影功能 +10

OpenIdUtil自动创建用户身份、读取data/smyx-api-key.txt在文档中无说明

外部API通信 +5

连接到lifeemergence.com发送媒体文件,符合声明但需用户确认数据处理

依赖版本锁定 +-5

所有依赖均有版本锁定,降低供应链风险

Most important evidence

Medium Doc Mismatch

数据库操作未在SKILL.md中声明

代码使用SQLite数据库(smyx-common-claw.db)存储用户身份、token等敏感信息,但SKILL.md的资源索引和前置准备中均未声明database:WRITE权限。skill-card.md提到了'tokens in a workspace SQLite database',但SKILL.md缺少此说明。

skills/smyx_common/scripts/dao.py:61
在SKILL.md资源索引中添加数据库资源声明,说明存储用户token和身份的用途
Medium Doc Mismatch

内部身份管理机制未文档化

OpenIdUtil类实现了自动创建用户身份、读取data/smyx-api-key.txt、自动生成User_前缀用户名等内部身份管理逻辑,但SKILL.md中仅用'系统自动处理'一笔带过,未详细说明这些操作

skills/smyx_common/scripts/util.py:230
补充说明内部身份机制的存储位置和管理方式
Low Sensitive Access

环境变量读取

代码读取OPENCLAW_SENDER_OPEN_ID、OPENCLAW_SENDER_USERNAME、FEISHU_OPEN_ID等环境变量获取身份信息

skills/smyx_common/scripts/config.py:89
确认这些环境变量来源是否符合预期,属于合法框架行为
Low Supply Chain

第三方依赖有版本锁定

pydash==8.0.6, SQLAlchemy==2.0.46, yaml==6.0.3, requests>=2.28.0 均指定版本,供应链风险低

skills/smyx_analysis/requirements.txt:1
当前依赖管理安全

Declared capability vs actual capability

Filesystem Pass
Declared READ
Inferred READ
SKILL.md:资源索引 scripts/human_emotion_recognition_analysis.py:validate_file()
Network Pass
Declared READ
Inferred READ
SKILL.md:前置准备 requests>=2.28.0
Database Block
Declared NONE
Inferred WRITE
skills/smyx_common/scripts/dao.py:61-100 创建SQLite数据库 smyx-common-claw.db
Environment Block
Declared NONE
Inferred READ
skills/smyx_common/scripts/config.py:89-93 读取OPENCLAW_SENDER_OPEN_ID等环境变量
Shell Pass
Declared NONE
Inferred NONE
无shell执行

Suspicious artifacts and egress

Medium External URL
https://lifeemergence.com/sample.html

SKILL.md:34

Medium External URL
https://clawhub.ai/user/18072937735

skill-card.md:9

Medium External URL
https://clawhub.ai/18072937735/skills/smyx-human-emotion-recognition-analysis

skill-card.md:43

Medium External URL
http://192.168.1.234:9601/smyx-open-api

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

Medium External URL
http://192.168.1.234:4100

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

Medium External URL
http://192.168.1.234:7070/jeecg-boot-xzgz

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

Medium External URL
https://livemonitortest.lifeemergence.com/smyx-open-api

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

Medium External URL
http://livemonitortest.lifeemergence.com

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

Medium External URL
https://healthtest.lifeemergence.com/jeecg-boot-xzgz

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

Medium External URL
https://lifeemergence.com/jeecg-boot-xzgz

skills/smyx_common/scripts/config.yaml:4

Medium External URL
https://open.lifeemergence.com/smyx-open-api

skills/smyx_common/scripts/config.yaml:5

Medium External URL
http://livemonitor.lifeemergence.com

skills/smyx_common/scripts/config.yaml:6

Dependencies and supply chain

PackageVersionSourceKnown vulnNotes
pydash 8.0.6 pip No 版本锁定
SQLAlchemy 2.0.46 pip No 版本锁定
yaml 6.0.3 pip No 版本锁定 PyYAML
requests >=2.28.0 pip No 版本有下界

File composition

30 files · 2812 lines
Python 18 files · 2497 linesMarkdown 4 files · 280 linesYAML 6 files · 29 linesText 2 files · 6 lines
Files of concern · 5
skills/smyx_common/scripts/util.py Python · 718 lines
内部身份管理机制未文档化
skills/smyx_common/scripts/config.py Python · 399 lines
环境变量读取
skills/smyx_common/scripts/dao.py Python · 499 lines
数据库操作未在SKILL.md中声明
SKILL.md Markdown · 176 lines
https://lifeemergence.com/sample.html
skill-card.md Markdown · 64 lines
https://clawhub.ai/user/18072937735 · https://clawhub.ai/18072937735/skills/smyx-human-emotion-recognition-analysis
Other files · human_emotion_recognition_analysis.py · skill.py · smyx_analysis.py · api_service.py · skill.py · api_service.py +1

Security positives

依赖版本全部锁定,供应链风险低
无base64编码、eval()等代码混淆行为
无远程代码执行、reverse shell等RCE指标
无凭证收割后外传的恶意行为
API端点为明确的域名(https://lifeemergence.com),非裸IP
文件操作仅限于用户提供的媒体文件,符合声明
整体代码结构清晰,使用标准框架调用远程API