Azure Machine Learning için güvenlik açığı yönetimi

Güvenlik açığı yönetimi, bir kuruluşun sistemlerinde ve yazılımlarında mevcut olan güvenlik açıklarını algılamayı, değerlendirmeyi, azaltmayı ve raporlamayı içerir. Güvenlik açığı yönetimi, sizinle Microsoft arasında paylaşılan bir sorumluluktur.

Bu makalede bu sorumluluklar ele alınmaktadır ve Azure Machine Learning'in sağladığı güvenlik açığı yönetimi denetimleri özetlenmektedir. Hizmet örneğinizi ve uygulamalarınızı en son güvenlik güncelleştirmeleriyle güncel tutmayı ve saldırganlar için fırsat penceresini en aza indirmeyi öğreneceksiniz.

Microsoft tarafından yönetilen VM görüntüleri

Azure Machine Learning, Azure Machine Learning işlem örnekleri, Azure Machine Learning işlem kümeleri ve Veri Bilimi Sanal Makinesi için konak işletim sistemi sanal makinesi (VM) görüntülerini yönetir. Güncelleştirme sıklığı aylıktır ve aşağıdaki ayrıntıları içerir:

  • Her yeni VM görüntüsü sürümü için en son güncelleştirmeler işletim sisteminin özgün yayımcısından alınır. En son güncelleştirmeleri kullanmak, işletim sistemiyle ilgili tüm geçerli düzeltme eklerini aldığınızdan emin olmanıza yardımcı olur. Azure Machine Learning için yayımcı, tüm Ubuntu görüntüleri için Kurallı'dır. Bu görüntüler Azure Machine Learning işlem örnekleri, işlem kümeleri ve Veri Bilimi Sanal Makinesi için kullanılır.

  • VM görüntüleri aylık olarak güncelleştirilir.

  • Özgün yayımcının uyguladığı düzeltme eklerine ek olarak Azure Machine Learning, güncelleştirmeler kullanılabilir olduğunda sistem paketlerini güncelleştirir.

  • Azure Machine Learning, yükseltme gerektirebilecek tüm makine öğrenmesi paketlerini denetler ve doğrular. Çoğu durumda, yeni VM görüntüleri en son paket sürümlerini içerir.

  • Tüm VM görüntüleri, düzenli olarak güvenlik açığı taraması çalıştıran güvenli abonelikler üzerine kurulmuştur. Azure Machine Learning, tüm yetkisiz güvenlik açıklarını bayrakla işaretleyip sonraki sürümde düzeltir.

  • Sıklık, çoğu görüntü için aylık aralıktır. İşlem örnekleri için görüntü sürümü, ortama önceden yüklenmiş olan Azure Machine Learning SDK'sının yayın temposuyla uyumlu hale gelir.

Azure Machine Learning, normal sürüm temposunun yanı sıra güvenlik açıkları ortaya çıkarsa düzeltmeler uygular. Microsoft, Azure Machine Learning işlem kümeleri için 72 saat içinde ve işlem örnekleri için bir hafta içinde düzeltmeler dağıtır.

Not

Konak işletim sistemi, bir modeli eğitirken veya dağıtırken bir ortam için belirteceğiniz işletim sistemi sürümü değildir. Ortamlar Docker içinde çalışır. Docker konak işletim sisteminde çalışır.

Microsoft tarafından yönetilen kapsayıcı görüntüleri

Azure Machine Learning'in koruduğu temel docker görüntüleri , yeni bulunan güvenlik açıklarını gidermek için sık sık güvenlik düzeltme ekleri alır.

Azure Machine Learning, güvenlik açıklarını gidermek için desteklenen görüntülere yönelik güncelleştirmeleri iki haftada bir yayımlar. Taahhüt olarak, desteklenen görüntülerin en son sürümünde 30 günden eski bir güvenlik açığı olmamasını hedefliyoruz.

