Commit Graph

7 Commits

Author SHA1 Message Date
Matthew Knight 199642242f
Fix security vulnerabilities identified in pre-deployment audit
- Regenerate session ID on login to prevent session fixation (H1)
- Add mutex to login lockout counters to fix race condition (H2)
- Validate issuer/audience claims on Apple ID tokens (M2)
- Verify comment belongs to ticket's issue to prevent attachment IDOR (M4)
- Stop SSO from re-approving admin-disapproved users (M3)
- Add Content-Security-Policy header (M1)
- Configure trusted proxies via TRUSTED_PROXIES env var (M6)
- Cap password length at 128 for bcrypt truncation (L1)
- Set Secure flag on flash cookies over HTTPS (L2)
- Rate-limit POST /reset-password (L3)
- Add authenticated password change at /account/password (L4)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-18 12:30:23 -08:00
Matthew Knight 8eaa27bb31
Remove dead code 2026-02-17 17:07:32 -08:00
Matthew Knight dca569b278 Merge pull request 'Use session-based flash messages instead of query params' (#46) from fix/session-flash into main
Reviewed-on: https://git.ts.mattnite.net/mattnite/forgejo-tickets/pulls/46
2026-02-18 00:24:02 +00:00
Matthew Knight 8603b0bfb5
Use session-based flash messages instead of query params
Fixes #33

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 16:19:06 -08:00
Matthew Knight bcc912077d
Add security response headers
Fixes #18

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 16:00:56 -08:00
Matthew Knight 9b2a812d95
Add rate limiting to authentication endpoints
Fixes #15

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 15:55:34 -08:00
Matthew Knight 4fa62fc164
Init 2026-02-12 15:00:17 -08:00