Skill Trust Decision

staff-absence-detection-analysis

技能声称仅用于人员离岗监测,但代码包含大量未声明的用户身份管理、凭证存储和自动注册功能,存在文档欺骗和阴影功能问题。

Install decision first Source: ClawHub Scanned: Aug 10, 2026
Files 28
Artifacts 10
Violations 4
Findings 6
Most direct threat evidence
High Doc Mismatch
未声明的本地用户自动创建机制

SKILL.md声称'用户身份参数由系统内部自动处理,不得向用户展示',但代码在util.py:315-360实现了完整的自动用户创建逻辑,包括生成User_xxxxxx格式用户名、写入本地SQLite数据库、持久化存储。

skills/smyx_common/scripts/util.py:315

Why this conclusion was reached

2/4 dimensions flagged
Block
Declared vs actual capability

4 undeclared or violating capabilities were inferred.

Review
Hidden execution and egress

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

Block
Attack chain and severe findings

The report includes 0 attack-chain steps and 2 severe findings.

Pass
Dependencies and supply chain hygiene

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

What drove the risk score up

阴影功能-用户身份管理 +20

SKILL.md未声明自动创建本地用户(User_xxxxxx)的机制

阴影功能-凭证持久化 +15

在data/目录创建SQLite数据库存储API token和open_token

文档欺骗-声明不符 +15

文档强调'系统自动处理身份不暴露',但代码实际创建持久化本地用户记录

无版本锁定依赖 +5

requirements.txt使用精确版本,但smyx_common等依赖未声明来源和版本

API认证流程不透明 +5

自动手机号登录(/sys/phoneLogin)流程未在文档说明

Most important evidence

High Doc Mismatch

未声明的本地用户自动创建机制

SKILL.md声称'用户身份参数由系统内部自动处理,不得向用户展示',但代码在util.py:315-360实现了完整的自动用户创建逻辑,包括生成User_xxxxxx格式用户名、写入本地SQLite数据库、持久化存储。

skills/smyx_common/scripts/util.py:315
在SKILL.md中明确说明本地用户管理机制,包括是否创建本地用户、存储哪些数据、数据保留期限
High Credential Theft

未声明的凭证本地持久化存储

代码在data/目录下创建SQLite数据库(smyx-common-claw.db)存储API token、open_token等敏感凭证,文档未提及此行为。

skills/smyx_common/scripts/dao.py:40
明确说明是否存储凭证、存储位置、安全保护措施
Medium Doc Mismatch

外部API自动注册流程未披露

RequestUtil.http_request中存在自动用户注册逻辑,当本地无凭证时调用/sys/phoneLogin注册新用户,用户未被告知。

skills/smyx_common/scripts/util.py:265
说明是否会在用户不知情情况下注册账户
Medium Sensitive Access

环境变量读取行为未声明

config.py从环境变量读取OPENCLAW_SENDER_OPEN_ID、OPENCLAW_SENDER_USERNAME、FEISHU_OPEN_ID等身份信息。

skills/smyx_common/scripts/config.py:127
在文档中说明支持的环境变量及其用途
Medium Doc Mismatch

共享库(smyx_common)行为未披露

技能依赖skills/smyx_common共享库,包含完整的API服务、数据库、工具函数,但SKILL.md资源索引中未提及该依赖库的存在和作用。

skills/smyx_common/scripts/util.py:1
说明与smyx_common共享库的关系,列出依赖的技能
Low Supply Chain

共享库依赖无版本锁定

smyx_analysis和smyx_common技能互为依赖,但requirements.txt中未列出对smyx_common的依赖关系。

skills/smyx_analysis/requirements.txt:1
明确声明对smyx_common的依赖关系和版本要求

Declared capability vs actual capability

Filesystem Block
Declared READ
Inferred WRITE
dao.py:98-145 创建本地SQLite数据库
Network Block
Declared READ
Inferred WRITE
util.py:265-285 自动注册用户到外部API
Environment Block
Declared NONE
Inferred READ
config.py:127-131 读取OPENCLAW_SENDER_OPEN_ID等环境变量
Database Block
Declared NONE
Inferred WRITE
dao.py:40-50 持久化用户凭证到本地SQLite

Suspicious artifacts and egress

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

SKILL.md:41

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
requests >=2.28.0 pip No 声明于SKILL.md前置准备
pydash 8.0.6 pip No 精确版本锁定
SQLAlchemy 2.0.46 pip No 精确版本锁定
smyx_common 未知 内部技能 No 跨技能依赖,未在requirements.txt中声明

File composition

28 files · 2826 lines
Python 17 files · 2493 linesMarkdown 3 files · 298 linesYAML 6 files · 29 linesText 2 files · 6 lines
Files of concern · 4
skills/smyx_common/scripts/util.py Python · 718 lines
未声明的本地用户自动创建机制 · 外部API自动注册流程未披露 · 共享库(smyx_common)行为未披露
skills/smyx_common/scripts/config.py Python · 399 lines
环境变量读取行为未声明
skills/smyx_common/scripts/dao.py Python · 499 lines
未声明的凭证本地持久化存储
SKILL.md Markdown · 178 lines
https://lifeemergence.com/sample.html
Other files · staff_absence_detection_analysis.py · skill.py · smyx_analysis.py · api_service.py · skill.py · api_doc.md +2

Security positives

代码结构清晰,使用标准库和知名依赖(SQLAlchemy)
文件访问限于用户上传的媒体文件和data目录
未发现base64编码、远程shell执行等高危恶意模式
数据库路径重定向机制可防止多技能间数据库污染