7 narzędzi open source do monitorowania bezpieczeństwa systemów chmurowych, o których warto wiedzieć

Szerokie rozpowszechnienie obliczeń w chmurze pomaga firmom w skalowaniu działalności. Jednak wprowadzenie nowych platform oznacza również pojawienie się nowych zagrożeń. Wsparcie wewnętrznej drużyny odpowiedzialnej za monitorowanie bezpieczeństwa usług w chmurze to zadanie trudne. Istniejące narzędzia monitorujące są drogie i wolne. W pewnym zakresie trudno jest nimi zarządzać, szczególnie gdy należy zapewnić bezpieczeństwo dużej infrastruktury chmurowej. Firmy, aby utrzymać swoje bezpieczeństwo w chmurze na wysokim poziomie, potrzebują mocnych, elastycznych i zrozumiałych narzędzi, których możliwości przewyższają to, co było wcześniej dostępne. W tym przypadku bardzo pomocne okazują się technologie open source, które pomagają oszczędzać budżet na bezpieczeństwo i są tworzone przez specjalistów znających się na swoim fachu.

7 narzędzi open source do monitorowania bezpieczeństwa systemów chmurowych, o których warto wiedzieć

W artykule, którego tłumaczenie dzisiaj publikujemy, przedstawiono przegląd 7 narzędzi open source do monitorowania bezpieczeństwa systemów chmurowych. Narzędzia te mają na celu ochronę przed hakerami i cyberprzestępcami poprzez wykrywanie anomalii i niebezpiecznych działań.

1. Osquery

Osquery to system do niskopoziomowego monitorowania i analizy systemów operacyjnych, który pozwala specjalistom ds. bezpieczeństwa przeprowadzać złożone badania danych przy użyciu SQL. Framework Osquery może działać na Linuxie, macOS, Windows i FreeBSD. Reprezentuje system operacyjny (OS) w postaci wysokowydajnej bazy danych relacyjnej. Pozwala to specjalistom ds. bezpieczeństwa badać OS poprzez wykonywanie zapytań SQL. Na przykład, za pomocą zapytania można dowiedzieć się o uruchomionych procesach, załadowanych modułach jądra, otwartych połączeniach sieciowych, zainstalowanych rozszerzeniach przeglądarki, zdarzeniach sprzętowych, oraz sumach kontrolnych plików.

Framework Osquery został stworzony przez Facebooka. Jego kod został udostępniony w 2014 roku, po tym jak firma zrozumiała, że nie tylko ona sama potrzebuje narzędzi do monitorowania niskopoziomowych mechanizmów systemów operacyjnych. Od tego czasu z Osquery korzystają specjaliści z takich firm jak Dactiv, Google, Kolide, Trail of Bits, Uptycs oraz wiele innych. Niedawno pojawiły się informacje ogłoszono o tym, że Linux Foundation i Facebook zamierzają utworzyć fundusz wsparcia dla Osquery.

Demon monitorowania hostów Osquery, nazywany osqueryd, pozwala na planowanie wykonywania zapytań mających na celu zbieranie danych z całej infrastruktury organizacji. Demon zbiera wyniki zapytań i tworzy dzienniki, które odzwierciedlają zmiany w stanie infrastruktury. Może to pomóc specjalistom ds. bezpieczeństwa w monitorowaniu sytuacji w systemie i jest szczególnie użyteczne do identyfikacji anomalii. Możliwości Osquery w zakresie agregacji dzienników mogą być wykorzystane do ułatwienia wyszukiwania znanym i nieznanym złośliwym oprogramowaniem, a także do identyfikacji punktów, w których intruzi wniknęli do systemu, oraz do znajdowania zainstalowanych przez nich programów. Oto materiał, w którym można znaleźć szczegóły dotyczące wykrywania anomalii za pomocą Osquery.

2. GoAudit

