| Version | Supported |
|---|---|
| Current | Yes |
If you discover a security vulnerability, please report it responsibly:
- Email: djkingy79@gmail.com
- Subject:
[SECURITY] Appeal Case Manager — Vulnerability Report - Include: Description, steps to reproduce, potential impact
- Do NOT disclose publicly until the issue is resolved
Expected response time: 48 hours.
- Password hashing: PBKDF2-SHA256 with 100,000 iterations and random 128-bit salt
- Session tokens: Cryptographically random 128-bit hex (UUID4)
- Session expiry: 7 days with automatic cleanup
- Cookie settings:
HttpOnly,Secure,SameSite=Lax - Rate limiting on login/register endpoints (5 attempts per minute)
- All data encrypted in transit (TLS/SSL)
- MongoDB access restricted to application server
- No credit card data stored (PayID bank transfers only)
- Document uploads processed server-side, not stored in public directories
- AI processing via OpenAI API (data not used for training per API ToS)
- Restricted to production domain (
criminallawappealmanagement.com.au) - Credentials allowed only for same-origin requests
- Methods and headers explicitly whitelisted
X-Content-Type-Options: nosniffX-Frame-Options: DENYX-XSS-Protection: 1; mode=blockStrict-Transport-Security: max-age=31536000; includeSubDomainsReferrer-Policy: strict-origin-when-cross-originContent-Security-Policy: default-src 'self'
- All user inputs validated server-side via Pydantic models
- URL parameters whitelisted (e.g., tab values)
- File uploads restricted by type and size
- HTML content sanitised before rendering
| Secret | Purpose | Rotation |
|---|---|---|
MONGO_URL |
Database connection | On compromise |
OPENAI_API_KEY |
AI report generation (your OpenAI account) | On compromise |
RESEND_API_KEY |
Transactional email | On compromise |
- Generate new key/credential from the provider
- Update
.envon the production server - Restart the application (
supervisorctl restart backend) - Verify service is healthy (
GET /api/health) - Revoke the old key from the provider
- Document rotation date
- Detect: Monitor application logs and error rates
- Contain: Disable affected feature or endpoint
- Assess: Determine scope and impact
- Remediate: Apply fix and deploy
- Notify: Inform affected users if personal data was exposed
- Review: Post-incident review and documentation