Web Application Security Testing
logging best practices

Cyberbezpieczeństwo dla startupów – centralizowanie logów

Centralizacja logów w Twoim startupie za pomocą narzędzia do zarządzania logami sprawia, że łatwo jest odkryć zdarzenia prowadzące do incydentów bezpieczeństwa. Umożliwia to również śledzenie wielu logów i szybkie ich przeszukiwanie na różnych serwerach, systemach, aplikacjach oraz w chmurze. Logi, znane również jako logi zdarzeń, zapisy audytów lub ślady audytów, rejestrują wszystko, co dzieje się w systemie operacyjnym lub sieci, od przeszłości po teraźniejszość.

!Ten artykuł jest częścią serii poświęconej cyberbezpieczeństwu dla startupów. Poprzedni artykuł omawiał najlepsze praktyki w zakresie tworzenia kopii zapasowych.

Logi bezpieczeństwa pomagają śledzić informacje i zdarzenia związane z bezpieczeństwem, takie jak przyczyny ataku i jego ścieżkę, co wspiera zapobieganie przyszłym naruszeniom. Centralizacja logów jest więc skutecznym narzędziem w zakresie cyberbezpieczeństwa dla startupów, pomagając organizować i zarządzać zdarzeniami bezpieczeństwa. Dzięki centralizacji logów i odpowiedniemu zarządzaniu nimi, postura bezpieczeństwa Twojego startupu może stać się bardziej solidna.

cybersecurity for startups centralize all loggings

Korzyści z centralizacji logów

Logi pomagają w śledzeniu i organizowaniu zdarzeń bezpieczeństwa. Mogą zawierać cenne informacje, takie jak udane i nieudane próby logowania, adresy IP, systemy operacyjne i inne. Na przykład logi dostarczają niezbędnych informacji, które ujawniają lokalizacje, szczegóły sieciowe, czy atakujący używał urządzenia z systemem Windows lub Apple, i inne. Monitorowanie logów pod kątem podejrzanej aktywności pozwala zespołowi Twojego startupu na identyfikację zachowań, które mogą prowadzić do incydentu bezpieczeństwa, dając im możliwość zareagowania na czas i załatania ewentualnych luk bezpieczeństwa.

Zespół Twojego startupu może być na bieżąco z incydentami, tworząc powiadomienia w czasie rzeczywistym w narzędziu do zarządzania logami, które uruchamiają się, gdy spełnione są określone przez użytkownika warunki. Na przykład mogą powiadomić Twój zespół, gdy wykryją udane ataki typu password spraying w środowiskach Active Directory, korzystając z logów Windows Event Logs w kategoriach Account Logon oraz Logon/Logoff Advanced Audit Policy. Centralizując logi, łatwo jest przeglądać zdarzenia bezpieczeństwa i przeciwdziałać bieżącym lub potencjalnym zagrożeniom, a przynajmniej wyciągnąć z nich wnioski.

monitoring logs

Najczęstsze rodzaje logów

Różne pliki dzienników dostarczają informacji, które mogą pomóc w identyfikacji incydentu bezpieczeństwa oraz wyjaśnieniu, jak doszło do naruszenia lub co poszło nie tak podczas włamania. Pliki dzienników są dostępne w systemach zarządzania logami lub narzędziach, które centralizują różne typy logów. Tworzenie odpowiednich logów do monitorowania w Twoim startupie pomoże Twojemu zespołowi być czujnym i gotowym na incydenty bezpieczeństwa.

Oto kilka typów logów, które mogą być ważne do utworzenia i monitorowania w Twoim startupie za pomocą narzędzia do zarządzania logami.

Logi urządzeń brzegowych

Urządzenia brzegowe, takie jak zapory ogniowe, wirtualne sieci prywatne (VPN), systemy wykrywania intruzów (IDS) oraz systemy zapobiegania włamaniom (IPS), monitorują i regulują ruch do i z sieci startupu. Mogą one ujawniać szczegóły dotyczące przychodzącego ruchu, adresy IP odwiedzanych przez użytkowników stron internetowych oraz anomalię w zachowaniu ruchu, na przykład zalew nieudanych prób logowania w krótkim czasie.

Ponieważ błędne konfiguracje zabezpieczeń są główną przyczyną naruszeń zapór ogniowych, monitorowanie logów zapór pomaga wykrywać nieuzasadnione zmiany konfiguracji zabezpieczeń. Analiza logów zapór może również pomóc w wykryciu ataku typu distributed denial-of-service (DDoS), na przykład, gdy serwer otrzymuje ogromną liczbę pakietów SYN w krótkim czasie. Logi urządzeń brzegowych są niezastąpione w zrozumieniu zdarzeń bezpieczeństwa w sieci.

Logi urządzeń brzegowych są cenne z trzech powodów, wykrywając:

  • Złośliwy ruch do lub z Twojej sieci
  • Błędne konfiguracje zabezpieczeń
  • Ataki

Logi punktów końcowych

Logi punktów końcowych rejestrują działania na punktach końcowych lub urządzeniach połączonych w sieci, które komunikują się z innymi urządzeniami przez serwery. Punkty końcowe obejmują komputery stacjonarne, laptopy, smartfony, tablety, drukarki i inne. Ważne jest, aby zauważyć, że wymienne napędy dyskowe (takie jak pendrive’y) są podatne na instalację złośliwego oprogramowania oraz próby eksfiltracji danych. Monitorowanie logów punktów końcowych może wykrywać takie złośliwe zachowanie. Logi punktów końcowych również wykrywają, kiedy użytkownicy naruszają zasady związane z instalowaniem i używaniem oprogramowania na swoich stacjach roboczych.

Są one przydatne do monitorowania:

  • Działań na wymiennych napędach dyskowych
  • Aktywności użytkowników

Logi aplikacji: Ten typ logu to plik zdarzeń zawierający informacje o działaniach użytkowników i systemu w ramach aplikacji. Może być również przechowywany w bazie danych. Startupy mogą korzystać z różnych aplikacji, takich jak aplikacje serwera WWW, bazy danych i inne aplikacje wewnętrzne, które wykonują określone funkcje. Logi aplikacji mogą zawierać błędy, kiedy operacja została wykonana, oraz ostrzeżenia, takie jak niski poziom wolnego miejsca na dysku. Mogą również ujawniać udane próby logowania, nieudane próby logowania i inne, które mogą być cenne zarówno dla użytkowników, jak i tylko dla administratorów lub zespołu zajmującego się obsługą incydentów.

Są one przydatne dla startupów:

  • Do rozwiązywania problemów i naprawiania kwestii związanych z wydajnością lub bezpieczeństwem aplikacji
  • Do monitorowania aktywności, takich jak żądania i zapytania, nieautoryzowany dostęp do plików oraz manipulacja danymi

Logi serwera: Logi serwera zawierają wszystkie działania określonego serwera w określonym czasie. Dostarczają szczegółowych informacji na temat tego, jak, kiedy i przez kogo uzyskano dostęp do witryny internetowej lub aplikacji Twojego startupu. Logi serwera są kluczowe do monitorowania, ponieważ zawierają informacje, które nie występują nigdzie indziej, takie jak błędy serwera, zapisy dostępu użytkowników i inne dane.

Logi serwera mogą obejmować logi dostępu, logi agentów, logi odwołań oraz logi błędów.

Te logi mogą ujawniać informacje o plikach HTML i obrazach graficznych żądanych z Twojego serwera, liczbę odwiedzających Twoją stronę internetową oraz ich pochodzenie (np. .com, .gov, .io), którzy klienci WWW wysłali żądania do Twojego serwera. Mogą również zawierać URL, na którym gość był przed przeglądaniem Twojej witryny, oraz informacje o nieudanych próbach dostępu do plików (np. gdy ktoś próbuje uzyskać dostęp do nieistniejącego pliku na Twoim serwerze).

Logi serwera są niezbędne, ponieważ pomagają Ci:

  • Określić przyczynę problemu na serwerze
  • Dostarczyć cennych informacji, które pomogą wykryć potencjalne zagrożenia bezpieczeństwa skierowane na Twój serwer

Logi proxy: Logi proxy zawierają informacje o statystykach użycia i zachowaniu użytkowników końcowych w sieci, ponieważ wszystkie żądania i odpowiedzi sieciowe przechodzą przez serwer proxy. Serwery proxy odgrywają istotną rolę w sieci Twojego startupu, zapewniając bramę między użytkownikami a internetem, co oszczędza pasmo, reguluje dostęp i zapewnia prywatność. Mogą również pomóc w monitorowaniu długości pakietów wymienianych przez serwer, co może dostarczyć więcej szczegółów. Na przykład, użytkownik, który wielokrotnie wysyła lub odbiera pakiety o tej samej długości w określonym przedziale czasowym, może wskazywać na aktualizację oprogramowania lub ujawnić złośliwe oprogramowanie wymieniające sygnały z serwerami sterującymi. Logi proxy są przydatne do monitorowania podstawowego zachowania użytkowników.

types of logs

Różne formaty logów

Gdy logi są przesyłane do scentralizowanego rozwiązania do zarządzania logami, takiego jak narzędzie do zarządzania logami, są przechowywane i przesyłane w różnych formatach. Mogą to być formaty CSV, JSON, para klucz-wartość oraz Common Event Format.

CSV

Plik CSV (comma-separated values, wartości oddzielone przecinkami) to plik tekstowy, który oddziela informacje za pomocą przecinków. Często występuje w arkuszach kalkulacyjnych i bazach danych i może być importowany do bazy danych przechowywania. Jest łatwy do konwersji na inne typy plików, ponieważ nie jest hierarchiczny ani obiektowy.

JSON

JavaScript Object Notation (JSON) to strukturalny, tekstowy format przechowywania danych, który ułatwia analizowanie zapisanych logów. JSON umożliwia zapytania o konkretne pola, co ułatwia przeszukiwanie zdarzeń w zorganizowany sposób, dlatego jest to bardzo niezawodny format do zarządzania logami.

Para klucz-wartość

Para klucz-wartość składa się z klucza i przypisanej do niego wartości. Klucz jest stały, a wartość zmienna w różnych wpisach. Ten format polega na grupowaniu podobnych zestawów danych pod wspólnym kluczem. Dodatkowo, jeśli wykonasz zapytanie o określony klucz, wszystkie dane pod tym kluczem mogą zostać wyodrębnione.

Common Event Format

CEF (Common Event Format) to format zarządzania logami, który wykorzystuje format wiadomości syslog, promujący interoperacyjność poprzez uproszczenie zbierania i przechowywania danych logów z różnych punktów końcowych i aplikacji. Jest to najczęściej stosowany format logów wspierany przez wielu dostawców i platformy oprogramowania. Składa się z nagłówka CEF oraz rozszerzenia CEF, które zawiera dane logów w parach klucz-wartość.

Centralne zarządzanie logami

Centralne zarządzanie logami polega na ciągłym zbieraniu, przechowywaniu, przetwarzaniu, syntezowaniu i analizowaniu danych z różnych programów i aplikacji w jednym centralnym, dostępnym miejscu. Posiadanie wszystkich zebranych logów w jednym systemie zarządzania logami (LMS) znacznie ułatwia zarządzanie logami i jest także bardzo wygodnym sposobem dzielenia się danymi logów z zespołem startupu. Dodatkowo zapewnia to integralność logów. Na przykład, atakujący czasami modyfikują logi, aby usunąć ślady swoich ataków. Celem scentralizowanego zarządzania logami jest ochrona przed atakującymi, którzy próbują modyfikować logi, w tym optymalizacja wydajności systemu, identyfikowanie problemów technicznych, poprawa zarządzania zasobami, wzmacnianie bezpieczeństwa i poprawa zgodności.

System zarządzania logami (LMS) to rozwiązanie programowe lub narzędzie, które zbiera, sortuje i przechowuje dane logów oraz logi zdarzeń z różnych źródeł w jednym scentralizowanym miejscu, zapewniając cenne informacje. Na przykład, może gromadzić dane logów z aplikacji, usług, hostów i innych źródeł. Wielką korzyścią z tego rozwiązania jest to, że może ono szybko zaoszczędzić czas zespołowi, który musiałby ręcznie przeszukiwać niezliczone logi podczas incydentu bezpieczeństwa i szukać pierwotnej przyczyny ataku oraz ścieżki ataku. Ponadto zmniejsza czas spędzany na przeszukiwaniu niekończących się logów, co może powodować zmęczenie zespołu, pozwalając im skupić się na tym, co najważniejsze – szybkim wykryciu podejrzanej aktywności i skoncentrowaniu się na podjęciu odpowiednich działań.

centralized log management

Top 10 rozwiązań do zarządzania logami

System zarządzania logami (LMS) służy głównie do zbierania danych i centralizacji logów w jednym miejscu. Jest to odpowiedni wybór dla startupu. LMS różni się od systemu zarządzania informacjami o zdarzeniach bezpieczeństwa (SIEM), ponieważ SIEM posiada dodatkowe funkcje bezpieczeństwa, takie jak analiza zagrożeń w czasie rzeczywistym, i zazwyczaj służy do zarządzania bezpieczeństwem dużej lub zróżnicowanej infrastruktury IT. Wybór odpowiedniego LMS dla Twojego startupu jest kluczowy dla monitorowania i śledzenia potencjalnych incydentów bezpieczeństwa.

Oto lista 10 popularnych rozwiązań do zarządzania logami:

Oto 10 otwartych narzędzi do zbierania logów, które również możesz wykorzystać:

Najlepsze praktyki dotyczące logowania

Dane logów mogą zawierać ogromną ilość informacji, co może być przytłaczające dla Ciebie i Twojego zespołu. Znajomość najlepszych praktyk dotyczących logowania pomoże w odpowiednim zarządzaniu logami w sposób jak najbardziej efektywny.

Oto siedem najlepszych praktyk monitorowania logów zdarzeń, agregowania i zarządzania nimi:

  1. Nie loguj wszystkich dostępnych danych: Upewnij się, że logujesz tylko wartościowe dane, które mają sens w kontekście Twojego startupu. Nie loguj wszystkiego, co generuje Twoja aplikacja. Zapisuj tylko istotne dane, takie jak logi urządzeń brzegowych, logi aplikacji i logi serwerów, które pomagają monitorować podejrzane aktywności w celach bezpieczeństwa lub rozwiązywania problemów. Ograniczaj się do logowania tylko danych dotyczących krytycznych ścieżek lub działań, które chcesz monitorować. Kolejnym powodem, dla którego nie powinno się logować wszystkich danych, jest to, że może to prowadzić do przytłoczenia ogromną ilością informacji, co utrudnia priorytetyzację działań. Dodatkowo koszty przechowywania ogromnych logów mogą szybko wzrosnąć, w miarę jak Twój startup będzie się rozwijał.
  2. Nie loguj danych wrażliwych: Ważne jest, aby nie logować danych wrażliwych, takich jak dane osobowe (PII), które umożliwiają identyfikację osoby, w tym imiona, numery PESEL, daty urodzenia, nazwy użytkowników, hasła, numery kart kredytowych itd. Logowanie danych wrażliwych naraża użytkowników na ryzyko, a osoby mające dostęp do sieci, w tym pracownicy czy cyberprzestępcy, mogą te dane wykraść.
  3. Nie loguj danych w różnych formatach: Stwórz jeden standardowy format dla logowanych danych. Trzymanie się jednego formatu ułatwia wyszukiwanie danych w logach i jest bardzo pomocne dla małych zespołów. Ułatwi to również konfigurację narzędzi do agregacji logów.
  4. Nie twórz silosów danych logów: Nie przechowuj danych w osobnych rozwiązaniach magazynujących, do których nie mają dostępu inne zespoły. Upewnij się, że inne zespoły mogą znaleźć logi. Aby tego uniknąć, używaj narzędzia do agregacji logów, które pozwoli scentralizować dane logów w jednym miejscu i umożliwi innym zespołom dostęp do tych danych.
  5. Wykorzystaj tagowanie logów, aby wzbogacić dane: Tagowanie logów to prosta strategia, która polega na automatycznym oznaczaniu różnych typów danych w logach. Szybko filtruje dane logów podczas etapu analizy.
  6. Ustaw inteligentne powiadomienia: Narzędzie do monitorowania logów powinno umożliwiać proaktywne monitorowanie przez ustawianie powiadomień, które pomogą wykrywać incydenty bezpieczeństwa zanim do nich dojdzie. Można to osiągnąć, implementując SIEM na szczycie rozwiązania do zarządzania logami. Dodatkowo możesz skrócić czas odpowiedzi na incydent, integrując narzędzie do monitorowania logów z narzędziem komunikacyjnym, takim jak Slack. W ten sposób zespół zostanie powiadomiony, gdy konkretne powiadomienie zostanie uruchomione. Unikaj wysyłania powiadomień e-mailowych, ponieważ może minąć kilka godzin, zanim zespół je zauważy. Powiadomienia powinny być tak skonstruowane, by wyzwalały jak najmniej fałszywych alarmów.
  7. Używaj rotacji logów do zarządzania ich objętością: Rozważ użycie narzędzia do rotacji logów do długoterminowego przechowywania danych logów, ponieważ objętość logów może rosnąć w szybkim tempie. Narzędzie do rotacji logów pomoże w kompresji i archiwizacji danych logów. Ułatwi to także zbieranie długoterminowych metryk dotyczących wydajności aplikacji lub wskaźnika błędów, co pozwala określić, czy jakość aplikacji się pogorszyła. Pomaga to również w spełnianiu regulacji dotyczących przechowywania logów na potrzeby audytów i zgodności z przepisami.
logging best practices

Minimalizowanie zakresu logowania

Logowanie wszystkich dostępnych danych jest nieproduktywne dla Twojego startupu. Najlepiej ograniczyć zakres logowania, aby podczas przeszukiwania logów nie pogubić się w morzu nieistotnych wpisów. Gdy wiesz, które logi chcesz zbadać, możesz stworzyć plan logowania, który zapisuje informacje w miarę ich występowania, najlepiej w miejscu, które uniemożliwia modyfikację logów. Pomoże to w zapewnieniu dowodów w przypadku incydentu bezpieczeństwa.

