| Version | Supported |
|---|---|
| 1.2.x | Yes |
| < 1.2 | No |
If you discover a security vulnerability in Mesh, please report it responsibly.
Do NOT open a public GitHub issue for security vulnerabilities.
- Use GitHub's private vulnerability reporting
- Include a description of the vulnerability
- Include steps to reproduce if possible
- Include the version of Mesh affected
- Acknowledgment within 48 hours
- Assessment and timeline within 7 days
- Fix and disclosure coordinated with reporter
The following are in scope:
- Authentication bypass
- SQL injection
- Remote code execution
- Unauthorized data access
- Denial of service vulnerabilities
- Header spoofing attacks
The following are out of scope:
- Vulnerabilities in dependencies (report to upstream)
- Issues requiring physical access to the server
- Social engineering attacks
Mesh provides multiple layers of security:
- IP Whitelist - Restrict access by CIDR range (
IP_WHITELISTenv var) - API Key Authentication - Require X-API-Key header (
AUTH_REQUIREDenv var) - Proxy Header Trust - Only trust CF-Connecting-IP/X-Real-IP when
TRUST_PROXY_HEADERS=true - CORS - Configurable origin restrictions (
CORS_ORIGINSenv var) - Rate Limiting - Per-IP sliding window on
/searchand/embedendpoints (RATE_LIMIT_SEARCH,RATE_LIMIT_EMBED) - Input Validation - Content length limits, GUID format validation, batch size limits
- Parameterized SQL - All database queries use parameter binding via asyncpg
- Always set
AUTH_REQUIRED=truefor public deployments - Configure
IP_WHITELISTto known networks - Set
TRUST_PROXY_HEADERS=trueonly when behind Cloudflare or a trusted reverse proxy - Set explicit
CORS_ORIGINS(do not rely on wildcard default) - Use HTTPS via reverse proxy (Traefik, nginx)
- Run container as non-root user (configured in Dockerfile)