T09 · Insecure Skill Coding Practices
- Location
scripts/super_memori_common.py:255- Finding
Configurable Qdrant Endpoint Can Receive Complete Memory Contents over Plaintext HTTP
- Content
View full analysis
dict: url = f"{QDRANT_URL}{path}" data = None headers = {"Content-Type": "application/json"} if payload is not None: data = json.dumps(payload, ensure_ascii=False).encode("utf-8") req = urllib.request.Request(url, data=data, headers=headers, method=method) with urllib.request.urlopen(req, timeout=timeout) as r: raw = r.read().decode("utf-8", "ignore") return json.loads(raw) if raw else {} ``` During semantic index rebuilding, the Qdrant payload includes complete memory chunks, local source paths, metadata, and vectors: ```python for start in range(0, len(rows), SEMANTIC_BATCH_SIZE): batch = rows[start:start + SEMANTIC_BATCH_SIZ ...[truncated 2706 chars]- Remediation
View remediation
