Przejdź do treści głównej
UnitAI
Postmortem inżynierski

Postmortem — Eliminacja IDOR w Załącznikach S3

Paweł Bereś7 min lektury
Streszczenie inżynierskie

Dlaczego presigned URL-e to pozorne bezpieczeństwo i jak zastąpiliśmy je uwierzytelnionym proxy z PostgreSQL Row Level Security (RLS) i strumieniowaniem zakresów bajtowych.

Problem z presigned URL w systemach wielofirmowych

Presigned URL w chmurze S3 jest często traktowany jako bezpieczny sposób udostępniania plików. W praktyce wygenerowany link może zostać przekazany osobie nieuprawnionej lub podsłuchany w historii przeglądarki.

Rozwiązanie: Autoryzowane Proxy z PostgreSQL RLS

Zastąpiliśmy bezpośrednie linki S3 dedykowanym proxy aplikacyjnym. Każde żądanie pobrania załącznika wymaga aktywnej sesji, a baza danych weryfikuje przynależność pliku do firmy użytkownika na poziomie reguł Row Level Security (RLS).

CREATE POLICY attachment_tenant_isolation ON attachments
FOR SELECT
USING (tenant_id = current_setting('app.current_tenant_id')::uuid);

Wynik produkcyjny

Całkowita eliminacja podatności IDOR i pełna kontrola nad uprawnieniami w czasie rzeczywistym.

Autor analizy
Paweł Bereś · UnitAI
Omów architekturę systemu