smyx-livestock-counting-analysis
合法的养殖场畜禽盘点技能,功能为图像/视频AI计数,凭证本地存储无外泄,外部通信仅限 lifeemergence.com 域名,存在未声明的 shell 模块执行和 requests 无版本锁定两个轻微瑕疵。
为什么得出这个结论
1/4 个维度触发发现 1 项声明之外的能力或越权行为。
提取到 10 个一般风险产物,需要结合上下文判断。
没有形成明确的恶意路径。
依赖结构存在,但暂未看到明显高危告警。
风险分是怎么被拉高的
SKILL.md 声明中未明确提及通过 python -m 执行脚本需要 shell 权限,但实为标准 CLI 工具调用
scripts/smyx_livestock_counting_analysis.py 导入 requests 但 scripts/smyx_common/requirements.txt 未锁定版本
OpenIdUtil 在本地 SQLite 自动生成 User_ 开头的默认用户并存储凭证,非恶意但属于影子功能
最关键的证据
requests 依赖无版本锁定
scripts/smyx_livestock_counting_analysis.py 导入 requests,但 scripts/smyx_common/requirements.txt 和 scripts/requirements.txt 均未声明 requests 版本,存在供应链不确定性。
scripts/smyx_livestock_counting_analysis.py:14 shell 执行权限未在文档声明
SKILL.md 使用 python -m scripts.smyx_livestock_counting_analysis 执行模块,该调用需要 shell 写入权限,但 allowed-tools 和文档中均未声明。
SKILL.md:91 自动创建本地用户记录未声明
OpenIdUtil.resolve_current_open_id() 会在本地 SQLite 数据库中自动创建 User_ 开头的默认用户并存储 token,该行为在 SKILL.md 中未提及。
skills/smyx_common/scripts/util.py:262 声明能力 vs 实际能力
scripts/smyx_common/scripts/util.py:298 requests.request() 调用 lifeemergence.com scripts/smyx_livestock_counting_analysis.py:68 open(args.output) 文件写入; skills/smyx_analysis/scripts/skill.py:78 open(input_path,'rb') 文件读取 SKILL.md:91 python -m scripts.smyx_livestock_counting_analysis 模块调用 skills/smyx_common/scripts/config.py:90-95 读取 OPENCLAW_SENDER_OPEN_ID, OPENCLAW_SENDER_USERNAME, FEISHU_OPEN_ID 可疑产物与外联
https://lifeemergence.com/sample.html SKILL.md:29
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 | not declared | runtime import | 否 | scripts/smyx_common/requirements.txt 未列出 requests,但代码中使用 |
| pydash | 8.0.6 | skills/smyx_common/requirements.txt | 否 | 版本已锁定 |
| SQLAlchemy | 2.0.46 | skills/smyx_common/requirements.txt | 否 | 版本已锁定 |
| PyYAML | 6.0.3 | skills/smyx_common/requirements.txt | 否 | 版本已锁定 |
文件构成
skills/smyx_common/scripts/util.py SKILL.md scripts/smyx_livestock_counting_analysis.py