cat-viking-memory
Hardcoded private IP address (192.168.5.110) used for Ollama embedding API calls across multiple scripts sends memory content to an undeclared network endpoint, creating potential data exfiltration risk.
Why this conclusion was reached
2/4 dimensions flagged3 undeclared or violating capabilities were inferred.
1 lower-risk artifacts were extracted and still need context.
The report includes 3 attack-chain steps and 0 severe findings.
2 dependency or supply-chain issues need attention.
Attack Chain
Entry · SKILL.md:1
Escalation · memory-pipeline/memory-embed.sh:9
Impact · simple-viking/lib.sh:142
What drove the risk score up
SKILL.md does not mention HTTP requests to external/private Ollama endpoint; text content (memories, sessions) is sent to this service
Multiple scripts hardcode OLLAMA_HOST=http://192.168.5.110:11434 across memory-embed.sh, lib.sh, mp_mention_detect.sh - unusual to use private IP instead of localhost
Skill uses extensive bash scripts but SKILL.md does not explicitly declare shell:WRITE capability
write.sh performs file writes; filesystem:WRITE capability implied but not documented
Most important evidence
Undeclared network communication to private IP
SKILL.md declares vector similarity detection but does not document that text content is sent via HTTP POST to http://192.168.5.110:11434/api/embeddings. Memory content and session data could be transmitted to this endpoint.
memory-pipeline/memory-embed.sh:9 Memory content sent to hardcoded private IP endpoint
get_embedding() function in multiple scripts sends text content to a hardcoded private IP address. Session summaries, memory files, and conversation content are transmitted. If this endpoint is attacker-controlled, sensitive data could be exfiltrated.
simple-viking/lib.sh:142 Implicit shell:WRITE capability not declared
Skill uses bash scripts throughout but SKILL.md does not declare shell execution capability
simple-viking/write.sh:1 Python dependencies not pinned
Scripts rely on python3 but do not specify version requirements. Standard library json/math modules are used, which is safe.
multiple Declared capability vs actual capability
simple-viking/write.sh:14 - echo "$content" > "$target_path" memory-pipeline/memory-embed.sh:9, simple-viking/lib.sh:8 - curl requests to OLLAMA_HOST (http://192.168.5.110:11434) All scripts in memory-pipeline/ and simple-viking/ are bash scripts executing commands Suspicious artifacts and egress
http://192.168.5.110:11434 memory-pipeline/memory-embed.sh:9
Dependencies and supply chain
| Package | Version | Source | Known vuln | Notes |
|---|---|---|---|---|
| python3 | * | system | No | Standard library only - json, math, os modules used |
| ollama | * | external | No | No version pinning; connects to http://192.168.5.110:11434 |
File composition
config.json simple-viking/lib.sh memory-pipeline/memory-embed.sh