Commit Graph
7 Commits
Author SHA1 Message Date
popertots e1c0d3a03f fix: remove duplicate validateMinimumAgeField 2026-05-29 17:54:00 +01:00
popertots 10bb1b4e9e fix: remove duplicate validation functions 2026-05-29 17:52:25 +01:00
popertots dec3e1023e fix: remove duplicated validation functions in ServicesManagement.svelte 2026-05-29 17:51:36 +01:00
popertots f5c2c26fe4 fix: resolve compilation errors in frontend and backend 2026-05-29 17:46:15 +01:00
popertots f36497090a feat: migrate to dedicated patch test management 2026-05-29 17:19:02 +01:00
popertots a5a2ffd83e Security: add rate limiting, input validation, and filter category
validation
Backend:
- Add rate limiting middleware (mw/ratelimit.go) - in-memory per-IP
  limiter
- Apply rate limits per endpoint group:
  - Public read-only: 120/min
  - Registration: 10/min
  - Portfolio filters: 60/min
  - Authenticated users: 120/min
  - Admin: none (trusted)
- Add 256 char input length validation on portfolio endpoints
- Validate filter categories exist in DB before querying
- Secure GetImage endpoint: only allow UUID or numeric timestamp (15-20
  digits)
- Remove pattern-based image lookup to prevent enumeration
- Add services validation: name (100), duration (1-480), patch test
  (0-168)
  Frontend:
- Add maxlength=256 to portfolio tag/search inputs
- Add maxlength to registration: name (50), email (255), phone (20),
  password (72)
- Add maxlength=100 to service name input
2026-02-20 12:03:14 +00:00
popertots 3a77e582e3 Split admin dashboard, implement user and booking search 2026-01-17 18:55:58 +00:00