Co To Jest Secrets Management? - Security Bez Tabu

Co To Jest Secrets Management?

Dlaczego może Ci się ta wiedza przydać?

Dzisiejsze przedsiębiorstwa cyfrowe polegają na komercyjnych, wewnętrznie opracowanych aplikacjach do prowadzenia swojej działalności. Coraz częściej wykorzystują zautomatyzowaną infrastrukturę IT i metodologie DevOps, aby przyspieszyć rozwój i innowacje. Chociaż aplikacje i środowiska IT znacznie się różnią w zależności od organizacji, jedna rzecz pozostaje niezmienna: każda aplikacja, skrypt, narzędzie do automatyzacji i inna nieludzka tożsamość opiera się na jakiejś formie uprzywilejowanego poświadczenia dostępu do innych narzędzi, aplikacji i danych.

Co to jest „sekret”?

Sekrety to uprzywilejowane dane uwierzytelniające działania inne niż użytkownika. Odnoszą się do prywatnej informacji, która działa jako klucz do odblokowania chronionych zasobów lub poufnych informacji w narzędziach, aplikacjach, kontenerach, DevOps i środowiskach natywnych dla chmury.

Przykłady:

  • hasła
  • klucze prywatne
  • klucze SSH
  • klucze API
  • poświadczenia połączenia z bazą danych
  • Slack webhooks
  • Github personal access tokens
  • Box access tokens
  • TLS/SSL certificate private keys
  • Authentication/access tokens
  • Symmetric encryption keys

Pamiętaj, że powyższa lista jest przykładowa i nie wyczerpuje ona wszystkich możliwości.

Kluczowe wyzwania w zarządzaniu „sekretami”

Musisz pamiętać, że usługa mająca dostęp do sekretu automatycznie uzyskuje dostęp w czasie rzeczywistym i uprawnienia do wszelkich zasobów należących do właściciela „sekretu”. Adwersarz będzie doskonale o tym wiedzieć. Jego celem będą właśnie „sekrety”, aby uzyskać nieautoryzowany dostęp do dodatkowych sekretów i hostów. Cyberatak, którego celem są tajemnice, może często wykraczać daleko poza zakres pierwotnego naruszenia.

„Sekretami” mogą być na stałe zakodowane dane uwierzytelniające w

  • aplikacjach kontenerowych (np. Kubernetes);
  • procesach automatyzacji (np. Ansible Playbooks);
  • aplikacjach o znaczeniu krytycznym dla biznesu, w tym zarówno opracowane wewnętrznie, jak i gotowe rozwiązania komercyjne (COTS);
  • oprogramowaniach zabezpieczających (np. skanery podatności);
  • serwerach aplikacji i oprogramowaniu do zarządzania IT.

Szczególnie niebezpiecznymi konsekwencjami dla naszej organizacji będą wszelkie naruszenia sekretów dotyczące lub mogące skorzystać z automatyzacji i skalowania.

Cykl życia „sekretu”

„Sekrety” powinny podążać cyklem:

Generation/creation: „sekret” jest tworzony ręcznie przez użytkownika lub automatycznie. Hasła często, ale nie zawsze, muszą być zgodne z zasadami regulującymi ich tworzenie i używanie. Automatyczne generowanie poświadczeń usuwa jedną z kluczowych słabości zarządzania tajnymi: poświadczenia generowane przez człowieka są zwykle łatwiejsze do złamania niż te generowane komputerowo.

Rotation: Po użyciu „sekret” powinien być regularnie zmieniany. Jest to często określane i wymagane przez różne standardy, takie jak PCI DSS, która nakazuje maksymalnie 90-dniowy cykl rotacji. Może to przybrać formę automatycznego ponownego generowania nowego obiektu tajnego zgodnie z harmonogramem lub monitowania o ręczne utworzenie. Jeśli klucz tajny jest przestarzały lub wygasł, dostęp jest odmawiany do czasu jego zaktualizowania.

Revocation: Możliwość usunięcia poświadczeń z użytkownika lub aplikacji, a tym samym odmowa dostępu do zasobu, jest tak ważna, że ​​jest zapisana w wielu standardach polityki bezpieczeństwa, takich jak NIST 800-53. Powinniśmy także wziąć pod uwagę potrzebę „cichego” usunięcia dostępu np. na skutek zwolnienia pracownika. Usuwanie niepotrzebnych, naruszonych, przeterminowanych lub słabych „sekretów” jest również niezbędne jeśli zależy nam na prawidłowej higienie „sekretów”.

Aby zarządzać „sekretami” w całym ich cyklu życia, każdy wybrany przez Ciebie system PAM musi być w stanie przechowywać i udostępniać wpisy tajne w razie potrzeby. Powinien także zapewniać widoczność i kontrolę opartą na politykach od początku do końca.

Więc co to jest Secrets Management?

Secrets Management to proces bezpiecznego i wydajnego zarządzania tworzeniem, rotacją, odwoływaniem i przechowywaniem poświadczeń autoryzacji cyfrowej. W pewnym sensie zarządzanie hasłami może być postrzegane jako ulepszona wersja zarządzania hasłami. Chociaż zakres zarządzanych poświadczeń jest większy, cel jest ten sam — ochrona krytycznych zasobów przed nieautoryzowanym dostępem.

Zarządzanie tajemnicami obejmuje kontrolę bezpieczeństwa w warstwach o najwyższym ryzyku infrastruktury nowoczesnej organizacji: chmury, dane, kod i urządzenia fizyczne.

Best practices

Poniżej znajdziesz zebraną przeze mnie listę best practices dotyczącą „sekretów”:

  • sekrety nie powinny być przechowywane w postaci zwykłego tekstu;
  • sekrety nie powinny być przesyłane przez sieć w postaci zwykłego tekstu;
  • sekrety nie powinny być zawarte w logach;
  • sekrety nie powinny być zawarte w adresach URL;
  • sekrety powinny być regularnie rotowane, aby nawet jeśli zostaną ujawnione, czynność rotacji w naturalny sposób ograniczy czas ekspozycji;
  • każda operacja tworzenia, odczytywania, aktualizowania, usuwania kluczy powinna być rejestrowana do późniejszego audytu;
  • sekrety powinny być rozpowszechniane przez wiarygodne źródło;
  • jeśli przekazałeś sekret, to jest to na Twoją odpowiedzialność. Obejmuje to pełny cykl życia sekretu, w tym odwołanie w przypadku zwolnienia pracownika.

Co zrobić w przypadku ujawnionego „sekretu”?

W przypadku kiedy wiesz, że jeden lub więcej sekretów zostało ujawnionych zastosuj następującą procedurę:

  1. Usuń sekret z kontroli źródła;
  2. Wymuś zresetowanie hasła dla wszystkich kont, z których wyciekł sekret. Samo usunięcie pliku nadal pozostawi historię wersji i nie wiesz, kto miał do niej dostęp.
  3. Rotuj wszelkie ujawnione sekrety. Odwołaj wszystkie certyfikaty wystawione przy użyciu ujawnionego klucza prywatnego.
  4. Kontroluj dzienniki dostępu systemów, których dotyczy problem, aby upewnić się, że nie występują nietypowe działania. Jeśli to możliwe, uruchom nową instancję, korzystając z nowych poświadczeń, zamiast ratować potencjalnie skompromitowany system.
  5. Jeśli podejrzewasz, że możesz mieć incydent związany z bezpieczeństwem, zgłoś to!

Podsumowanie

Celem tego artykułu jest uświadomienie jak wiele błędów i wyzwań może się pojawić przy zarządzaniu „sekretami”. Powinniśmy mieć przygotowane wytyczne i procedury dla pracowników organizacji aby ułatwić im wykonywanie działań z należytą starannością i zachowaniem odpowiedniego poziomu bezpieczeństwa. W kolejnych artykułach na SecurityBezTabu.pl opiszemy narzędzia i oprogramowanie mogące wesprzeć nas w procesie Secrets Management.

Niestety ale obecnie nie znalazłem w języku polskim lepszego określenia niż właśnie „sekret”.