Scan Report
70 /100
memex
Unified memory plugin for OpenClaw — conversation memory + document search in a single SQLite database
未声明的遥测功能:代码连接外部服务器并发送机器标识符,base64编码规避检测,SKILL.md完全未提及
Do not install this skill
立即审查并移除遥测模块,或在SKILL.md中明确声明此功能
Attack Chain 4 steps
◎
Entry 用户安装memex插件
SKILL.md:1⬡
Escalation 插件加载时自动初始化遥测模块
src/telemetry.ts:18⬡
Escalation Base64解码遥测URL和token
src/telemetry.ts:9◉
Impact 连接外部服务器发送machineId和插件状态
src/telemetry.ts:32Findings 6 items
| Severity | Finding | Location |
|---|---|---|
| Critical | 未声明的遥测功能 | src/telemetry.ts:1 |
| Critical | Base64混淆规避检测 | src/telemetry.ts:5 |
| High | 机器标识符外泄 | src/telemetry.ts:14 |
| High | 遥测发送敏感操作元数据 | index.ts:666 |
| High | 无用户同意机制 | src/telemetry.ts:19 |
| Medium | 依赖第三方遥测SDK | package.json:38 |
| Resource | Declared | Inferred | Status | Evidence |
|---|---|---|---|---|
| Filesystem | WRITE | WRITE | ✓ Aligned | SKILL.md:插件需读写内存数据库 |
| Network | NONE | WRITE | ✗ Violation | src/telemetry.ts:1-32 遥测功能发送数据到外部服务器 |
| Environment | READ | READ | ✓ Aligned | embedding.apiKey配置读取环境变量 |
| Shell | NONE | NONE | — | AGENTS.md:56的rm命令仅文档说明,非代码行为 |
2 Critical 3 findings
Critical Dangerous Command 危险 Shell 命令
rm -rf ~ AGENTS.md:56 Critical Encoded Execution Base64 编码执行(代码混淆)
Buffer.from(s, "base64" src/telemetry.ts:8 Medium External URL 外部 URL
https://api.jina.ai/v1/rerank src/retriever.ts:36 File Tree
31 files · 510.5 KB · 14902 lines TypeScript 25f · 14435L
Markdown 4f · 295L
JSON 2f · 172L
├─
▾
src
│ ├─
adaptive-retrieval.ts
TypeScript
│ ├─
capture-windows.ts
TypeScript
│ ├─
chunker.ts
TypeScript
│ ├─
cli.ts
TypeScript
│ ├─
collections.ts
TypeScript
│ ├─
db.ts
TypeScript
│ ├─
doc-indexer.ts
TypeScript
│ ├─
embedder.ts
TypeScript
│ ├─
formatter.ts
TypeScript
│ ├─
importance.ts
TypeScript
│ ├─
llm.ts
TypeScript
│ ├─
memory-instructions.ts
TypeScript
│ ├─
memory.ts
TypeScript
│ ├─
migrate-lancedb.ts
TypeScript
│ ├─
migrate.ts
TypeScript
│ ├─
noise-filter.ts
TypeScript
│ ├─
retriever.ts
TypeScript
│ ├─
scopes.ts
TypeScript
│ ├─
search.ts
TypeScript
│ ├─
session-indexer.ts
TypeScript
│ ├─
telemetry.ts
TypeScript
│ ├─
tools.ts
TypeScript
│ ├─
unified-recall.ts
TypeScript
│ └─
unified-retriever.ts
TypeScript
├─
AGENTS.md
Markdown
├─
CLAUDE.md
Markdown
├─
index.ts
TypeScript
├─
openclaw.plugin.json
JSON
├─
package.json
JSON
├─
README.md
Markdown
└─
SKILL.md
Markdown
Dependencies 4 items
| Package | Version | Source | Known Vulns | Notes |
|---|---|---|---|---|
@ofan/telemetry-relay-sdk | ^0.2.1 | npm | No | 遥测SDK,发往mlab42.workers.dev |
openai | ^6.21.0 | npm | No | OpenAI SDK |
better-sqlite3 | ^11.0.0 | npm | No | SQLite驱动 |
sqlite-vec | ^0.1.7-alpha.2 | npm | No | 向量搜索扩展 |
Security Positives
✓ 核心记忆功能(SQLite+FTS5+向量搜索)代码质量高,架构清晰
✓ 无直接凭证收割行为
✓ 无远程代码执行(RCE)漏洞
✓ 数据库操作使用参数化查询,防SQL注入
✓ 有embedding模型变更检测和状态机恢复机制