SECURITY.md
Rama main · réplica de lectura del repositorio original.
# Security Policy
## Supported Versions
| Version | Supported |
| ------- | --------- |
| 0.x | ✅ |
## Reporting a Vulnerability
Please **do not** open a public GitHub issue for security vulnerabilities.
Report vulnerabilities privately via [GitHub's private vulnerability reporting](https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities/privately-reporting-a-security-vulnerability) (Security → Report a vulnerability).
**Include:**
- Description and potential impact
- Steps to reproduce
- Affected version(s)
**Response time:** I aim to acknowledge reports within 7 days and publish a fix within 30 days for confirmed vulnerabilities.
## Security Design
Niles is designed as a self-hosted local AI butler. Key security properties:
- All data stays on your server — no third-party data sharing
- Passwords hashed with Argon2id
- CSRF protection on all state-changing routes
- SQL injection prevented via parameterized queries (asyncpg)
- CSP with per-request nonces (`'strict-dynamic'`)
- Session cookies: `httpOnly`, `secure`, `SameSite=Lax`
- Per-user credentials encrypted with Fernet (AES-128-CBC + HMAC)
- Rate limiting on authentication endpoints
- No-delete policy — data is never silently removed
## Scope
In scope: authentication, session management, data access controls, injection vulnerabilities, credential handling.
Out of scope: denial-of-service attacks on self-hosted instances, issues requiring physical access to the server.