System audyt Linux składa się z dwóch głównych komponentów. Pierwszy to pewien kod na poziomie jądra, przeznaczony do przechwytywania i monitorowania wywołań systemowych. Drugi komponent to demon działający w przestrzeni użytkownika, nazywany auditd. Odpowiada on za zapisywanie wyników audytu na dysku. GoAudit, system stworzony przez Slack i wydany w 2016 roku, przeznaczony jest do zastąpienia auditd. Posiada ulepszone możliwości logowania dzięki konwersji wielowierszowych komunikatów o zdarzeniach generowanych przez system audytu Linux w jedne obiekty BLOB JSON, co ułatwia analizę. Dzięki GoAudit można bezpośrednio uzyskiwać dostęp do mechanizmów na poziomie jądra przez sieć. Ponadto można włączyć minimalne filtrowanie zdarzeń na samym hoście (lub całkowicie wyłączyć filtrowanie). Warto dodać, że GoAudit to projekt nie tylko dla zapewnienia bezpieczeństwa. To narzędzie zaprojektowane jako wielofunkcyjne wsparcie dla specjalistów zajmujących się administracją systemami lub programowaniem. Pomaga w rozwiązywaniu problemów w dużych infrastrukturach.

System GoAudit jest napisany w Golang. To bezpieczny typowo i wysokowydajny język. Przed zainstalowaniem GoAudit upewnij się, że posiadasz wersję Golang powyżej 1.7.

3. Grapl

Projekt Grapl (Graph Analytics Platform) został przetłumaczony na open source w marcu ubiegłego roku. Jest to stosunkowo nowa platforma do wykrywania problemów z bezpieczeństwem, przeprowadzania ekspertyz komputerowych oraz tworzenia raportów o incydentach. Atakujący często działają, wykorzystując coś, co przypomina model grafu, uzyskując kontrolę nad określoną systemem i badając inne systemy sieciowe, zaczynając od tego systemu. Dlatego całkowicie naturalne jest, że również obrońcy systemów będą używać mechanizmu opartego na modelu grafu relacji systemów sieciowych, uwzględniając cechy więzi między systemami. Grapl demonstruje próbę zastosowania środków do wykrywania incydentów oraz reagowania na nie, opierając się na modelu grafu, a nie na modelu logów.

Narzędzie Grapl przyjmuje logi związane z bezpieczeństwem (logi Sysmon lub logi w standardowym formacie JSON) i konwertuje je na podgrafy (określając „informacje identyfikacyjne” dla każdego węzła). Następnie łączy podgrafy w ogólny graf (Master Graph), który przedstawia działania podjęte w analizowanych środowiskach. Następnie Grapl uruchamia na otrzymanym grafie analizatory (Analyzers) przy użyciu „sygnatur atakującego” do wykrywania anomalii i podejrzanych wzorców. Gdy analizator identyfikuje podejrzany podgraf, Grapl generuje konstrukcję Engagement, przeznaczoną do prowadzenia dochodzeń. Engagement to klasa Pythona, którą można załadować na przykład w Jupyter Notebook działającym w środowisku AWS. Grapl potrafi również zwiększać zakres zbierania informacji w celu prowadzenia dochodzenia w sprawie incydentu przez rozszerzenie grafu.

Jeśli chcesz lepiej zrozumieć Grapl — możesz obejrzeć to interesujący film — nagranie wystąpienia z BSides Las Vegas 2019.

4. OSSEC

OSSEC — to projekt założony w 2004 roku. Można go w skrócie opisać jako otwartą platformę monitorowania bezpieczeństwa, która koncentruje się na analizie hostów i wykrywaniu intruzji. Co roku OSSEC jest pobierany ponad 500000 razy. Platforma ta jest głównie używana jako narzędzie do wykrywania intruzji w serwery, zarówno lokalne, jak i w chmurze. OSSEC jest również często wykorzystywany jako narzędzie do analizy dzienników monitorowania i analizy zapór sieciowych, systemów wykrywania intruzji, serwerów WWW oraz w badaniach dzienników uwierzytelniania.

OSSEC łączy możliwości systemu wykrywania intruzji na poziomie hosta (HIDS, Host-Based Intrusion Detection System) z systemem zarządzania incydentami bezpieczeństwa (SIM, Security Incident Management) oraz systemem zarządzania informacjami i zdarzeniami bezpieczeństwa (SIEM, Security Information and Event Management). OSSEC potrafi również monitorować integralność plików w czasie rzeczywistym, np. monitorowanie rejestru Windows, wykrywanie rootkitów. OSSEC ma zdolność powiadamiania zainteresowanych o wykrytych problemach w czasie rzeczywistym i wspiera szybką reakcję na znalezione zagrożenia. Platforma wspiera Microsoft Windows oraz większość nowoczesnych systemów Unix-podobnych, w tym Linux, FreeBSD, OpenBSD i Solaris.

Platforma OSSEC składa się z centralnej jednostki zarządzającej, menedżera, który zbiera i monitoruje informacje od agentów (małych programów zainstalowanych w systemach do monitorowania). Menedżer jest instalowany na systemie Linux, który przechowuje bazę danych wykorzystywaną do monitorowania integralności plików. Dodatkowo przechowuje on dzienniki i rejestry zdarzeń oraz wyniki audytu systemów.

Wsparciem projektu OSSEC obecnie zajmuje się firma Atomicorp. Firma nadzoruje darmową wersję open-source i ponadto oferuje rozszerzoną komercyjną wersję produktu. Oto podcast, w którym menedżer projektu OSSEC opowiada o najnowszej wersji systemu — OSSEC 3.0. Poruszane są tam również historia projektu i różnice między nim a współczesnymi systemami komercyjnymi używanymi w dziedzinie bezpieczeństwa komputerowego.

5. Suricata

Suricata to jest projekt oparty na open source, który koncentruje się na rozwiązaniu podstawowych problemów związanych z zapewnieniem bezpieczeństwa komputerowego. W szczególności obejmuje system wykrywania włamań, system zapobiegania włamaniom oraz narzędzie do monitorowania bezpieczeństwa sieciowego.

Ten produkt pojawił się w 2009 roku. Jego działanie opiera się na zasadach. To znaczy, że użytkownik ma możliwość opisania pewnych cech ruchu sieciowego. Gdy zasada zostanie aktywowana, Suricata generuje powiadomienie, blokując lub zrywając podejrzane połączenie, co znowu zależy od ustalonych zasad. Projekt wspiera również działanie w trybie wielowątkowym. Pozwala to na szybkie przetwarzanie dużej liczby zasad w sieciach o dużym natężeniu ruchu. Dzięki wsparciu dla wielowątkowości, zwykły serwer jest w stanie skutecznie analizować ruch przy prędkości 10 Gbit/s. Przy tym administrator nie musi ograniczać zestawu zasad używanych do analizy ruchu. Suricata wspiera również haszowanie i wydobywanie plików.

Suricata można skonfigurować do działania na zwykłych serwerach lub maszynach wirtualnych, na przykład w AWS, z wykorzystaniem nowo dodanej funkcji w produkcie. monitorowanie ruchu.

Projekt wspiera skrypty Lua, które umożliwiają tworzenie złożonej i szczegółowej logiki analizy sygnatur zagrożeń.

Projektem Suricata zajmuje się Open Information Security Foundation (OISF).

6. Zeek (Bro)

Podobnie jak Suricata, Zeek (ten projekt wcześniej nazywał się Bro i został przemianowany na Zeek podczas wydarzenia BroCon 2018) — jest również systemem wykrywania włamań oraz narzędziem do monitorowania bezpieczeństwa sieci, które może identyfikować anomalie, takie jak podejrzane lub niebezpieczne działania. Zeek różni się od tradycyjnych IDS tym, że, w przeciwieństwie do systemów opartych na zasadach, które wykrywają wyjątki, Zeek również rejestruje metadane związane z wydarzeniami w sieci. Ma to na celu lepsze zrozumienie kontekstu nietypowego zachowania sieciowego. Na przykład pozwala to, analizując wywołania HTTP lub procedury wymiany certyfikatów bezpieczeństwa, przyjrzeć się protokołowi, nagłówkom pakietów, nazwom domen.

