Tworzenie powłoki za pomocą Metasploit

https://chacker.pl/

Na początek utworzymy udział w bloku komunikatów serwera (SMB) w systemie Kali, aby usunąć nasz ładunek. Możemy po prostu użyć katalogu /tmp z smbd w systemie. Dodajmy udział do naszej konfiguracji, a następnie zrestartujmy usługę i sprawdźmy, czy udział jest dostępny:

Na początek utworzymy udział w bloku komunikatów serwera (SMB) w systemie Kali, aby usunąć nasz ładunek. Możemy po prostu użyć katalogu /tmp z smbd w systemie. Dodajmy udział do naszej konfiguracji, a następnie zrestartujmy usługę i sprawdźmy, czy udział jest dostępny:

Właśnie użyliśmy msfvenom, generatora ładunku Metasploit, do stworzenia odwrotnej powłoki TCP Meterpreter, która jest bezstopniowa, co oznacza, że ​​cały ładunek jest w formacie binarnym. I odwrotnie, etapowanie oznacza, że ​​tylko niewielka część modułu ładującego jest włączana do ładunku, a reszta jest pobierana z serwera. Gdy zależy nam na jak najmniejszym ładunku, optymalne jest ustawienie etapowe. Czasami jednak elementy sterujące mogą zobaczyć ładowanie naszego stagera i to nas zdradzi. W większości przypadków, gdy rozmiar nie ma znaczenia, lepszym rozwiązaniem będzie inscenizacja, ponieważ przy tego typu ładunku mniej rzeczy może pójść nie tak. W przypadku tego pliku binarnego możemy stwierdzić, że nasz ładunek jest bezstopniowy ze względu na nazwę ładunku. Ogólnie w Metasploit format ładunków to <platforma>/<ładunek>/<typ ładunku> dla wersji etapowej i <platforma>/<ładunek>_<typ ładunku> dla bezetapowego. Nasza wersja etapowa tego ładunku będzie miała postać Windows/meterpreter/reverse_tcp. Następnie musimy załadować moduł obsługi, aby przechwycił naszą powłokę, gdy ta oddzwoni. Metasploit ma narzędzie zwane handlerem do przechwytywania ładunków. Ze względu na sposób, w jaki Metasploit grupuje exploity według platformy i ponieważ moduł obsługi może przechwycić dowolny typ platformy, znajduje się on w katalogu multi. W Metasploit musimy ustawić typ ładunku na taki sam, jak ładunek msfvenom, a następnie uruchomić komendę exploit, aby go uruchomić:

Teraz, gdy już działa, możemy zdalnie połączyć się z naszym systemem docelowym Windows za pomocą protokołu RDP, zalogować się jako użytkownik docelowy i otworzyć okno programu PowerShell. PowerShell pozwala nam wykonywać polecenia poprzez ścieżkę UNC, więc uruchomimy nasz plik msf1.exe z naszego udziału ghh:

Wracając do naszego Kali Boxa, powinniśmy zobaczyć wywołanie powłoki z powrotem do serwera C2 i otworzyć sesję:

Teraz możemy wykonywać polecenia. Meterpreter ma kilka wbudowanych poleceń, które można wyświetlić za pomocą polecenia help. Do częstych zadań, które możemy chcieć wykonać, zalicza się uzyskanie identyfikatora użytkownika, który wykonał powłokę za pomocą polecenia getuid oraz uzyskanie powłoki za pomocą polecenia Shell:

Teraz możemy wykonywać polecenia. Meterpreter ma kilka wbudowanych poleceń, które można wyświetlić za pomocą polecenia help. Do częstych zadań, które możemy chcieć wykonać, zalicza się uzyskanie identyfikatora użytkownika, który wykonał powłokę za pomocą polecenia getuid oraz uzyskanie powłoki za pomocą polecenia Shell:

Możemy zobaczyć, że nasz docelowy użytkownik jest zalogowany, a następnie możemy zobaczyć dodatkowe dane wyjściowe użytkowników, którzy zalogowali się ostatnio. Aby zakończyć, wpisujemy Quit w celu wyjścia z naszej powłoki, a następnie wychodzimy -y w celu wyjścia z Metasploit. Metasploit ma ogromną ilość funkcjonalności i wyliczenie wszystkich możliwości w tym rozdziale nie jest możliwe. Jednakże dzięki klasie Metasploit Unleashed i niektórym z tych wskazówek powinieneś być na dobrej drodze do używania Metasploit jako generatora ładunku i narzędzia C2.

