Skip to content

Security fixes: sanitize /ingest input, bind to localhost; add client logger bridge#2

Open
garrettekinsman wants to merge 1 commit intordevaul:mainfrom
garrettekinsman:security-fixes-and-logger
Open

Security fixes: sanitize /ingest input, bind to localhost; add client logger bridge#2
garrettekinsman wants to merge 1 commit intordevaul:mainfrom
garrettekinsman:security-fixes-and-logger

Conversation

@garrettekinsman
Copy link

Summary

Two security fixes identified in audit + client logger package.

HIGH-01: Prompt injection sanitization on /ingest

Adds _sanitize_content() to strip injection patterns before storing content. Prevents adversarial content from influencing retrieval context.

HIGH-02: Bind to 127.0.0.1

Server previously bound to 0.0.0.0 (all interfaces). Changed default to localhost-only. Deploy behind a reverse proxy if remote access is needed.

contextgraph-logger (new)

Standalone Python bridge package for OpenClaw integration:

  • harvester.py — batch ingest memory files + session DB (idempotent, content-hash dedup)
  • live_ingest.py — per-turn shim
  • context_pull.py — pulls assembled context from /assemble endpoint

See contextgraph-logger/README.md for usage.

…-logger client bridge

HIGH-01: Add input sanitization to /ingest endpoint
- New _sanitize_content() function strips prompt injection patterns
- Prevents adversarial content from influencing retrieval context
- Applied to both user_text and assistant_text before storage

HIGH-02: Bind server to 127.0.0.1 instead of 0.0.0.0
- Changed default host from 0.0.0.0 (all interfaces) to localhost-only
- Reduces attack surface for local development deployments
- Deploy behind reverse proxy if remote access is needed

contextgraph-logger: Add standalone client bridge package
- harvester.py: batch ingest session DB + memory files (idempotent)
- live_ingest.py: per-turn shim for real-time logging
- context_pull.py: pulls assembled context from /assemble endpoint
- Updated main README with Logger / Client Bridge section

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant