扫描报告
20 /100
Dpetclaw 龙虾守护宠物
桌面端 AI 语音助手桌宠,基于声纹识别 + OpenClaw Gateway,为用户提供贴身语音指令入口
Dpetclaw 龙虾守护宠物是一个合法的桌面 AI 语音助手,具有声纹认证、语音识别和 OpenClaw 集成功能。代码审查未发现恶意行为,但存在轻微配置瑕疵(硬编码路径、shell=True 使用)
可以安装
建议修复硬编码的 Windows 用户路径为动态获取,并将 subprocess.Popen 的 shell=True 改为列表参数形式以减少安全风险
安全发现 4 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 中危 | subprocess 使用 shell=True 执行本地脚本 权限提升 | lobster_pet/app.py:694 |
| 低危 | 硬编码的 Windows 用户路径 敏感访问 | lobster_pet/config.py:31 |
| 低危 | SKILL.md 缺少 allowed-tools 声明 文档欺骗 | SKILL.md:1 |
| 提示 | requirements.txt 无版本锁定 供应链 | requirements.txt:1 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | NONE | READ | ✓ 一致 | 代码仅读取配置文件和声纹模型 |
| 网络访问 | READ | READ | ✓ 一致 | 仅与 SiliconFlow API 和本地 OpenClaw Gateway 通信 |
| 命令执行 | NONE | WRITE | ✓ 一致 | app.py:694 subprocess.Popen 执行启动脚本 |
| 环境变量 | NONE | READ | ✓ 一致 | 仅读取 SILICONFLOW_API_KEY |
77 项发现
中危 外部 URL 外部 URL
https://cloud.siliconflow.cn README.md:34 中危 外部 URL 外部 URL
https://alphacephei.com/vosk/models/vosk-model-small-cn-0.22.zip README.md:103 中危 外部 URL 外部 URL
https://alphacephei.com/vosk/models README.md:107 中危 外部 URL 外部 URL
http://127.0.0.1:19001/ lobster_pet/app.py:1254 中危 外部 URL 外部 URL
https://api.siliconflow.cn/v1/chat/completions lobster_pet/chat_client.py:40 中危 外部 URL 外部 URL
https://api.siliconflow.cn/v1/audio/speech lobster_pet/tts_client.py:44 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@electron/get/-/get-2.0.3.tgz package-lock.json:16 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@sindresorhus/is/-/is-4.6.0.tgz package-lock.json:38 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@szmarczak/http-timer/-/http-timer-4.0.6.tgz package-lock.json:51 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@types/cacheable-request/-/cacheable-request-6.0.3.tgz package-lock.json:64 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@types/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz package-lock.json:77 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@types/keyv/-/keyv-3.1.4.tgz package-lock.json:84 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@types/node/-/node-22.19.15.tgz package-lock.json:94 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@types/responselike/-/responselike-1.0.3.tgz package-lock.json:104 中危 外部 URL 外部 URL
https://registry.npmmirror.com/@types/yauzl/-/yauzl-2.10.3.tgz package-lock.json:114 中危 外部 URL 外部 URL
https://registry.npmmirror.com/boolean/-/boolean-3.2.0.tgz package-lock.json:125 中危 外部 URL 外部 URL
https://www.npmjs.com/support package-lock.json:127 中危 外部 URL 外部 URL
https://registry.npmmirror.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz package-lock.json:134 中危 外部 URL 外部 URL
https://registry.npmmirror.com/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz package-lock.json:144 中危 外部 URL 外部 URL
https://registry.npmmirror.com/cacheable-request/-/cacheable-request-7.0.4.tgz package-lock.json:154 中危 外部 URL 外部 URL
https://registry.npmmirror.com/clone-response/-/clone-response-1.0.3.tgz package-lock.json:173 中危 外部 URL 外部 URL
https://registry.npmmirror.com/debug/-/debug-4.4.3.tgz package-lock.json:186 中危 外部 URL 外部 URL
https://registry.npmmirror.com/decompress-response/-/decompress-response-6.0.0.tgz package-lock.json:204 中危 外部 URL 外部 URL
https://registry.npmmirror.com/mimic-response/-/mimic-response-3.1.0.tgz package-lock.json:220 中危 外部 URL 外部 URL
https://registry.npmmirror.com/defer-to-connect/-/defer-to-connect-2.0.1.tgz package-lock.json:233 中危 外部 URL 外部 URL
https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.4.tgz package-lock.json:243 中危 外部 URL 外部 URL
https://registry.npmmirror.com/define-properties/-/define-properties-1.2.1.tgz package-lock.json:262 中危 外部 URL 外部 URL
https://registry.npmmirror.com/detect-node/-/detect-node-2.1.0.tgz package-lock.json:281 中危 外部 URL 外部 URL
https://registry.npmmirror.com/electron/-/electron-35.7.5.tgz package-lock.json:289 中危 外部 URL 外部 URL
https://registry.npmmirror.com/end-of-stream/-/end-of-stream-1.4.5.tgz package-lock.json:308 中危 外部 URL 外部 URL
https://registry.npmmirror.com/env-paths/-/env-paths-2.2.1.tgz package-lock.json:318 中危 外部 URL 外部 URL
https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.1.tgz package-lock.json:328 中危 外部 URL 外部 URL
https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz package-lock.json:339 中危 外部 URL 外部 URL
https://registry.npmmirror.com/es6-error/-/es6-error-4.1.1.tgz package-lock.json:350 中危 外部 URL 外部 URL
https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz package-lock.json:358 中危 外部 URL 外部 URL
https://registry.npmmirror.com/extract-zip/-/extract-zip-2.0.1.tgz package-lock.json:372 中危 外部 URL 外部 URL
https://registry.npmmirror.com/fd-slicer/-/fd-slicer-1.1.0.tgz package-lock.json:393 中危 外部 URL 外部 URL
https://registry.npmmirror.com/fs-extra/-/fs-extra-8.1.0.tgz package-lock.json:403 中危 外部 URL 外部 URL
https://registry.npmmirror.com/get-stream/-/get-stream-5.2.0.tgz package-lock.json:418 中危 外部 URL 外部 URL
https://registry.npmmirror.com/global-agent/-/global-agent-3.0.0.tgz package-lock.json:434 中危 外部 URL 外部 URL
https://registry.npmmirror.com/semver/-/semver-7.7.4.tgz package-lock.json:453 中危 外部 URL 外部 URL
https://registry.npmmirror.com/globalthis/-/globalthis-1.0.4.tgz package-lock.json:467 中危 外部 URL 外部 URL
https://registry.npmmirror.com/gopd/-/gopd-1.2.0.tgz package-lock.json:485 中危 外部 URL 外部 URL
https://registry.npmmirror.com/got/-/got-11.8.6.tgz package-lock.json:499 中危 外部 URL 外部 URL
https://registry.npmmirror.com/graceful-fs/-/graceful-fs-4.2.11.tgz package-lock.json:525 中危 外部 URL 外部 URL
https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz package-lock.json:532 中危 外部 URL 外部 URL
https://registry.npmmirror.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz package-lock.json:546 中危 外部 URL 外部 URL
https://registry.npmmirror.com/http2-wrapper/-/http2-wrapper-1.0.3.tgz package-lock.json:553 中危 外部 URL 外部 URL
https://registry.npmmirror.com/json-buffer/-/json-buffer-3.0.1.tgz package-lock.json:567 中危 外部 URL 外部 URL
https://registry.npmmirror.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz package-lock.json:574 中危 外部 URL 外部 URL
https://registry.npmmirror.com/jsonfile/-/jsonfile-4.0.0.tgz package-lock.json:582 中危 外部 URL 外部 URL
https://registry.npmmirror.com/keyv/-/keyv-4.5.4.tgz package-lock.json:592 中危 外部 URL 外部 URL
https://registry.npmmirror.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz package-lock.json:602 中危 外部 URL 外部 URL
https://registry.npmmirror.com/matcher/-/matcher-3.0.0.tgz package-lock.json:612 中危 外部 URL 外部 URL
https://registry.npmmirror.com/mimic-response/-/mimic-response-1.0.1.tgz package-lock.json:626 中危 外部 URL 外部 URL
https://registry.npmmirror.com/ms/-/ms-2.1.3.tgz package-lock.json:636 中危 外部 URL 外部 URL
https://registry.npmmirror.com/normalize-url/-/normalize-url-6.1.0.tgz package-lock.json:643 中危 外部 URL 外部 URL
https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz package-lock.json:656 中危 外部 URL 外部 URL
https://registry.npmmirror.com/once/-/once-1.4.0.tgz package-lock.json:667 中危 外部 URL 外部 URL
https://registry.npmmirror.com/p-cancelable/-/p-cancelable-2.1.1.tgz package-lock.json:677 中危 外部 URL 外部 URL
https://registry.npmmirror.com/pend/-/pend-1.2.0.tgz package-lock.json:687 中危 外部 URL 外部 URL
https://registry.npmmirror.com/progress/-/progress-2.0.3.tgz package-lock.json:694 中危 外部 URL 外部 URL
https://registry.npmmirror.com/pump/-/pump-3.0.4.tgz package-lock.json:704 中危 外部 URL 外部 URL
https://registry.npmmirror.com/quick-lru/-/quick-lru-5.1.1.tgz package-lock.json:715 中危 外部 URL 外部 URL
https://registry.npmmirror.com/resolve-alpn/-/resolve-alpn-1.2.1.tgz package-lock.json:728 中危 外部 URL 外部 URL
https://registry.npmmirror.com/responselike/-/responselike-2.0.1.tgz package-lock.json:735 中危 外部 URL 外部 URL
https://registry.npmmirror.com/roarr/-/roarr-2.15.4.tgz package-lock.json:748 中危 外部 URL 外部 URL
https://registry.npmmirror.com/semver/-/semver-6.3.1.tgz package-lock.json:767 中危 外部 URL 外部 URL
https://registry.npmmirror.com/semver-compare/-/semver-compare-1.0.0.tgz package-lock.json:777 中危 外部 URL 外部 URL
https://registry.npmmirror.com/serialize-error/-/serialize-error-7.0.1.tgz package-lock.json:785 中危 外部 URL 外部 URL
https://registry.npmmirror.com/sprintf-js/-/sprintf-js-1.1.3.tgz package-lock.json:802 中危 外部 URL 外部 URL
https://registry.npmmirror.com/sumchecker/-/sumchecker-3.0.1.tgz package-lock.json:810 中危 外部 URL 外部 URL
https://registry.npmmirror.com/type-fest/-/type-fest-0.13.1.tgz package-lock.json:823 中危 外部 URL 外部 URL
https://registry.npmmirror.com/undici-types/-/undici-types-6.21.0.tgz package-lock.json:837 中危 外部 URL 外部 URL
https://registry.npmmirror.com/universalify/-/universalify-0.1.2.tgz package-lock.json:844 中危 外部 URL 外部 URL
https://registry.npmmirror.com/wrappy/-/wrappy-1.0.2.tgz package-lock.json:854 中危 外部 URL 外部 URL
https://registry.npmmirror.com/yauzl/-/yauzl-2.10.0.tgz package-lock.json:861 目录结构
29 文件 · 237.5 KB · 6756 行 Python 18f · 4402L
JSON 2f · 883L
CSS 1f · 596L
JavaScript 4f · 513L
Markdown 2f · 295L
HTML 1f · 64L
Text 1f · 3L
├─
▾
electron
│ ├─
▾
renderer
│ │ ├─
index.html
HTML
│ │ ├─
renderer.js
JavaScript
│ │ └─
styles.css
CSS
│ ├─
main.js
JavaScript
│ └─
preload.js
JavaScript
├─
▾
lobster_pet
│ ├─
__init__.py
Python
│ ├─
app.py
Python
│ ├─
chat_client.py
Python
│ ├─
config.py
Python
│ ├─
electron_bridge_main.py
Python
│ ├─
headless_window.py
Python
│ ├─
openclaw_client.py
Python
│ ├─
pet_window.py
Python
│ ├─
speaker_verifier.py
Python
│ ├─
states.py
Python
│ ├─
tts_client.py
Python
│ └─
voice_listener.py
Python
├─
main.py
Python
├─
openclaw_bridge.mjs
JavaScript
├─
package-lock.json
JSON
├─
package.json
JSON
├─
README.md
Markdown
├─
register_owner_voice.py
Python
├─
requirements.txt
Text
├─
siliconflow_qwen_omni_chat.py
Python
├─
SKILL.md
Markdown
├─
test_listen.py
Python
├─
test_microphones.py
Python
└─
verify_owner_voice.py
Python
依赖分析 4 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
SpeechRecognition | >=3.14 | pip | 否 | 无版本锁定 |
PyAudio | >=0.2.14 | pip | 否 | 无版本锁定 |
soundfile | >=0.12.1 | pip | 否 | 无版本锁定 |
speechbrain | 未指定 | 代码导入 | 否 | 用于声纹识别模型 |
安全亮点
✓ 声纹验证机制合法且有效,非主人无法操控系统
✓ 访客模式设计合理,限制了对本地数据的访问
✓ 外部通信仅限 SiliconFlow API 和本地 OpenClaw Gateway,无可疑外泄
✓ 代码无混淆、无隐藏后门、无提示词注入
✓ base64 仅用于音频数据编码用于 ASR API,符合正常用途