Orpheus is designed for running trusted internal code in isolated containers. This document explains what security features are implemented and what the limitations are.Documentation Index
Fetch the complete documentation index at: https://docs.orpheus.run/llms.txt
Use this file to discover all available pages before exploring further.
Current Security Posture
What Orpheus Protects Against
✅ Container Escape Prevention- Seccomp syscall filtering (blocks 330+ dangerous syscalls including mount, ptrace, kernel modules)
- All Linux capabilities dropped (no CAP_SYS_ADMIN, CAP_NET_RAW, etc.)
- Critical paths masked (/proc/sys/kernel/core_pattern, /proc/kallsyms, etc.)
- NoNewPrivileges flag blocks setuid/setgid privilege escalation
- Non-root execution (UID 1000, GID 1000)
- Mount options: nosuid on all mounts
- noexec on /tmp, /proc, /dev (cannot execute binaries from writable mounts)
- Read-only /proc/sys and /sys (cannot modify kernel parameters)
- Memory limits (default: 512MB, configurable)
- PID limits (256 processes/threads max)
- Timeout enforcement (default: 60s, configurable)
- Separate PID namespace (cannot see host processes)
- Separate mount namespace (filesystem isolation)
- Separate IPC namespace (shared memory isolation)
- Separate UTS namespace (hostname isolation)
What Orpheus Does NOT Protect Against
❌ Network-Level Attacks- Containers share host network namespace (design decision for LLM API access)
- No egress filtering (agents can make arbitrary network requests)
- No inter-container network isolation
- Mitigation: Deploy on trusted networks, use firewall rules
- Container root (UID 0) maps to host UID 1000 (non-root but not remapped)
- If container escape occurs, attacker has host UID 1000 permissions
- Mitigation: Non-root UID + seccomp + NoNewPrivileges provide defense-in-depth
- Orpheus does not scan agent dependencies for vulnerabilities
- Agent code and dependencies are user-controlled
- Mitigation: Users should vet their own code and dependencies
- Agents have full network access
- No DLP or egress monitoring
- Mitigation: Trust agent code, monitor network traffic externally
Threat Model
Intended Use Case: Trusted Code
Orpheus is designed for scenarios where:- You control the agent code being deployed
- Agents are internal tools, not user-submitted code
- Single-tenant deployments (one organization per instance)
- Internal automation agents
- Development and testing environments
- Proof-of-concept and demo applications
- AI agents you wrote and reviewed
NOT Recommended For (Yet)
Security Implementation
Seccomp Filtering: Blocks 330+ dangerous syscalls (mount, ptrace, kernel modules, etc.). Allows standard operations (file I/O, networking, process management). Tested with Python, Node.js, Go, and Rust. Mount Security: Execution blocked on /tmp, /dev, /proc. Only /agent (rootfs) can execute binaries. /workspace is data-only. Masked Paths: Critical kernel interfaces (/proc/kcore, /proc/kallsyms, core_pattern) appear as empty read-only files.Reporting Security Vulnerabilities
We take security seriously. If you discover a vulnerability: Email: security@orpheus.run Response SLA: 48 hours What to include:- Description of the vulnerability
- Steps to reproduce
- Impact assessment
- Suggested fix (if any)
- Acknowledge receipt within 48 hours
- Validate and investigate (1-7 days)
- Develop and test fix (1-14 days)
- Release patch and security advisory
- Credit reporter (if desired)
Best Practices for Secure Deployment
1. Keep Software Updated
2. Limit Network Access
3. Monitor for Anomalies
4. Run on Dedicated Infrastructure
- Use separate machines for Orpheus (not shared with critical services)
- Isolate agent workloads from production databases
- Use separate API keys for agents (not production keys)
FAQ
Is Orpheus safe for production?
For trusted code: Yes. The security posture is comparable to Docker default and suitable for internal tools. For untrusted code: Not yet. Enhanced isolation features coming in future releases.What happens if an agent escapes the container?
The attacker would have:- Host UID 1000 permissions (non-root)
- No Linux capabilities
- Limited syscall access (seccomp blocks most)
- Access to host network
Can I disable security features for performance?
No. Security features are always enabled and cannot be disabled. The performance overhead is minimal (under 2% CPU).How do I know if my agent code is blocked by seccomp?
Check logs for “permission denied” or “operation not permitted” errors:Troubleshooting
Security-related errors →