Logowanie umożliwia rejestrowanie informacji w miarę ich występowania.

Ochrona danych wrażliwych w logach

Dane wrażliwe lub dane osobowe (PII), takie jak adres e-mail, imię, data urodzenia, numer PESEL, adres IP, nazwy użytkowników i hasła, mogą znaleźć się w plikach logów. Rejestrowanie takich danych może stanowić problem zarówno od strony prawnej, jak i prywatności. Najlepszym rozwiązaniem dla startupu jest sklasyfikowanie danych, które muszą być zabezpieczone, oraz opracowanie Polityki Klasyfikacji Danych, która kategoryzuje dane według ich wrażliwości.

Oto trzy typy kategoryzacji danych:

  1. Dane wrażliwe: Najbardziej wrażliwe dane, które mogą stanowić poważne zagrożenie w przypadku ujawnienia. Dostęp mają tylko osoby, które muszą je znać.
  2. Dane poufne: Dane o średniej wrażliwości. Ich ujawnienie może stanowić umiarkowane ryzyko dla firmy. Dostęp kontrolowany jest przez firmę lub dział odpowiedzialny za te dane.
  3. Dane publiczne: Dane niewrażliwe, które, jeśli zostaną ujawnione, nie stanowią zagrożenia dla firmy.

Transmitowanie danych logów przez zaszyfrowane kanały

Logi powinny być przesyłane do scentralizowanej lokalizacji wyłącznie za pomocą zaszyfrowanych kanałów. Przesyłanie niezabezpieczonych logów nie jest warte ryzyka, nawet jeśli jest szybsze, ponieważ logi mogą zostać narażone na zagrożenia. Startup powinien wdrożyć skuteczną strategię szyfrowania, wykorzystując silne szyfrowanie i odpowiednie zarządzanie kluczami.

Filtrowanie danych wrażliwych

Możliwość filtrowania i anonimizowania danych wrażliwych z logów jest kluczowa. Ty i Twój zespół powinniście łatwo filtrować i redagować dane wrażliwe przed ich opuszczeniem sieci w celu ochrony danych, spełnienia obowiązków bezpieczeństwa i zgodności z przepisami.

Anonimizowanie pól logów z danymi wrażliwymi

Zawsze sprawdzaj pola logów zawierające dane wrażliwe i anonimizuj je przed wysłaniem do zdalnego magazynu. Możesz również zastosować haszowanie, szyfrowanie lub całkowicie usunąć pola zawierające dane wrażliwe.

Podsumowanie

Centralizacja logów w Twoim startupie za pomocą systemu zarządzania logami to wygodny sposób monitorowania logów i śledzenia zdarzeń, które mogą prowadzić do incydentów bezpieczeństwa. Istnieje wiele logów do wyboru, a określenie, które z nich są odpowiednie do monitorowania w Twoim startupie, jest bardzo ważne. Dostępnych jest kilka systemów zarządzania logami, które pozwalają na centralizację logów w jednym miejscu, co jest wygodne dla zespołów potrzebujących dzielić się danymi logów. Ochrona danych wrażliwych w logach przed ich przesłaniem do scentralizowanego magazynu danych jest kluczowa, aby nie narażać ich na zagrożenia. Przestrzeganie najlepszych praktyk dotyczących logowania może pomóc w uczynieniu logowania pragmatycznym i korzystnym narzędziem w poprawie bezpieczeństwa cybernetycznego w startupach.

!Następny artykuł omówi różnice między etycznymi hakerami a cyberprzestępcami. Zostanie również przedstawiona polityka testów penetracyjnych i ujawniania podatności.


Źródła:

  1. https://www.loggly.com/use-cases/event-log-monitoring-and-management-best-practices
  2. https://www.graylog.org/post/server-log-files-in-a-nutshell
  3. https://www.logiq.ai/6-ways-to-protect-sensitive-data-in-logs
  4. https://geekflare.com/open-source-centralized-logging/
  5. https://www.manageengine.com/log-management/siem/collecting-and-analysing-different-log-types.html
  6. https://www.n-able.com/blog/siem-vs-log-management

Porozmawiajmy o przeprowadzaniu badań bezpieczeństwa aplikacji internetowej

Umów się na rozmowę z ekspertem ds. cyberbezpieczeństwa

    Czy artykuł jest pomocny? Podziel się nim ze swoimi znajomymi.

    Author

    Mars Groves