| Version | Supported |
|---|---|
| 1.1.x | ✅ |
| < 1.1 | ❌ |
We take security seriously. If you discover a security vulnerability, please report it responsibly.
- Do NOT open a public issue
- Email the maintainers directly or use GitHub's private vulnerability reporting
- Include:
- Description of the vulnerability
- Steps to reproduce
- Potential impact
- Suggested fix (if any)
- Acknowledgment: Within 48 hours
- Initial Assessment: Within 7 days
- Resolution Timeline: Depends on severity
- Critical: 24-72 hours
- High: 1-2 weeks
- Medium/Low: Next release cycle
This project implements several security measures:
- Authentication: JWT with access and refresh tokens
- CSRF Protection: Double-submit cookie pattern via
csrf-csrf - Rate Limiting: Applied to authentication endpoints
- Input Validation: Using
express-validator - Security Headers: Via Helmet.js
- SQL Injection Prevention: Parameterized queries via Sequelize ORM
- Dependency Scanning: Automated via Dependabot and npm audit
-
Environment Variables
- Never commit
.envfiles - Use strong, unique secrets for JWT
- Rotate secrets periodically
- Never commit
-
Database
- Use PostgreSQL in production
- Enable SSL for database connections
- Use least-privilege database users
-
HTTPS
- Always use HTTPS in production
- Configure proper SSL/TLS certificates
-
CORS
- Restrict
CORS_ORIGINSto known domains - Never use wildcard in production
- Restrict
-
Updates
- Keep dependencies up to date
- Monitor security advisories
We appreciate responsible disclosure and will acknowledge security researchers who report valid vulnerabilities.