Partager via


Meilleures pratiques pour un code sécurisé

Dans Azure Machine Learning, vous pouvez charger des fichiers et du contenu à partir de n’importe quelle source dans Azure. Le contenu dans les scripts ou les notebooks Jupyter que vous chargez peut potentiellement lire les données de vos sessions, accéder aux données sensibles de votre organisation dans Azure ou exécuter des processus malveillants en votre nom.

Important

Exécutez uniquement des notebooks ou des scripts provenant de sources approuvées, par exemple l’emplacement où votre équipe de sécurité ou vous-même avez revu le notebook ou le script.

Menaces potentielles

Le développement avec Azure Machine Learning implique souvent des environnements de développement web, tels que les notebooks et Azure Machine Learning studio. Quand vous utilisez des environnements de développement basés sur le web, les menaces potentielles sont les suivantes :

  • Scripting inter-site (XSS)

    • Injection basée sur le modèle DOM : ce type d’attaque peut modifier l’interface utilisateur affichée dans le navigateur, par exemple en changeant le comportement du bouton Exécuter dans un notebook Jupyter.
    • Jeton d’accès ou cookies : les attaques XSS peuvent également accéder au stockage local et aux cookies du navigateur. Votre jeton d’authentification Microsoft Entra est stocké dans le stockage local. Une attaque XSS peut utiliser ce jeton pour effectuer des appels d’API en votre nom, puis envoyer les données à une API ou un système externe.
  • falsification de requête intersites (CSRF, Cross Site Request Forgery) : cette attaque peut remplacer l’URL d’une image ou d’un lien par celle d’un script ou d’une API malveillant(e). Quand l’image est chargée, ou quand l’utilisateur clique sur le lien, un appel est effectué à l’URL.

Notebooks Azure Machine Learning studio

Azure Machine Learning Studio fournit une expérience de notebook hébergé dans votre navigateur. Les cellules d’un notebook peuvent générer des fragments ou des documents HTML qui contiennent du code malveillant. Lorsque la sortie est restituée, le code peut être exécuté.

Menaces possibles :

  • Scripting inter-site (XSS)
  • Falsification de requête intersite (CSRF, Cross Site Request Forgery)

Atténuations des risques fournies par Azure Machine Learning :

  • La sortie de la cellule de code est mise en bac à sable (sandbox) dans un iframe. L’iframe empêche le script d’accéder au modèle DOM parent, aux cookies ou au stockage de session.
  • Le contenu de la cellule Markdown est nettoyé à l’aide de la bibliothèque dompurify. Cela empêche les scripts malveillants de s’exécuter pendant le rendu des cellules Markdown.
  • L’URL d’image et les liens Markdown sont envoyés à un point de terminaison Microsoft, qui vérifie s’il n’y a pas de valeurs malveillantes. Si une valeur malveillante est détectée, le point de terminaison rejette la requête.

Actions recommandées :

  • Vérifiez que le contenu des fichiers est digne de confiance avant de le charger dans le studio. Vous devez confirmer que vous chargez des fichiers approuvés.
  • Lors de la sélection d’un lien pour ouvrir une application externe, vous êtes invité à faire confiance à l’application.

Instance de calcul Azure Machine Learning

L’instance de calcul Azure Machine Learning héberge Jupyter et JupyterLab. Quand vous utilisez l’un ou l’autre, le code à l’intérieur des cellules d’un notebook peut générer des fragments ou des documents HTML qui contiennent du code malveillant. Lorsque la sortie est restituée, le code peut être exécuté. Les mêmes menaces s’appliquent également à l’utilisation de RStudio et de Posit Workbench (anciennement RStudio Workbench) hébergés sur une instance de calcul.

Menaces possibles :

  • Scripting inter-site (XSS)
  • Falsification de requête intersite (CSRF, Cross Site Request Forgery)

Atténuations des risques fournies par Azure Machine Learning :

  • Aucune. Jupyter et JupyterLab sont des applications open source hébergées sur l’instance de calcul Azure Machine Learning.

Actions recommandées :

  • Vérifiez que le contenu des fichiers est digne de confiance avant de le charger. Vous devez confirmer que vous chargez des fichiers approuvés.

Signaler des problèmes de sécurité ou des préoccupations

Azure Machine Learning est éligible dans le cadre du programme de primes Microsoft Azure. Pour plus d’informations, consultez https://www.microsoft.com/msrc/bounty-microsoft-azure.