Düzeltme eki uygulanmış görüntüler yeni sabit bir etiket ve güncelleştirilmiş :latest bir etiket altında yayınlanır. Etiketi kullanmak :latest veya belirli bir görüntü sürümüne sabitlemek, makine öğrenmesi işiniz için güvenlik ve ortam yeniden üretilebilirliği arasında bir denge olabilir.

Ortamları ve kapsayıcı görüntülerini yönetme

Yeniden üretilebilirlik, yazılım geliştirme ve makine öğrenmesi denemelerinin önemli bir yönüdür. Azure Machine Learning ortam bileşeninin birincil odağı, kullanıcının kodunun yürütüldüğü ortamın yeniden üretilebilirliğini garanti etmektir. Herhangi bir makine öğrenmesi işinin yeniden üretilebilirliğini sağlamak için, daha önce oluşturulmuş görüntüler yeniden oluşturulmaya gerek kalmadan işlem düğümlerine çekilir.

Azure Machine Learning her sürümde temel görüntülere yama eklese de, en son görüntüyü kullanıp kullanmadığınız, yeniden üretilebilirlik ile güvenlik açığı yönetimi arasında bir denge olabilir. İşleriniz veya model dağıtımlarınız için kullandığınız ortam sürümünü seçmek sizin sorumluluğunuzdadır.

Varsayılan olarak bağımlılıklar, ortam oluştururken Azure Machine Learning'in sağladığı temel görüntülerin üzerine katmanlanır. Azure Machine Learning'de ortamları kullanırken kendi temel görüntülerinizi de kullanabilirsiniz. Microsoft tarafından sağlanan görüntülerin üzerine daha fazla bağımlılık yükledikten veya kendi temel görüntülerinizi getirdikten sonra güvenlik açığı yönetimi sizin sorumluluğunuzda olur.

Azure Machine Learning çalışma alanınızla ilişkili, kapsayıcı görüntüleri için önbellek olarak çalışan bir Azure Container Registry örneğidir. Gerçekleştirilmiş tüm görüntüler kapsayıcı kayıt defterine gönderilir. Çalışma alanı, ilgili ortam için deneme veya dağıtım tetiklendiğinde bunu kullanır.

Azure Machine Learning kapsayıcı kayıt defterinizden hiçbir görüntüyü silmez. Zaman içinde görüntü gereksinimini değerlendirmek sizin sorumluluğundadır. Ortam hijyenini izlemek ve korumak için, görüntülerinizi güvenlik açıklarına karşı taramaya yardımcı olmak üzere Kapsayıcı Kayıt Defteri için Microsoft Defender'ı kullanabilirsiniz. Microsoft Defender'ın tetikleyicilerini temel alarak işlemlerinizi otomatikleştirmek için bkz . Düzeltme yanıtlarını otomatikleştirme.

Özel paket deposu kullanma

Azure Machine Learning, Python paketlerini yüklemek için Conda ve Pip kullanır. Azure Machine Learning varsayılan olarak genel depolardan paketleri indirir. Kuruluşunuz paketleri yalnızca Azure DevOps akışları gibi özel depolardan kaynaklamanızı gerektiriyorsa, temel görüntülerinizin ve işlem örnekleri için ortam yapılandırmalarınızın bir parçası olarak Conda ve Pip yapılandırmasını geçersiz kılabilirsiniz.

Aşağıdaki örnek yapılandırma, varsayılan kanalları kaldırmayı ve kendi özel Conda ve Pip akışlarınızı eklemeyi gösterir. Otomasyon için işlem örneği kurulum betiklerini kullanmayı göz önünde bulundurun.

RUN conda config --set offline false \
&& conda config --remove channels defaults || true \
&& conda config --add channels https://my.private.conda.feed/conda/feed \
&& conda config --add repodata_fns <repodata_file_on_your_server>.json

# Configure Pip private indexes and ensure that the client trusts your host
RUN pip config set global.index https://my.private.pypi.feed/repository/myfeed/pypi/ \
&&  pip config set global.index-url https://my.private.pypi.feed/repository/myfeed/simple/

# In case your feed host isn't secured through SSL
RUN  pip config set global.trusted-host http://my.private.pypi.feed/

Azure Machine Learning'de kendi temel görüntülerinizi belirtmeyi öğrenmek için bkz . Docker derleme bağlamından ortam oluşturma. Conda ortamlarını yapılandırma hakkında daha fazla bilgi için bkz . Conda sitesinde el ile ortam dosyası oluşturma.

İşlem konaklarında güvenlik açığı yönetimi

Azure Machine Learning'deki yönetilen işlem düğümleri, Microsoft tarafından yönetilen işletim sistemi VM görüntülerini kullanır. Bir düğüm sağladığınızda en son güncelleştirilmiş VM görüntüsünü çeker. Bu davranış işlem örneği, işlem kümesi, sunucusuz işlem (önizleme) ve yönetilen çıkarım işlem seçenekleri için geçerlidir.

İşletim sistemi VM görüntülerine düzenli olarak düzeltme eki uygulansa da Azure Machine Learning, kullanımdayken işlem düğümlerini güvenlik açıklarına karşı etkin olarak taramaz. Ek bir koruma katmanı olarak işleminizde ağ yalıtımını göz önünde bulundurun.

Ortamınızın güncel olduğundan ve işlem düğümlerinin en son işletim sistemi sürümünü kullandığından emin olmak, sizinle Microsoft arasında paylaşılan bir sorumluluktur. Boşta olmayan düğümler en son VM görüntüsüne güncelleştirilemez. Aşağıdaki bölümlerde listelendiği gibi, her işlem türü için dikkat edilmesi gerekenler biraz farklıdır.

İşlem örneği

İşlem örnekleri, sağlama sırasında en son VM görüntülerini alır. Microsoft her ay yeni VM görüntüleri yayınlar. İşlem örneğini dağıttığınızda etkin olarak güncelleştirilmez. Örneğin işletim sistemi sürümünü sorgulayabilirsiniz. En son yazılım güncelleştirmelerini ve güvenlik düzeltme eklerini güncel tutmak için şu yöntemlerden birini kullanabilirsiniz:

  • En son işletim sistemi görüntüsünü almak için bir işlem örneğini yeniden oluşturun (önerilir).

    Bu yöntemi kullanırsanız, örneğin işletim sisteminde ve geçici disklerde depolanan verileri ve özelleştirmeleri (yüklü paketler gibi) kaybedersiniz.

    Örneğinizi yeniden oluşturduğunuzda:

    Görüntü sürümleri hakkında daha fazla bilgi için bkz . Azure Machine Learning işlem örneği görüntü sürüm notları.

  • İşletim sistemi ve Python paketlerini düzenli olarak güncelleştirin.

    • Paket listesini en son sürümlerle güncelleştirmek için Linux paket yönetimi araçlarını kullanın:

      sudo apt-get update
      
    • Paketleri en son sürümlere yükseltmek için Linux paket yönetimi araçlarını kullanın. Bu yaklaşımı kullandığınızda paket çakışmaları oluşabilir.

      sudo apt-get upgrade
      
    • Paketleri yükseltmek ve güncelleştirmeleri denetlemek için Python paket yönetimi araçlarını kullanın:

      pip list --outdated
      

Güvenlik sorunlarını taramak için işlem örneğine ek tarama yazılımı yükleyip çalıştırabilirsiniz:

  • İşletim sistemi ve Python paket düzeyi güvenlik açıklarını keşfetmek için Trivy'yi kullanın.
  • Kötü amaçlı yazılımları bulmak için ClamAV kullanın. İşlem örneklerine önceden yüklenmiş olarak gelir.

Sunucular için Microsoft Defender aracı yüklemesi şu anda desteklenmiyor.

Otomasyon için özelleştirme betiklerini kullanmayı göz önünde bulundurun. Trivy ve ClamAV'yi birleştiren örnek bir kurulum betiği için bkz . İşlem örneği örnek kurulum betikleri.

İşlem kümeleri

İşlem kümeleri, düğümleri otomatik olarak en son VM görüntüsüne yükselter. ile kümeyi min nodes = 0yapılandırdığınızda, tüm işler tamamlandığında ve küme sıfır düğüme küçüldüğünde düğümleri otomatik olarak en son VM görüntüsü sürümüne yükselter.

Aşağıdaki koşullarda küme düğümleri ölçeği azaltmaz, bu nedenle en son VM görüntüsünü alamazlar:

  • Kümenin en düşük düğüm sayısı sıfırdan büyük bir değere ayarlanır.
  • İşler kümenizde sürekli olarak zamanlanır.

En son işletim sistemi VM görüntü güncelleştirmelerini almak için boşta olmayan küme düğümlerinin ölçeğini daraltmak sizin sorumluluğundadır. Azure Machine Learning, VM güncelleştirmeleri göndermek için işlem düğümlerinde çalışan iş yüklerini durdurmaz. En düşük düğümleri geçici olarak sıfır olarak değiştirin ve kümenin sıfır düğüme düşmesine izin verin.

Yönetilen çevrimiçi uç noktalar

Yönetilen çevrimiçi uç noktalar, güvenlik açığı düzeltmelerini içeren işletim sistemi ana bilgisayar görüntüsü güncelleştirmelerini otomatik olarak alır. Görüntülerin güncelleştirme sıklığı ayda en az bir kezdir.

İşlem düğümleri, sürüm yayımlandığında otomatik olarak en son VM görüntüsü sürümüne yükseltilir. Herhangi bir işlem yapmanız gerekmez.

Müşteri tarafından yönetilen Kubernetes kümeleri

Kubernetes işlem , Azure Machine Learning'de modelleri eğitmek, çıkarım gerçekleştirmek ve yönetmek için Kubernetes kümelerini yapılandırmanıza olanak tanır.

Ortamı Kubernetes ile yönettiğiniz için hem işletim sistemi VM güvenlik açıklarının hem de kapsayıcı görüntüsü güvenlik açıklarının yönetimi sizin sorumluluğunuzdadır.

Azure Machine Learning, Azure Machine Learning uzantısı kapsayıcı görüntülerinin yeni sürümlerini Microsoft Yapıt Kayıt Defteri sık sık yayımlar. Microsoft, yeni görüntü sürümlerinin güvenlik açıklarından arınmasını sağlamaktan sorumludur. Her sürüm güvenlik açıklarını düzeltir.

Kümeleriniz işleri kesinti olmadan çalıştırdığında, çalışan işler güncel olmayan kapsayıcı görüntüsü sürümleri çalıştırabilir. Uzantıyı amlarc çalışan bir kümeye yükseltdikten sonra, yeni gönderilen işler en son görüntü sürümünü kullanmaya başlar. Uzantıyı amlarc en son sürümüne yükseltirken, kümelerden eski kapsayıcı görüntüsü sürümlerini gerektiği gibi temizleyin.

Azure Arc kümenizin en son sürümünü amlarcçalıştırıp çalıştırmadığını gözlemlemek için Azure portalını kullanın. Kubernetes - Azure Arc türündeki Azure Arc kaynağınızın altında Uzantılar'a giderek uzantının amlarc sürümünü bulun.

AutoML ve Tasarım Aracı ortamları

Kod tabanlı eğitim deneyimleri için hangi Azure Machine Learning ortamının kullanılacağını denetleyebilirsiniz. AutoML ve tasarımcı ile ortam, hizmetin bir parçası olarak kapsüllenmiş durumdadır. Bu tür işler, ağ yalıtımı gibi ek denetimlere izin vermek için yapılandırdığınız işlemlerde çalıştırılabilir.

AutoML işleri, Azure Machine Learning temel Docker görüntülerinin üzerine katman oluşturan ortamlarda çalışır.

Tasarım Aracı işler bölümlere ayrılır. Her bileşenin, Azure Machine Learning temel Docker görüntülerinin üzerine katmanlayan kendi ortamı vardır. Bileşenler hakkında daha fazla bilgi için bkz . bileşen başvurusu.

Sonraki adımlar