Jeśli spojrzeć na Zeek jako narzędzie bezpieczeństwa sieciowego, można stwierdzić, że daje on specjaliście możliwość przeprowadzenia dochodzenia w sprawie incydentu, dowiadując się, co sprawiło, że wydarzyło się to przed lub w trakcie incydentu. Zeek konwertuje dane o ruchu sieciowym na zdarzenia wysokiego poziomu i umożliwia pracę z interpreterem skryptów. Interpreter obsługuje język programowania używany do organizowania interakcji ze zdarzeniami oraz do ustalania, co te zdarzenia oznaczają w kontekście bezpieczeństwa sieciowego. Język programowania Zeek może być używany do dostosowywania interpretacji metadanych w sposób, który odpowiada konkretnej organizacji. Pozwala na budowanie złożonych warunków logicznych z wykorzystaniem operatorów AND, OR i NOT. Daje to użytkownikom możliwość konfigurowania procedury analizy ich środowisk. Warto jednak zauważyć, że w porównaniu z Suricatą, Zeek może wydawać się stosunkowo skomplikowanym narzędziem do przeprowadzania wywiadu zagrożeń bezpieczeństwa.

Jeśli chcesz poznać więcej szczegółów na temat Zeeka – skontaktuj się z tym wideo.

7. Panther

Panther to potężna platforma zaprojektowana z myślą o pracy w chmurze do ciągłego monitorowania bezpieczeństwa. Niedawno stała się oprogramowaniem open source. U podstaw projektu stoi główny architekt StreamAlert rozwiązanie do automatyzowanej analizy logów, którego kod został udostępniony przez firmę Airbnb. Panther oferuje użytkownikowi jednolity system do centralnego wykrywania zagrożeń we wszystkich środowiskach oraz do organizowania reakcji na nie. System ten ma możliwość rozwoju wraz z wielkością obsługiwanej infrastruktury. Wykrywanie zagrożeń zostało zaplanowane przy użyciu przejrzystych reguł deterministycznych, aby zmniejszyć procent fałszywych alarmów i zredukować zbędne obciążenie specjalistów ds. bezpieczeństwa.

Do głównych funkcji Pantery można zaliczyć:

  • Wykrywanie nieautoryzowanego dostępu do zasobów poprzez analizę logów.
  • Wykrywanie zagrożeń realizowane przez przeszukiwanie logów wskaźników wskazujących na problemy z bezpieczeństwem. Wyszukiwanie przeprowadzane jest z wykorzystaniem ustandaryzowanych pól danych Pantery.
  • Sprawdzanie zgodności systemu z normami SOC/PCI/HIPAA za pomocą wbudowanych mechanizmów Panther.
  • Ochrona zasobów chmurowych dzięki automatycznej naprawie błędów w konfiguracji, które, jeśli zostaną wykorzystane przez osoby trzecie, mogą prowadzić do poważnych problemów.

Panther jest wdrażany w chmurze AWS organizacji za pomocą AWS CloudFormation. Pozwala to użytkownikowi na stałą kontrolę nad danymi.

Podsumowanie

Monitorowanie bezpieczeństwa systemów to w dzisiejszych czasach kluczowe zadanie. W rozwiązaniu tego problemu firmom każdego rozmiaru mogą pomóc narzędzia open-source, oferujące wiele możliwości i kosztujące prawie nic lub będące darmowymi.

Drodzy Czytelnicy! Jakich narzędzi do monitorowania bezpieczeństwa używasz?

7 narzędzi open source do monitorowania bezpieczeństwa systemów chmurowych, o których warto wiedzieć

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster