senke
|
71c15c2590
|
fix(v0.12.6.1): remediate 2 CRITICAL + 10 HIGH + 1 MEDIUM pentest findings
Security fixes implemented:
CRITICAL:
- CRIT-001: IDOR on chat rooms — added IsRoomMember check before
returning room data or message history (returns 404, not 403)
- CRIT-002: play_count/like_count exposed publicly — changed JSON
tags to "-" so they are never serialized in API responses
HIGH:
- HIGH-001: TOCTOU race on marketplace downloads — transaction +
SELECT FOR UPDATE on GetDownloadURL
- HIGH-002: HS256 in production docker-compose — replaced JWT_SECRET
with JWT_PRIVATE_KEY_PATH / JWT_PUBLIC_KEY_PATH (RS256)
- HIGH-003: context.Background() bypass in user repository — full
context propagation from handlers → services → repository (29 files)
- HIGH-004: Race condition on promo codes — SELECT FOR UPDATE
- HIGH-005: Race condition on exclusive licenses — SELECT FOR UPDATE
- HIGH-006: Rate limiter IP spoofing — SetTrustedProxies(nil) default
- HIGH-007: RGPD hard delete incomplete — added cleanup for sessions,
settings, follows, notifications, audit_logs anonymization
- HIGH-008: RTMP callback auth weak — fail-closed when unconfigured,
header-only (no query param), constant-time compare
- HIGH-009: Co-listening host hijack — UpdateHostState now takes *Conn
and verifies IsHost before processing
- HIGH-010: Moderator self-strike — added issuedBy != userID check
MEDIUM:
- MEDIUM-001: Recovery codes used math/rand — replaced with crypto/rand
- MEDIUM-005: Stream token forgeable — resolved by HIGH-002 (RS256)
Updated REMEDIATION_MATRIX: 14 findings marked ✅ CORRIGÉ.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-03-12 05:40:53 +01:00 |
|
senke
|
7df866cd3f
|
v0.9.7 beta
|
2026-03-06 18:58:37 +01:00 |
|
senke
|
cd974172cb
|
v0.9.4
|
2026-03-05 23:03:43 +01:00 |
|
senke
|
3c5bb018cb
|
chore(release): v0.931 — Cursor (cursor-based pagination, performance baseline)
|
2026-03-02 12:35:49 +01:00 |
|
senke
|
3d5edd1ff2
|
[BE-TEST-007] test: Add unit tests for webhook handlers
- Added comprehensive unit tests for all webhook handler methods:
* RegisterWebhook (success, invalid URL, no events, unauthorized)
* ListWebhooks (success)
* DeleteWebhook (success, not found, invalid ID)
* GetWebhookStats (success)
* TestWebhook (success, not found)
* RegenerateAPIKey (success, not found, invalid ID)
- Fixed validation bug in BindAndValidateJSON to properly return errors for binding validation failures
- Fixed compilation errors in profile_handler_test.go and room_handler_test.go
- All tests passing
|
2025-12-25 01:32:54 +01:00 |
|
okinrev
|
8caa2fd7ca
|
STABILISATION: phase 3–5 – API contract, tests & chat-server hardening
|
2025-12-06 17:21:59 +01:00 |
|
okinrev
|
a47464509a
|
fix(backend-tests): enable room_handler_test and resolve metric collisions
|
2025-12-06 12:53:15 +01:00 |
|
okinrev
|
2425c15b09
|
adding initial backend API (Go)
|
2025-12-03 20:29:37 +01:00 |
|