Udostępnij za pośrednictwem


Zapobieganie eksfiltracji danych usługi Azure Machine Learning

Usługa Azure Machine Learning ma kilka zależności przychodzących i wychodzących. Niektóre z tych zależności mogą ujawnić ryzyko eksfiltracji danych przez złośliwych agentów w organizacji. W tym dokumencie wyjaśniono, jak zminimalizować ryzyko eksfiltracji danych przez ograniczenie wymagań dotyczących ruchu przychodzącego i wychodzącego.

  • Ruch przychodzący: jeśli wystąpienie obliczeniowe lub klaster używa publicznego adresu IP, masz tag usługi przychodzący ( azuremachinelearning port 44224). Możesz kontrolować ten ruch przychodzący przy użyciu sieciowej grupy zabezpieczeń i tagów usługi. Trudno jest ukryć adresy IP usług platformy Azure, więc istnieje niskie ryzyko eksfiltracji danych. Możesz również skonfigurować obliczenia tak, aby nie używały publicznego adresu IP, co eliminuje wymagania dotyczące ruchu przychodzącego.

  • Ruch wychodzący: jeśli złośliwi agenci nie mają dostępu do zapisu do zasobów docelowych ruchu wychodzącego, nie mogą używać tego ruchu wychodzącego na potrzeby eksfiltracji danych. Microsoft Entra ID, Azure Resource Manager, Azure Machine Learning i Microsoft Container Registry należą do tej kategorii. Z drugiej strony usługi Storage i AzureFrontDoor.frontend mogą służyć do eksfiltracji danych.

    • Ruch wychodzący magazynu: to wymaganie pochodzi z wystąpienia obliczeniowego i klastra obliczeniowego. Złośliwy agent może używać tej reguły ruchu wychodzącego do eksfiltrowania danych przez aprowizowanie i zapisywanie danych na własnym koncie magazynu. Ryzyko eksfiltracji danych można usunąć przy użyciu zasad punktu końcowego usługi Platformy Azure i uproszczonej architektury komunikacji węzła usługi Azure Batch.

    • Ruch wychodzący AzureFrontDoor.frontend: usługa Azure Front Door jest używana przez interfejs użytkownika i rozwiązanie AutoML usługi Azure Machine Learning Studio. Zamiast zezwalać na ruch wychodzący do tagu usługi (AzureFrontDoor.frontend), przejdź do następujących w pełni kwalifikowanych nazw domen (FQDN). Przełączenie do tych nazw FQDN usuwa niepotrzebny ruch wychodzący uwzględniony w tagu usługi i zezwala tylko na to, co jest potrzebne w przypadku interfejsu użytkownika i rozwiązania AutoML usługi Azure Machine Learning Studio.

      • ml.azure.com
      • automlresources-prod.azureedge.net

Napiwek

Informacje przedstawione w tym artykule dotyczą głównie korzystania z usługi Azure Virtual Network. Usługa Azure Machine Learning może również używać zarządzanych sieci wirtualnych. W przypadku zarządzanej sieci wirtualnej usługa Azure Machine Learning obsługuje zadanie izolacji sieci dla obszaru roboczego i zarządzanych zasobów obliczeniowych.

Aby rozwiązać problemy z eksfiltracją danych, zarządzane sieci wirtualne umożliwiają ograniczenie ruchu wychodzącego tylko do zatwierdzonego ruchu wychodzącego. Aby uzyskać więcej informacji, zobacz Obszar roboczy zarządzana izolacja sieci.

Wymagania wstępne

  • Subskrypcja platformy Azure
  • Sieć wirtualna platformy Azure
  • Obszar roboczy usługi Azure Machine Learning z prywatnym punktem końcowym, który łączy się z siecią wirtualną.
    • Konto magazynu używane przez obszar roboczy musi również łączyć się z siecią wirtualną przy użyciu prywatnego punktu końcowego.
  • Należy ponownie utworzyć wystąpienie obliczeniowe lub skalować klaster obliczeniowy w dół do zera.
    • Nie jest wymagane, jeśli dołączono do wersji zapoznawczej.
    • Nie jest wymagane, jeśli masz nowe wystąpienie obliczeniowe i klaster obliczeniowy utworzony po grudniu 2022 r.

