Why this conclusion was reached
1/4 dimensions flagged Block Declared vs actual capability 4 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
文档-行为差异 +20
SKILL.md未声明SQLite数据库操作、data/smyx-api-key.txt文件读取、凭证存储等敏感行为
环境变量读取 +10
代码读取OPENCLAW_SENDER_OPEN_ID等环境变量,未在文档中声明
数据库操作 +10
创建并操作SQLite数据库存储用户token/open_token,未声明
合法功能无越权 +-5
核心视频分析功能正常,无RCE、凭证外泄等恶意行为
Most important evidence
Medium Doc Mismatch
未声明的本地数据库操作
技能在 data 目录下创建 SQLite 数据库 smyx-common-claw.db,存储用户的 username、token、open_token 等敏感凭证。SKILL.md 未声明此数据库操作。
skills/smyx_common/scripts/dao.py:68 在 SKILL.md 的资源索引部分声明数据库操作及其用途
Medium Doc Mismatch
未声明的敏感文件读取
OpenIdUtil 从 data/smyx-api-key.txt 读取 API 密钥,SKILL.md 未声明此文件访问行为。
skills/smyx_common/scripts/util.py:237 在文档中说明凭证文件的读取方式和安全存储
Medium Doc Mismatch
未声明的环境变量读取
ConstantEnum.init() 读取 OPENCLAW_SENDER_OPEN_ID、OPENCLAW_SENDER_USERNAME、FEISHU_OPEN_ID 等环境变量,SKILL.md 未声明。
skills/smyx_common/scripts/config.py:107 在文档中声明所需的环境变量及其用途
Low Sensitive Access
工作区路径检测算法
AgentContextUtil.detect_current_agent_workspace() 实现了复杂的工作区检测逻辑,涉及 agent_id 追踪,代码复杂度过高但无明显恶意。
skills/smyx_common/scripts/util.py:109 简化工作区检测逻辑,减少攻击面
Declared capability vs actual capability
Filesystem Block
Declared NONE
→ Inferred READ
skills/smyx_common/scripts/util.py:237 smyx-api-key.txt Filesystem Block
Declared NONE
→ Inferred WRITE
skills/smyx_common/scripts/dao.py:68 SQLite数据库创建 Environment Block
Declared NONE
→ Inferred READ
skills/smyx_common/scripts/config.py:107 环境变量读取 Database Block
Declared NONE
→ Inferred WRITE
skills/smyx_common/scripts/dao.py 完整的CRUD操作 Network Pass
Declared READ
→ Inferred READ
scripts/psychology_analysis.py API调用
Suspicious artifacts and egress
Medium External URL
https://lifeemergence.com/sample.html SKILL.md:37
Medium External URL
https://clawhub.ai/user/smyx-sunjinhui skill-card.md:9
Medium External URL
https://clawhub.ai/smyx-sunjinhui/skills/smyx-psychology-analysis skill-card.md:39
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
| Package | Version | Source | Known vuln | Notes |
| requests | >=2.28.0 | pip | No | 版本要求宽松 |
| sqlalchemy | 未声明 | import | No | 依赖未在 requirements 中声明 |
| pydash | 未声明 | import | No | try/except 兼容处理 |
| pyyaml | 未声明 | import | No | 用于配置加载 |
File composition
31 files · 2812 lines Python 18 files · 2490 linesMarkdown 4 files · 282 linesYAML 6 files · 29 linesText 2 files · 6 linesJSON 1 files · 5 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 Markdown · 183 lines
https://lifeemergence.com/sample.html
skill-card.md Markdown · 59 lines
https://clawhub.ai/user/smyx-sunjinhui · https://clawhub.ai/smyx-sunjinhui/skills/smyx-psychology-analysis
Other files · psychology_analysis.py · skill.py · smyx_analysis.py · api_service.py · skill.py · api_service.py +1
31 files · 112.0 KB · 2812 lines
Python 18f · 2490LMarkdown 4f · 282LYAML 6f · 29LText 2f · 6LJSON 1f · 5L
├─
▾
📁
references
│ └─
📝
api_doc.md
Markdown
21L · 643 B
├─
▾
📁
scripts
│ ├─
🐍
__init__.py
Python
1L · 38 B
│ ├─
🐍
config.py
Python
24L · 651 B
│ ├─
📋
config.yaml
YAML
1L · 2 B
│ ├─
🐍
psychology_analysis.py
Python
229L · 8.1 KB
│ └─
🐍
skill.py
Python
23L · 567 B
├─
▾
📁
skills
│ ├─
▾
📁
smyx_analysis
│ │ ├─
▾
📁
references
│ │ │ └─
📝
api_doc.md
Markdown
19L · 427 B
│ │ ├─
▾
📁
scripts
│ │ │ ├─
🐍
__init__.py
Python
0 B
│ │ │ ├─
🐍
api_service.py
Python
40L · 1.5 KB
│ │ │ ├─
🐍
config.py
Python
39L · 1003 B
│ │ │ ├─
📋
config.yaml
YAML
1L · 3 B
│ │ │ ├─
🐍
skill.py
Python
175L · 6.4 KB
│ │ │ └─
🐍
smyx_analysis.py
Python
115L · 3.7 KB
│ │ ├─
🐍
__init__.py
Python
0 B
│ │ └─
📄
requirements.txt
Text
3L · 45 B
│ └─
▾
📁
smyx_common
│ ├─
▾
📁
scripts
│ │ ├─
🐍
__init__.py
Python
9L · 177 B
│ │ ├─
🐍
api_service.py
Python
101L · 2.6 KB
│ │ ├─
🐍
base.py
Python
33L · 469 B
│ │ ├─
📋
config-dev.yaml
YAML
6L · 214 B
│ │ ├─
📋
config-prod.yaml
YAML
0 B
│ │ ├─
📋
config-test.yaml
YAML
6L · 256 B
│ │ ├─
🐍
config.py
Python
399L · 23.8 KB
│ │ ├─
📋
config.yaml
YAML
15L · 473 B
│ │ ├─
🐍
dao.py
Python
499L · 17.8 KB
│ │ ├─
🐍
skill.py
Python
85L · 2.4 KB
│ │ └─
🐍
util.py
Python
718L · 28.1 KB
│ ├─
🐍
__init__.py
Python
0 B
│ └─
📄
requirements.txt
Text
3L · 47 B
├─
📝
SKILL.md
Markdown
183L · 10.3 KB
├─
📋
_meta.json
JSON
5L · 144 B
└─
📝
skill-card.md
Markdown
59L · 2.1 KB
Security positives
核心功能为合法的心理健康视频分析,无 RCE 或反向 shell
网络请求仅用于调用云端 API,无外部 IP 直连或 C2 通信
无 base64/bash 管道、裸 IP 请求等混淆技术
依赖版本有声明(requests>=2.28.0)
未访问 ~/.ssh、~/.aws、.env 等高风险敏感路径