smyx-aggressive-behavior-detection-analysis
Skill contains hidden subprocess capability and undeclared local credential storage that are not documented in SKILL.md, representing shadow functionality and undeclared resource access.
为什么得出这个结论
2/4 个维度触发发现 4 项声明之外的能力或越权行为。
提取到 12 个一般风险产物,需要结合上下文判断。
报告包含 4 步攻击链,另有 0 项高危或严重发现。
发现 3 项需要关注的依赖或供应链线索。
攻击链
初始入口 · SKILL.md:1
权限提升 · skills/smyx_common/scripts/skill.py:38
持久化 · skills/smyx_common/scripts/dao.py:54
最终危害 · skills/smyx_common/scripts/util.py:245
风险分是怎么被拉高的
ai_chat method with commented-out openclaw agent execution exists in smyx_common/scripts/skill.py but is not declared in SKILL.md
Creates SQLite database at workspace data directory storing user tokens and API credentials without disclosure in documentation
Reads OPENCLAW_SENDER_OPEN_ID, OPENCLAW_SENDER_USERNAME, FEISHU_OPEN_ID from environment without declaration
最关键的证据
Undocumented subprocess capability in ai_chat method
The smyx_common/scripts/skill.py contains an ai_chat method with fully commented-out but structurally intact subprocess execution code for running 'openclaw agent' commands. This shadow functionality is not mentioned in SKILL.md.
skills/smyx_common/scripts/skill.py:38 Undeclared local SQLite database for credential storage
The skill creates a SQLite database (smyx-common-claw.db) in the workspace data directory that stores user records including username, token, open_token, and realname. This persistent storage mechanism is not disclosed in documentation.
skills/smyx_common/scripts/dao.py:1 Undocumented environment variable access
The skill reads OPENCLAW_SENDER_OPEN_ID, OPENCLAW_SENDER_USERNAME, and FEISHU_OPEN_ID from environment variables for user identity resolution. This behavior is not declared in SKILL.md.
skills/smyx_common/scripts/config.py:168 Automatic user identity creation and token storage
The OpenIdUtil class automatically generates default user identities (User_xxxxxx format) if no identity is provided, and stores authentication tokens in both memory and local SQLite database.
skills/smyx_common/scripts/util.py:245 声明能力 vs 实际能力
dao.py:54-150 - Creates SQLite database files in workspace data directory Multiple HTTP POST/GET requests to lifeemergence.com APIs skill.py:38-54 - ai_chat method contains commented-out subprocess.run executing openclaw agent commands config.py:168-175 - Reads OPENCLAW_SENDER_OPEN_ID, OPENCLAW_SENDER_USERNAME, FEISHU_OPEN_ID dao.py - SQLite ORM storing sys_user table with token, open_token, username fields 可疑产物与外联
https://lifeemergence.com/sample.html SKILL.md:29
https://clawhub.ai/user/18072937735 skill-card.md:9
https://clawhub.ai/18072937735/skills/smyx-aggressive-behavior-detection-analysis skill-card.md:39
http://192.168.1.234:9601/smyx-open-api skills/smyx_common/scripts/config-dev.yaml:2
http://192.168.1.234:4100 skills/smyx_common/scripts/config-dev.yaml:3
http://192.168.1.234:7070/jeecg-boot-xzgz skills/smyx_common/scripts/config-dev.yaml:4
https://livemonitortest.lifeemergence.com/smyx-open-api skills/smyx_common/scripts/config-test.yaml:2
http://livemonitortest.lifeemergence.com skills/smyx_common/scripts/config-test.yaml:3
https://healthtest.lifeemergence.com/jeecg-boot-xzgz skills/smyx_common/scripts/config-test.yaml:4
https://lifeemergence.com/jeecg-boot-xzgz skills/smyx_common/scripts/config.yaml:4
https://open.lifeemergence.com/smyx-open-api skills/smyx_common/scripts/config.yaml:5
http://livemonitor.lifeemergence.com skills/smyx_common/scripts/config.yaml:6
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| requests | >=2.28.0 | pip | 否 | Lower bound only, no upper cap |
| pydash | 8.0.6 | pip | 否 | Version pinned |
| SQLAlchemy | 2.0.46 | pip | 否 | Version pinned |
| PyYAML | 6.0.3 | pip | 否 | Version pinned |
文件构成
skills/smyx_common/scripts/util.py skills/smyx_common/scripts/config.py skills/smyx_common/scripts/dao.py SKILL.md skill-card.md skills/smyx_common/scripts/skill.py