Dlaczego muszę używać zasad punktu końcowego usługi

Zasady punktu końcowego usługi umożliwiają filtrowanie ruchu sieciowego wychodzącego do kont usługi Azure Storage za pośrednictwem punktu końcowego usługi i zezwalanie na eksfiltrację danych tylko do określonych kont usługi Azure Storage. Wystąpienie obliczeniowe i klaster obliczeniowy usługi Azure Machine Learning wymagają dostępu do kont magazynu zarządzanego przez firmę Microsoft na potrzeby aprowizacji. Alias usługi Azure Machine Learning w zasadach punktu końcowego usługi obejmuje konta magazynu zarządzanego przez firmę Microsoft. Używamy zasad punktu końcowego usługi z aliasem usługi Azure Machine Learning, aby zapobiec eksfiltracji danych lub kontrolować docelowe konta magazynu. Więcej informacji można uzyskać w dokumentacji zasad punktu końcowego usługi.

1. Tworzenie zasad punktu końcowego usługi

  1. W witrynie Azure Portal dodaj nowe zasady punktu końcowego usługi. Na karcie Podstawy podaj wymagane informacje, a następnie wybierz pozycję Dalej.

  2. Na karcie Definicje zasad wykonaj następujące czynności:

    1. Wybierz pozycję + Dodaj zasób, a następnie podaj następujące informacje:

      • Usługa: Microsoft.Storage
      • Zakres: wybierz zakres jako Pojedyncze konto , aby ograniczyć ruch sieciowy do jednego konta magazynu.
      • Subskrypcja: subskrypcja platformy Azure zawierająca konto magazynu.
      • Grupa zasobów: grupa zasobów zawierająca konto magazynu.
      • Zasób: domyślne konto magazynu obszaru roboczego.

      Wybierz pozycję Dodaj , aby dodać informacje o zasobie.

      Zrzut ekranu przedstawiający sposób tworzenia zasad punktu końcowego usługi.

    2. Wybierz pozycję + Dodaj alias, a następnie wybierz jako /services/Azure/MachineLearning wartość Alias serwera. Wybierz pozycję Dodaj , aby dodać alias.

      Uwaga

      Interfejs wiersza polecenia platformy Azure i program Azure PowerShell nie zapewniają obsługi dodawania aliasu do zasad.

  3. Wybierz pozycję Przejrzyj i utwórz, a następnie wybierz pozycję Utwórz.

Ważne

Jeśli wystąpienie obliczeniowe i klaster obliczeniowy potrzebują dostępu do dodatkowych kont magazynu, zasady punktu końcowego usługi powinny zawierać dodatkowe konta magazynu w sekcji zasobów. Należy pamiętać, że nie jest to wymagane, jeśli używasz prywatnych punktów końcowych usługi Storage. Zasady punktu końcowego usługi i prywatny punkt końcowy są niezależne.

2. Zezwalaj na ruch sieciowy przychodzący i wychodzący

Przychodzący

Ważne

Poniższe informacje modyfikują wskazówki podane w artykule How to secure training environment (Jak zabezpieczyć środowisko szkoleniowe).

Ważne

Poniższe informacje modyfikują wskazówki podane w artykule How to secure training environment (Jak zabezpieczyć środowisko szkoleniowe).

W przypadku korzystania z wystąpienia obliczeniowego usługi Azure Machine Learning z publicznym adresem IP zezwalaj na ruch przychodzący z zarządzania usługą Azure Batch (tag BatchNodeManagement.<region>usługi ). Wystąpienie obliczeniowe bez publicznego adresu IP nie wymaga tej komunikacji przychodzącej.

Wychodzący

Ważne

Poniższe informacje są dodatkiem do wskazówek podanych w bezpiecznym środowisku szkoleniowym z sieciami wirtualnymi i artykułami Konfigurowanie ruchu przychodzącego i wychodzącego ruchu sieciowego.

Ważne

Poniższe informacje są dodatkiem do wskazówek podanych w bezpiecznym środowisku szkoleniowym z sieciami wirtualnymi i artykułami Konfigurowanie ruchu przychodzącego i wychodzącego ruchu sieciowego.

Wybierz konfigurację, której używasz:

Zezwalaj na ruch wychodzący do następujących tagów usługi. Zastąp element <region> regionem platformy Azure zawierającym klaster obliczeniowy lub wystąpienie:

Tag usługi Protokół Port
BatchNodeManagement.<region> DOWOLNE 443
AzureMachineLearning TCP 443
Storage.<region> TCP 443

Uwaga

W przypadku ruchu wychodzącego magazynu zasady punktu końcowego usługi zostaną zastosowane w późniejszym kroku, aby ograniczyć ruch wychodzący.

Aby uzyskać więcej informacji, zobacz How to secure training environments (Jak zabezpieczyć środowiska szkoleniowe) i Configure inbound and outbound network traffic (Konfigurowanie ruchu przychodzącego i wychodzącego).

Aby uzyskać więcej informacji, zobacz How to secure training environments (Jak zabezpieczyć środowiska szkoleniowe) i Configure inbound and outbound network traffic (Konfigurowanie ruchu przychodzącego i wychodzącego).

3. Włączanie punktu końcowego magazynu dla podsieci

Wykonaj następujące kroki, aby włączyć punkt końcowy magazynu dla podsieci zawierającej klastry obliczeniowe i wystąpienia obliczeniowe usługi Azure Machine Learning:

  1. W witrynie Azure Portal wybierz sieć wirtualną platformy Azure dla obszaru roboczego usługi Azure Machine Learning.
  2. Z lewej strony wybierz pozycję Podsieci, a następnie wybierz podsieć zawierającą klaster obliczeniowy i wystąpienie obliczeniowe.
  3. W wyświetlonym formularzu rozwiń listę rozwijaną Usługi , a następnie włącz pozycję Microsoft.Storage. Wybierz pozycję Zapisz , aby zapisać te zmiany.
  4. Zastosuj zasady punktu końcowego usługi do podsieci obszaru roboczego.

Zrzut ekranu witryny Azure Portal przedstawiający sposób włączania punktu końcowego magazynu dla podsieci.

4. Wyselekcjonowane środowiska

W przypadku korzystania ze środowisk wyselekcjonowanych usługi Azure Machine Learning upewnij się, że używasz najnowszej wersji środowiska. Rejestr kontenerów dla środowiska musi również mieć wartość mcr.microsoft.com. Aby sprawdzić rejestr kontenerów, wykonaj następujące czynności:

  1. W usłudze Azure Machine Learning Studio wybierz swój obszar roboczy, a następnie wybierz pozycję Środowiska.

  2. Sprawdź, czy rejestr kontenerów mcr.microsoft.complatformy Azure rozpoczyna się od wartości .

    Ważne

    Jeśli rejestr kontenerów nie viennaglobal.azurecr.io może używać wyselekcjonowanych środowisk z eksfiltracją danych. Spróbuj przeprowadzić uaktualnienie do najnowszej wersji środowiska wyselekcjonowanych.

  3. W przypadku korzystania z programu mcr.microsoft.comnależy również zezwolić na konfigurację ruchu wychodzącego do następujących zasobów. Wybierz opcję konfiguracji, której używasz:

    Zezwalaj na ruch wychodzący przez port TCP 443 do następujących tagów usługi. Zastąp element <region> regionem platformy Azure zawierającym klaster obliczeniowy lub wystąpienie.

    • MicrosoftContainerRegistry.<region>
    • AzureFrontDoor.FirstParty

Następne kroki

Aby uzyskać więcej informacji, zobacz następujące artykuły: