AWS - Redshift Enum
Last updated
Last updated
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Redshift to w pełni zarządzana usługa, która może skalować się do ponad petabajta, używana jako hurtownia danych dla rozwiązań big data. Używając klastrów Redshift, możesz przeprowadzać analizy na swoich zbiorach danych, korzystając z szybkich narzędzi zapytań opartych na SQL i aplikacji analitycznych, aby lepiej zrozumieć wizję swojego biznesu.
Redshift oferuje szyfrowanie w spoczynku, używając czteropoziomowej hierarchii kluczy szyfrujących, korzystając z KMS lub CloudHSM do zarządzania najwyższym poziomem kluczy. Gdy szyfrowanie jest włączone dla twojego klastra, nie można go wyłączyć i odwrotnie. Gdy masz nieszyfrowany klaster, nie można go zaszyfrować.
Szyfrowanie dla twojego klastra może odbyć się tylko podczas jego tworzenia, a po zaszyfrowaniu dane, metadane i wszelkie migawki są również szyfrowane. Poziomy hierarchii kluczy szyfrujących są następujące: poziom pierwszy to klucz główny, poziom drugi to klucz szyfrowania klastra, CEK, poziom trzeci to klucz szyfrowania bazy danych, DEK, a na końcu poziom czwarty to same klucze szyfrowania danych.
Podczas tworzenia swojego klastra możesz wybrać domyślny klucz KMS dla Redshift lub wybrać swój własny CMK, co daje ci większą elastyczność w kontroli klucza, szczególnie z perspektywy audytowalnej.
Domyślny klucz KMS dla Redshift jest automatycznie tworzony przez Redshift za pierwszym razem, gdy opcja klucza jest wybrana i używana, i jest w pełni zarządzany przez AWS.
Ten klucz KMS jest następnie szyfrowany kluczem głównym CMK, poziom pierwszy. Ten zaszyfrowany klucz danych KMS jest następnie używany jako klucz szyfrowania klastra, CEK, poziom drugi. Ten CEK jest następnie wysyłany przez KMS do Redshift, gdzie jest przechowywany oddzielnie od klastra. Redshift następnie wysyła ten zaszyfrowany CEK do klastra przez bezpieczny kanał, gdzie jest przechowywany w pamięci.
Redshift następnie prosi KMS o odszyfrowanie CEK, poziom drugi. Ten odszyfrowany CEK jest następnie również przechowywany w pamięci. Redshift następnie tworzy losowy klucz szyfrowania bazy danych, DEK, poziom trzeci, i ładuje go do pamięci klastra. Odszyfrowany CEK w pamięci następnie szyfruje DEK, który również jest przechowywany w pamięci.
Ten zaszyfrowany DEK jest następnie wysyłany przez bezpieczny kanał i przechowywany w Redshift oddzielnie od klastra. Zarówno CEK, jak i DEK są teraz przechowywane w pamięci klastra zarówno w formie zaszyfrowanej, jak i odszyfrowanej. Odszyfrowany DEK jest następnie używany do szyfrowania kluczy danych, poziom czwarty, które są losowo generowane przez Redshift dla każdego bloku danych w bazie danych.
Możesz użyć AWS Trusted Advisor, aby monitorować konfigurację swoich koszy Amazon S3 i upewnić się, że logowanie koszy jest włączone, co może być przydatne do przeprowadzania audytów bezpieczeństwa i śledzenia wzorców użycia w S3.
Następujące działania umożliwiają przyznanie dostępu do klastra innym kontom AWS:
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)