Metasploit

https://chacker.pl/

Jednym z pierwszych systemów C2, z którego korzysta większość użytkowników, jest Metasploit. Metasploit to platforma testowa zawierająca narzędzia i biblioteki pomagające opracowywać exploity, testować je, wykorzystywać i wykonywać zadania po eksploitacji. Metasploit występuje zarówno w wersji komercyjnej, jak i open source, a jego właścicielem jest Rapid7. Wersja społecznościowa jest zainstalowana na Kali, co ułatwia użytkownikom naukę. Istnieją nawet narzędzia takie jak Metasploitable, które mogą działać jako podatna na ataki maszyna wirtualna w ramach bezpłatnego szkolenia Metasploit Unleashed pod adresem https://www.offensivesecurity.com/metasploit-unleashed /. Ponieważ istnieje wiele wysokiej jakości samouczków, takich jak Metasploit Unleashed, nie będziemy omawiać wszystkich podstaw Metasploit. Zamiast tego skupimy się na podstawach używania Metasploit dla C2.

Systemy dowodzenia i kontroli

https://chacker.pl/

Gdy system zostanie naruszony, osoba atakująca musi mieć możliwość przeprowadzenia dalszego rozpoznania, wykonania poleceń, podniesienia uprawnień i dalszego poruszania się w sieci. Jednym z najlepszych sposobów osiągnięcia tego jest zastosowanie systemu C2. System C2 zazwyczaj ma agenta działającego na zaatakowanym hoście, który odbiera polecenia od osoby atakującej, wykonuje je, a następnie zwraca wyniki. Większość systemów C2 składa się z trzech komponentów: agenta działającego w zaatakowanym systemie, serwera pełniącego rolę pośrednika między osobą atakującą a zaatakowanym hostem oraz oprogramowania zarządzającego, które umożliwia osobie atakującej wydawanie poleceń. Agenci i osoby atakujące komunikują się z serwerem C2 za pomocą odpowiednich komponentów, umożliwiając atakującemu wysyłanie i odbieranie poleceń bez konieczności bezpośredniej komunikacji z zaatakowanym systemem. Agenci mogą komunikować się za pośrednictwem wielu różnych protokołów, w zależności od oprogramowania C2, ale popularnymi protokołami są HTTP, HTTPS, DNS, SMB, surowe gniazda TCP i RPC. Gdy osoba atakująca uruchomi agenta w zaatakowanym systemie, agent połączy się z serwerem i wyśle ​​do systemu podstawowe dane klienta, takie jak poziom uprawnień, użytkownik i nazwa hosta. Serwer sprawdzi, czy są jakieś oczekujące zadania, a jeśli ich nie ma, serwer i klient albo utrzymają zawsze aktywne połączenie, na przykład za pomocą surowych gniazd TCP lub trwałych gniazd HTTP/HTTPS, albo skonfigurują okresowa odprawa, często nazywana czasem nawigacyjnym. Ten czas sygnalizowania to przedział czasu, w którym agent skontaktuje się z Tobą w celu odprawy i dodatkowych zadań. Czasy działania sygnału ostrzegawczego są ważne dla bezpieczeństwa operacyjnego. Zbyt krótki okres czasu spowoduje, że będziesz bardzo głośny, ale dłuższe czasy oznaczają mniej poleceń, które możesz wykonać. Wybór czasu między sygnałami nawigacyjnymi powinien opierać się na celach testu i tym, czy bezpieczeństwo operacyjne stanowi zagrożenie. Jeśli nie stanowi to problemu, bardzo krótki czas świecenia pozwala osiągnąć więcej, ale jeśli tak jest, rzadsze i losowe meldowanie się utrudnia dostrzeżenie wzorców, które mogą spowodować wykrycie. Wykrycia mogą opierać się na częstotliwości meldowania się (ile razy dziennie), natężeniu wysyłanego ruchu, stosunku danych wysłanych i odebranych lub próbach wykrycia wzorców. Wiele systemów C2 ma koncepcję jittera, czyli odchyleń taktowania, którą można zastosować do czasu zameldowania, aby pomóc w unikaniu. Wszystkie systemy C2 mają różne funkcje, ale niektóre typowe obejmują możliwość tworzenia ładunków agentów, możliwość wykonywania poleceń i uzyskiwania wyników oraz możliwość przesyłania i pobierania plików. Istnieją bezpłatne wersje narzędzi C2 obsługiwane przez społeczność, takie jak Metasploit, PowerShell Empire i Covenant. Istnieją również narzędzia komercyjne, takie jak Cobalt Strike i INNUENDO, które mają wsparcie. Wybór systemu C2 powinien być podyktowany Twoimi potrzebami. Nowe systemy C2 wychodzą cały czas, a inne stają się niewspierane. Jeżeli jesteś zainteresowany doborem systemu C2 do swoich potrzeb.

Dowodzenie i kontrola (C2)

https://chacker.pl/

Dla hakerów dostanie się do sieci to dopiero pierwsza część ataku. Bez możliwości interaktywnego wykonywania poleceń w systemach haker (zarówno etyczny, jak i przestępczy) nie może osiągnąć swoich celów. Korzystanie z narzędzi C2 i stosowanie technik unikania może pomóc testerom utrzymać dostęp przez dłuższy czas i ograniczyć wpływ kontroli na hosty i sieci, który może skrócić ich atak.

Streszczenie

https://chacker.pl/

Opisano podstawy etycznego hakowania i czerwonych zespołów. Czerwone zespoły działały na różnych poziomach, począwszy od skanowania podatności, aż po fioletowe zespoły i emulację zagrożeń. Istnieją zalety i wady zarówno konsultantów, jak i korporacyjnych czerwonych zespołów, ale wiele osób przełącza się między nimi w trakcie swojej kariery, aby zdobyć dodatkowe doświadczenie i dostosować się do zmian w stylu życia. W miarę ewolucji organizacji rosną także ich możliwości w zakresie wykrywania i reagowania. Dodanie fioletowego komponentu zespołu może pomóc w zapewnieniu wyższej wierności wykryć specyficznych dla środowiska przy użyciu kombinacji analizy zagrożeń, zespołów obrony, zespołów czerwonych i zespołów inżynieryjnych.

Inżynieria wykrywania

https://chacker.pl/

Inżynieria wykrywania to proces tworzenia sposobów wykrywania różnych typów zdarzeń. Może istnieć poza kontekstem fioletowych drużyn; jednak fioletowe zespoły sprawiają, że jest to drastycznie bardziej skuteczne. Zapewniając trafność, kontekst i możliwość zastosowania w konkretnym środowisku, fioletowe zespoły mogą dostosować wykrywanie do Twojego środowiska, dzięki czemu nie pozostaniesz tylko z treściami dostarczonymi przez dostawcę, które mogą być zbyt hałaśliwe lub nie uwzględniać wielu źródeł, które można połączyć w alerty o wyższej wierności. Dobrym tego przykładem jest sytuacja, w której analiza zagrożeń odkryła, że wielu aktorów zagrażających używa Cobalt Strike dla C2 i gromadzi dane uwierzytelniające za pomocą Mimikatz. Zespół czerwonych może uruchomić tę kombinację narzędzi na hoście docelowym, a następnie współpracować z zespołem poszukiwawczym, aby zobaczyć, jakie artefakty zostaną utworzone. Innym przykładem może być rozwiązanie EDR rejestrujące dostęp LSASS z procesu notmalware.exe i lokalny agent AV rejestrujący połączenie z serwerem proxy z notmalware.exe. Łącząc te dwa elementy, zespół odkrywa, że jest mniej fałszywych alarmów, przekazuje więc informacje zespołowi inżynierów ds. wykrywania, aby w oparciu o te dwa czynniki zbudował alert kombinowany, aby umożliwić obrońcom pierwszej linii zaalarmowanie, gdy taka kombinacja występuje. Dalsze testy przeprowadzone przez zespół czerwonych wykazały, że alert nie zostanie uruchomiony w przypadku użycia Mimikatz w połączeniu z sygnalizatorem SMB firmy Cobalt Strike. Czerwony zespół informuje, że sygnalizatory SMB używają nazwanych potoków do komunikacji, ale obecnie nie wdrożono żadnych narzędzi, które rejestrowałyby nazwane potoki. Zespół obsługi klienta współpracuje z obrońcami przy wdrażaniu Sysmon i konfigurowaniu rejestrowania tworzenia nazwanych potoków. Kiedy zespół czerwonych ponownie przeprowadzi testy, istnieje teraz korelacja między hostami, które utworzyły nazwane potoki w ciągu ostatniej godziny, a uzyskującymi dostęp do LSASS. Poszczególne alerty same w sobie nie byłyby tak skuteczne, gdyby zespoły nie współpracowały ze sobą, przeprowadzając rzeczywiste testy w środowisku i dopasowując strategię ostrzegania i obrony do konkretnego środowiska. Ostatecznie w tym środowisku wszyscy wygrywają, może z wyjątkiem drużyny czerwonej, która musi zbadać nowe techniki emulacji zagrożeń.

Badania nad nowymi zagrożeniami

https://chacker.pl/

Badania nad nowymi zagrożeniami uwzględniają wiele obszarów fioletowego zespołu. Głównymi współautorami są wywiad o zagrożeniach, zespół czerwony, zespoły myśliwskie i reakcja na incydenty. Zespoły te będą współpracować, aby zidentyfikować pojawiające się zagrożenie, takie jak opublikowana luka typu 0-day, nowe informacje na temat techniki wdrażanej w popularnej rodzinie złośliwego oprogramowania lub najnowszy zestaw opublikowanych badań. Zespół ds. analizy zagrożeń zidentyfikuje jak najwięcej informacji na temat tego zagrożenia, a następnie będzie współpracował z zespołem czerwonym i zespołami tropiącymi, aby ustalić, czy będzie to miało wpływ na organizację. Przykładem mogą być luki w zabezpieczeniach programu Microsoft Exchange ujawnione przez firmę Microsoft w marcu 2021 r.1 Oprócz wstępnego ujawnienia ujawniono ograniczone informacje na temat tych luk, ale jeśli obserwowały je zespoły ds. analizy zagrożeń, 10 marca w serwisie GitHub krótko opublikowano komunikat POC, który zawierał działający kod.2 Ten kod mógł zostać pobrany i przekazany zespołowi czerwonemu, który mógłby go przetestować i ustalić, czy działa, czy łatanie powiodło się i jaki poziom uprawnień dał. Stamtąd zespoły myśliwskie mogły ocenić pozostawione kłody, a następnie określić, czy zostały one wykonane przez kogokolwiek innego przeciwko organizacji. Po wprowadzeniu łatek zespół czerwonych mógł ponownie przeprowadzić testy pod kątem środków zaradczych, a zespoły poszukiwawcze mogły ocenić rejestrację po wdrożeniu łatki, aby pomóc w udokumentowaniu, jak by to wyglądało, gdyby atak nastąpił na system z łatką. Wykonywanie tego typu działań zapewniłoby organizacji przewagę pod względem ataków różnych ugrupowań zagrażających, które nastąpiły po POC.

Działania zespołu fioletowego

https://chacker.pl/

Fioletowe zespoły istnieją po to, aby wykonywać wspólne działania poprawiające stan bezpieczeństwa organizacji. Może to obejmować niemal wszystko, od wspólnych raportów na temat zaangażowania czerwonych zespołów po kontrole budynków. Z tego powodu nie ma jednej rzeczy, którą robi fioletowy zespół; jednakże istnieją pewne podobieństwa w kwestiach, w których fioletowe drużyny mają wyjątkową pozycję

Fioletowe umiejętności zespołowe

https://chacker.pl/

To, na czym fioletowe zespoły będą mogły się skupić, częściowo zależy od dojrzałości poszczególnych elementów. Na przykład bez dobrych informacji o zagrożeniach trudno jest określić, na jakich aktorach zagrożeń należy się skupić, bez przeprowadzenia odpowiednich badań. Zależy to również od jakości kontroli, rejestrowania i monitorowania, możliwości przetwarzania tych danych oraz ogólnej wiedzy i zrozumienia zespołów. Często fioletowe zespoły ewoluują, zaczynając skupiać się na obszarze, który jest łatwy do znalezienia, np. wskaźnikach kompromisu, i rozwijają się, aż będą mogły skupić się na TTP. David J. Bianco stworzył Piramidę Bólu pokazaną na rysunku 6-2, aby opisać różne poziomy, na których drużyny defensywne mogą wpłynąć na atakującego. Na najniższym poziomie znajdują się wartości skrótu, gdzie po prostu zmieniając wartość skrótu, atakujący może uniknąć wykrycia. Na szczycie znajdują się TTP, w przypadku których atakujący musiałby zmienić sposób działania, używane narzędzia, a być może nawet cele, które próbuje osiągnąć. Analiza zagrożeń większości organizacji koncentruje się początkowo na trzech najniższych poziomach, czyli IOC łatwo dostępnych za pośrednictwem źródeł informacji o zagrożeniach. Są one często dostępne również dla narzędzi obronnych, więc jeśli haker wejdzie z tego samego miejsca, używając tych samych adresów IP, nazw hostów lub plików wykonywalnych, dość łatwo będzie go zablokować. Fioletowe zespoły zaczynają być skuteczne na poziomie sieci i artefaktów hosta, a następnie pną się w górę. Poziom artefaktów sieci i hosta może obejmować wzorce identyfikatorów URI i użycie określonych portów lub protokołów do komunikacji. Są to rzeczy, które czerwone zespoły często mogą dość łatwo odtworzyć, aby sprawdzić, co jest rejestrowane, a następnie zespoły mogą znaleźć, co rejestrują różne komponenty, i pracować nad tworzeniem lepszych alertów poprzez wyświetlanie tych dzienników jako zdarzenia. Chociaż zmiana numeru portu lub użycie innego schematu URI nie jest trudne, wymaga o wiele więcej wysiłku niż tylko rekompilacja pliku binarnego lub ustawienie nowego adresu IP; dlatego jest to bardziej uciążliwe dla atakującego, co oznacza, że będzie musiał się bardziej postarać, aby uniknąć wykrycia w sieci. W miarę zdobywania umiejętności i procesów zespoły mogą przejść do testowania narzędzi i dokumentowania ich wyglądu w sieci. Narzędzia są przedmiotem zainteresowania, ponieważ są łatwo dostępne i często istnieje wiele informacji na temat sposobu ich użycia. Poza tym niekoniecznie wymagają mnóstwa badań, ale można się przy nich uczyć. Jeśli więc wiesz, że osoba atakująca korzysta z programu PowerShell Empire, uruchomienie go w sieci w celu sprawdzenia, co pozostawia, jak wygląda i sposobów potencjalnego wykrycia jest trudniejsze niż samo przeglądanie dzienników. Nie koncentruje się jednak na działaniu narzędzia; zamiast tego skupia się na tym, co robi. Kiedy zespoły pracują z indywidualnymi TTP, mogą one być niezwykle destrukcyjne dla atakujących. Na przykład obrońca, który rozumie związek pomiędzy kopią pliku za pomocą SMB, wywołaniem DCOM do WMI i wykonaniem procesu z WMIPrvSE, jest w stanie lepiej powstrzymać atak przy użyciu tych komponentów. Indywidualnie mogą one nic nie znaczyć. Razem stanowią one bardzo dokładne wskaźniki pojedynczego ataku wykorzystującego usługę WMI do wykonania ruchu bocznego i opierają się na zachowaniu, a nie na narzędziach. Są one znacznie trudniejsze do zrozumienia i wykonania, co oznacza, że drużyna czerwonych musi mieć możliwość sformułowania wielu sposobów wykonania tego zadania, aby uzyskać rejestrowanie o wyższej jakości, a obrońcy muszą zrozumieć systemy na tyle, aby móc śledzić tę aktywność . Osoby zajmujące się inżynierią wykrywania również muszą być wystarczająco wyrafinowane, aby skorelować te działania, a jeśli celem jest zbudowanie odpowiednich zabezpieczeń, właściciele klientów i serwerów oraz właściciele elementów sterujących muszą być na tyle wyrafinowani, aby móc blokować lub ograniczać tego typu działania , Jeśli to możliwe.

Podstawy drużyny fioletowej

https://chacker.pl/

Zespół fioletowy to skrzyżowanie drużyny czerwonej i niebieskiej. W rzeczywistości nie ma jednej niebieskiej drużyny, tak jak są inne drużyny, które przyczyniają się do sukcesu drużyn czerwonych. Często wiele zespołów tworzy fioletowy zespół, obejmujący zespoły wywiadowcze, reagowania na incydenty, kryminalistykę, inżynierię wykrywania, zespoły łowieckie, czerwone i przywódcze. Zespoły te współpracują ze sobą, aby rozwiązywać problemy i pomagać w zwiększaniu poziomu bezpieczeństwa organizacji.