Konfigurowanie odpowiedzi na skanowanie złośliwego oprogramowania
Skonfiguruj automatyczne odpowiedzi na przenoszenie lub usuwanie złośliwych plików lub przenoszenie/pozyskiwanie czystych plików do innego miejsca docelowego. Wybierz preferowaną opcję odpowiedzi pasującą do architektury scenariusza.
Skanowanie złośliwego oprogramowania umożliwia skompilowanie odpowiedzi automatyzacji przy użyciu następujących opcji wyników skanowania:
- alerty zabezpieczeń Defender dla Chmury
- Zdarzenia usługi Event Grid
- Tagi indeksu obiektów blob
Napiwek
Zapraszamy do zapoznania się z funkcją skanowania złośliwego oprogramowania w usłudze Defender for Storage za pośrednictwem naszego laboratorium praktycznego. Postępuj zgodnie z instrukcjami szkoleniowymi ninja, aby uzyskać szczegółowy przewodnik krok po kroku dotyczący konfigurowania i testowania skanowania złośliwego oprogramowania, w tym konfigurowania odpowiedzi na wyniki skanowania. Jest to część projektu "laboratoriów", który pomaga klientom w zwiększaniu się Microsoft Defender dla Chmury i zapewnia praktyczne doświadczenie w zakresie jego możliwości.
Poniżej przedstawiono kilka opcji odpowiedzi, których można użyć do zautomatyzowania odpowiedzi:
Blokowanie dostępu do nieskanowanych lub złośliwych plików przy użyciu kontroli dostępu opartej na atrybutach
Dostęp do złośliwych i nieskanowanych plików można zablokować za pomocą autoryzacji kontroli dostępu opartej na atrybucie (ABAC) firmy Microsoft. Umożliwia ona ustawianie dostępu warunkowego do obiektów blob na podstawie wyników skanowania oraz zezwalanie aplikacjom i użytkownikom na dostęp tylko do skanowanych plików, które są czyste.
Aby go skonfigurować, postępuj zgodnie z instrukcjami w poniższym filmie wideo.
Usuwanie lub przenoszenie złośliwego obiektu blob
Możesz użyć automatyzacji kodu lub przepływu pracy, aby usunąć lub przenieść złośliwe pliki do kwarantanny.
Przygotowywanie środowiska do usunięcia lub przeniesienia
Usuń złośliwy plik — przed skonfigurowaniem automatycznego usuwania zaleca się włączenie usuwania nietrwałego na koncie magazynu. Umożliwia "cofanie usuwania" plików, jeśli istnieją fałszywie dodatnie lub w przypadkach, gdy specjaliści ds. zabezpieczeń chcą zbadać złośliwe pliki.
Przenieś złośliwy plik do kwarantanny — możesz przenieść pliki do dedykowanego kontenera magazynu lub konta magazynu, które są uważane za "kwarantannę". Możesz chcieć, aby tylko niektórzy użytkownicy, tacy jak administrator zabezpieczeń lub analityk SOC, mieli uprawnienia dostępu do tego dedykowanego kontenera lub konta magazynu.
- Używanie identyfikatora Entra firmy Microsoft do kontrolowania dostępu do magazynu obiektów blob jest uważane za najlepsze rozwiązanie. Aby kontrolować dostęp do dedykowanego kontenera magazynu kwarantanny, możesz użyć przypisań ról na poziomie kontenera przy użyciu kontroli dostępu opartej na rolach (RBAC) firmy Microsoft. Użytkownicy z uprawnieniami na poziomie konta magazynu mogą nadal mieć dostęp do kontenera "kwarantanna". Możesz edytować swoje uprawnienia na poziomie kontenera lub wybrać inne podejście i przenieść złośliwy plik do dedykowanego konta magazynu.
- Jeśli musisz użyć innych metod, takich jak tokeny sygnatur dostępu współdzielonego (sygnatury dostępu współdzielonego) na chronionym koncie magazynu, najlepszym rozwiązaniem jest przeniesienie złośliwych plików na inne konto magazynu (kwarantanna). Następnie najlepszym rozwiązaniem jest przyznanie firmie Microsoft Entra uprawnień dostępu do konta magazynu poddanego kwarantannie.
Konfigurowanie automatyzacji
Opcja 1. Aplikacja logiki oparta na alertach zabezpieczeń Microsoft Defender dla Chmury
Odpowiedzi oparte na aplikacji logiki to proste, bez kodu podejście do konfigurowania odpowiedzi. Jednak czas odpowiedzi jest krótszy niż podejście oparte na kodzie opartym na zdarzeniach.
Wdróż szablon DeleteBlobLogicApp Azure Resource Manager (ARM) przy użyciu witryny Azure Portal.
Wybierz wdrożona aplikację logiki.
Aby zezwolić aplikacji logiki na usuwanie obiektów blob z konta magazynu, dodaj przypisanie roli:
Przejdź do pozycji Tożsamość w menu bocznym i wybierz pozycję Przypisania ról platformy Azure.
Dodaj przypisanie roli na poziomie subskrypcji z rolą Współautor danych obiektu blob usługi Storage.
Utwórz automatyzację przepływu pracy dla alertów Microsoft Defender dla Chmury:
- Przejdź do Microsoft Defender dla Chmury w witrynie Azure Portal.
- Przejdź do pozycji Automatyzacja przepływu pracy w menu bocznym.
- Dodaj nowy przepływ pracy: w polu Nazwa alertu wpisz Złośliwy plik przekazany do konta magazynu i wybierz aplikację logiki w sekcji Akcje.
- Wybierz pozycję Utwórz.
Opcja 2. Aplikacja funkcji oparta na zdarzeniach usługi Event Grid
Aplikacja funkcji zapewnia wysoką wydajność z czasem odpowiedzi o małym opóźnieniu.
Utwórz aplikację funkcji w tej samej grupie zasobów co chronione konto magazynu.
Dodaj przypisanie roli dla tożsamości aplikacji funkcji.
Przejdź do pozycji Tożsamość w menu bocznym, upewnij się, że stan tożsamości przypisanej przez system jest włączony i wybierz pozycję Przypisania ról platformy Azure.
Dodaj przypisanie roli na poziomach subskrypcji lub konta magazynu z rolą Współautor danych obiektu blob usługi Storage.
Używanie zdarzeń usługi Event Grid i łączenie funkcji platformy Azure jako typu punktu końcowego.
Podczas pisania kodu funkcji platformy Azure możesz użyć naszego wstępnie utworzonego przykładu funkcji — MoveMaliciousBlobEventTrigger lub napisać własny kod , aby skopiować obiekt blob w innym miejscu, a następnie usunąć go ze źródła.
Dla każdego wyniku skanowania zdarzenie jest wysyłane zgodnie z poniższym schematem.
Struktura komunikatów o zdarzeniach
Komunikat o zdarzeniu jest obiektem JSON zawierającym pary klucz-wartość, które zawierają szczegółowe informacje o wyniku skanowania złośliwego oprogramowania. Oto podział każdego klucza w komunikacie zdarzenia:
id: unikatowy identyfikator zdarzenia.
subject: ciąg opisujący ścieżkę zasobu zeskanowanego obiektu blob (pliku) na koncie magazynu.
data: obiekt JSON zawierający dodatkowe informacje o zdarzeniu:
correlationId: unikatowy identyfikator, który może służyć do korelowania wielu zdarzeń związanych z tym samym skanowaniem.
blobUri: identyfikator URI zeskanowanego obiektu blob (pliku) na koncie magazynu.
eTag: element ETag zeskanowanego obiektu blob (pliku).
scanFinishedTimeUtc: sygnatura czasowa UTC po zakończeniu skanowania.
scanResultType: wynik skanowania, na przykład Złośliwe lub Nie znaleziono zagrożeń.
scanResultDetails: obiekt JSON zawierający szczegółowe informacje o wyniku skanowania:
malwareNamesFound: tablica nazw złośliwego oprogramowania znalezionych w zeskanowanym pliku.
sha256: skrót SHA-256 zeskanowanego pliku.
eventType: ciąg wskazujący typ zdarzenia, w tym przypadku Microsoft.Security.MalwareScanningResult.
dataVersion: numer wersji schematu danych.
metadataVersion: numer wersji schematu metadanych.
eventTime: sygnatura czasowa UTC podczas generowania zdarzenia.
temat: ścieżka zasobu tematu usługi Event Grid, do którego należy zdarzenie.
Oto przykład komunikatu o zdarzeniu:
{
"id": "aaaa0000-bb11-2222-33cc-444444dddddd",
"subject": "storageAccounts/<storage_account_name>/containers/app-logs-storage/blobs/EICAR - simulating malware.txt",
"data": {
"correlationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
"blobUri": "https://<storage_account_name>.blob.core.windows.net/app-logs-storage/EICAR - simulating malware.txt",
"eTag": "0x000000000000000",
"scanFinishedTimeUtc": "2023-05-04T11:31:54.0481279Z",
"scanResultType": "Malicious",
"scanResultDetails": {
"malwareNamesFound": [
"DOS/EICAR_Test_File"
],
"sha256": "AA11BB22CC33DD44EE55FF66AA77BB88CC99DD00"
}
},
"eventType": "Microsoft.Security.MalwareScanningResult",
"dataVersion": "1.0",
"metadataVersion": "1",
"eventTime": "2023-05-04T11:31:54.048375Z",
"topic": "/subscriptions/<subscription_id>/resourceGroups/<resource_group_name>/providers/Microsoft.EventGrid/topics/<event_grid_topic_name>"
}
Dzięki zrozumieniu struktury komunikatu o zdarzeniu można wyodrębnić odpowiednie informacje o wyniku skanowania złośliwego oprogramowania i odpowiednio go przetworzyć.
Uświadom aplikacjom i przepływom danych o wynikach skanowania złośliwego oprogramowania
Skanowanie w poszukiwaniu złośliwego oprogramowania jest niemal w czasie rzeczywistym, a zwykle istnieje niewielkie okno czasowe między czasem przekazywania a czasem skanowania. Ponieważ magazyn jest niezgodny, nie ma ryzyka, że złośliwe pliki są wykonywane w magazynie. Ryzyko polega na tym, że użytkownicy lub aplikacje uzyskują dostęp do złośliwych plików i rozpowszechniają je w całej organizacji.
Istnieje kilka metod rozpoznawania wyników skanowania skanowania złośliwego oprogramowania przez aplikacje i przepływy danych. Te metody zapewniają, że pliki nie mogą być dostępne ani przetwarzane przed zakończeniem skanowania, wyniki skanowania są używane, a odpowiednie działania są wykonywane na podstawie tych wyników.
Aplikacje pozyskiwania danych na podstawie wyniku skanowania
Opcja 1. Aplikacje sprawdzające tag indeksu przed przetworzeniem
Jednym ze sposobów pozyskiwania danych jest zaktualizowanie wszystkich aplikacji, które uzyskują dostęp do konta magazynu. Każda aplikacja sprawdza wynik skanowania dla każdego pliku, a jeśli wynik skanowania tagu indeksu obiektów blob nie zostanie znaleziony, aplikacja odczytuje obiekt blob.
Opcja 2. Łączenie aplikacji z elementem webhook w zdarzeniach usługi Event Grid
Możesz połączyć aplikację z elementem webhook w zdarzeniach usługi Event Grid i użyć tych zdarzeń, aby wyzwolić odpowiednie procesy dla plików, które nie mają zagrożeń znalezionych wyników skanowania. Dowiedz się więcej na temat dostarczania zdarzeń elementu webhook i sprawdzania poprawności punktu końcowego.
Używanie pośredniego konta magazynu jako strefy DMZ
Możesz skonfigurować pośredniczące konto magazynu dla niezaufanej zawartości (DMZ) i bezpośrednie przekazywanie ruchu do strefy DMZ. Na niezaufanym koncie magazynu włącz skanowanie złośliwego oprogramowania i połącz usługę Event Grid i aplikację funkcji, aby przenieść tylko obiekty blob zeskanowane z wynikiem "nie znaleziono zagrożenia" do docelowego konta magazynu.
Następny krok
Dowiedz się, jak zrozumieć wyniki skanowania złośliwego oprogramowania w usłudze Microsoft Defender for Storage.