Skill Trust Decision

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.

Install decision first Source: ClawHub Scanned: 21 days ago
Files 31
Artifacts 12
Violations 4
Findings 4
Most direct threat evidence
01
Skill presents as livestock behavior detection tool through SKILL.md Entry · SKILL.md
02
Hidden ai_chat method exists with commented subprocess capability Escalation · skills/smyx_common/scripts/skill.py
03
Creates local SQLite database storing authentication tokens Persistence · skills/smyx_common/scripts/dao.py

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

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

Block
Attack chain and severe findings

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

Review
Dependencies and supply chain hygiene

3 dependency or supply-chain issues need attention.

Attack Chain

01
Skill presents as livestock behavior detection tool through SKILL.md

Entry · SKILL.md:1

02
Hidden ai_chat method exists with commented subprocess capability

Escalation · skills/smyx_common/scripts/skill.py:38

03
Creates local SQLite database storing authentication tokens

Persistence · skills/smyx_common/scripts/dao.py:54

04
User identity and API tokens stored without user consent in documentation

Impact · skills/smyx_common/scripts/util.py:245

What drove the risk score up

Undocumented subprocess capability +20

ai_chat method with commented-out openclaw agent execution exists in smyx_common/scripts/skill.py but is not declared in SKILL.md

Undeclared database storage +15

Creates SQLite database at workspace data directory storing user tokens and API credentials without disclosure in documentation

Environment variable access +10

Reads OPENCLAW_SENDER_OPEN_ID, OPENCLAW_SENDER_USERNAME, FEISHU_OPEN_ID from environment without declaration

Most important evidence

Medium Doc Mismatch

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
Remove the commented subprocess code if not needed, or document this capability in SKILL.md with clear use cases and security implications.
Medium Sensitive Access

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
Document the local database storage in SKILL.md, specifying what data is stored and where, and provide guidance on cleanup procedures.
Low Sensitive Access

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
Document which environment variables the skill accesses and for what purpose.
Low Credential Theft

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
Clarify the identity creation mechanism and ensure users understand that tokens are stored locally.

Declared capability vs actual capability

Filesystem Block
Declared NONE
→
Inferred WRITE
dao.py:54-150 - Creates SQLite database files in workspace data directory
Network Pass
Declared READ
→
Inferred READ
Multiple HTTP POST/GET requests to lifeemergence.com APIs
Shell Block
Declared NONE
→
Inferred ADMIN
skill.py:38-54 - ai_chat method contains commented-out subprocess.run executing openclaw agent commands
Environment Block
Declared NONE
→
Inferred READ
config.py:168-175 - Reads OPENCLAW_SENDER_OPEN_ID, OPENCLAW_SENDER_USERNAME, FEISHU_OPEN_ID
Database Block
Declared NONE
→
Inferred WRITE
dao.py - SQLite ORM storing sys_user table with token, open_token, username fields

Suspicious artifacts and egress

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

SKILL.md:29

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

skill-card.md:9

Medium External URL
https://clawhub.ai/18072937735/skills/smyx-aggressive-behavior-detection-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

PackageVersionSourceKnown vulnNotes
requests >=2.28.0 pip No Lower bound only, no upper cap
pydash 8.0.6 pip No Version pinned
SQLAlchemy 2.0.46 pip No Version pinned
PyYAML 6.0.3 pip No Version pinned

File composition

31 files · 2763 lines
Python 18 files · 2363 linesMarkdown 4 files · 360 linesYAML 6 files · 29 linesText 2 files · 6 linesJSON 1 files · 5 lines
Files of concern · 6
skills/smyx_common/scripts/util.py Python · 718 lines
Automatic user identity creation and token storage
skills/smyx_common/scripts/config.py Python · 399 lines
Undocumented environment variable access
skills/smyx_common/scripts/dao.py Python · 499 lines
Undeclared local SQLite database for credential storage
SKILL.md Markdown · 261 lines
https://lifeemergence.com/sample.html
skill-card.md Markdown · 60 lines
https://clawhub.ai/user/18072937735 · https://clawhub.ai/18072937735/skills/smyx-aggressive-behavior-detection-analysis
skills/smyx_common/scripts/skill.py Python · 85 lines
Undocumented subprocess capability in ai_chat method
Other files · skill.py · smyx_analysis.py · smyx_aggressive_behavior_detection_analysis.py · api_service.py · api_service.py · config.py

Security positives

No active malicious code execution observed - subprocess code is commented out
API endpoints are hardcoded to legitimate domains (lifeemergence.com)
No base64 obfuscation or suspicious encoding patterns found
No direct IP network requests or C2 communication patterns
Dependencies are version-pinned (pydash==8.0.6, SQLAlchemy==2.0.46)
No credential exfiltration to external servers beyond declared API endpoints
Local database path is restricted to workspace data directory
HTTP requests use proper authentication headers (X-Access-Token, Authorization)