Share via


Procedimientos recomendados para un código seguro

En Azure Machine Learning, puede cargar archivos y contenido desde cualquier origen a Azure. El contenido de cuadernos o scripts de Jupyter que carga puede leer datos de las sesiones, acceder a datos confidenciales dentro de su organización en Azure o ejecutar procesos malintencionados en su nombre.

Importante

Ejecute solo cuadernos o scripts de orígenes de confianza. Por ejemplo, en los que usted o su equipo de seguridad han revisado el cuaderno o script.

Amenazas posibles

El desarrollo con Azure Machine Learning a menudo implica entornos de desarrollo basados en la Web, como cuadernos o el Estudio de Azure Machine Learning. Al usar entornos de desarrollo basados en la Web, las posibles amenazas son las siguientes:

  • Scripts entre sitios (XSS)

    • Inyección de código DOM: este tipo de ataque puede modificar la interfaz de usuario que se muestra en el explorador. Por ejemplo, al cambiar la forma en que el botón Ejecutar se comporta en una instancia de Jupyter Notebook.
    • Token de acceso o cookies: los ataques XSS también pueden acceder al almacenamiento local y a las cookies del explorador. El token de autenticación de Microsoft Entra se almacena en el almacenamiento local. Un ataque XSS podría usar este token para realizar llamadas API en su nombre y luego enviar los datos a una API o un sistema externo.
  • Falsificación de solicitud entre sitios (CSRF): este ataque podría reemplazar la dirección URL de una imagen o un vínculo con la dirección URL de un script o API malintencionada. Cuando se carga la imagen o cuando se hace clic en un vínculo, se realiza una llamada a la dirección URL.

Cuadernos de Estudio de Azure Machine Learning

Azure Machine Learning Studio proporciona una experiencia de cuaderno hospedado en el explorador. Las celdas de un cuaderno pueden generar documentos HTML o fragmentos que contienen código malintencionado. El código se puede ejecutar cuando se representa el resultado.

Amenazas posibles:

  • Scripts entre sitios (XSS)
  • Falsificación de solicitud entre sitios (CSRF)

Mitigaciones proporcionadas por Azure Machine Learning:

  • La salida de la celda de código está en un espacio aislado en un elemento iframe. El elemento iframe impide que el script tenga acceso al DOM, las cookies o el almacenamiento de sesión primarios.
  • El contenido de celda de Markdown se limpia mediante la biblioteca dompurify. Esto impide que se ejecuten scripts malintencionados con celdas de Markdown.
  • La dirección URL de la imagen y los vínculos de Markdown se envían a un punto de conexión de propiedad de Microsoft, que comprueba si hay valores malintencionados. Si se detecta un valor malintencionado, el punto de conexión rechaza la solicitud.

Acciones recomendadas:

  • Compruebe que confía en el contenido de los archivos antes de cargarlos en el Estudio. Debe confirmar que está cargando archivos de confianza.
  • Al seleccionar un vínculo para abrir una aplicación externa, se le pedirá que confíe en la aplicación.

Instancia de proceso de Azure Machine Learning

La instancia de proceso de Azure Machine Learning hospeda Jupyter y JupyterLab. Cuando usa una de estas aplicaciones, el código dentro de las celdas del cuaderno puede generar documentos HTML o fragmentos que contienen código malintencionado. El código se puede ejecutar cuando se representa el resultado. Las mismas amenazas se aplican también al usar RStudio o Posit Workbench (anteriormente, RStudio Workbench) hospedado en una instancia de proceso.

Amenazas posibles:

  • Scripts entre sitios (XSS)
  • Falsificación de solicitud entre sitios (CSRF)

Mitigaciones proporcionadas por Azure Machine Learning:

  • Ninguno. Jupyter y JupyterLab son aplicaciones de código abierto hospedadas en la instancia de proceso de Azure Machine Learning.

Acciones recomendadas:

  • Compruebe que confía en el contenido de los archivos antes de cargarlos. Debe confirmar que está cargando archivos de confianza.

Informe de problemas o aspectos de seguridad

Azure Machine Learning es válido en el programa de recompensa de Microsoft Azure. Para más información, visite https://www.microsoft.com/msrc/bounty-microsoft-azure.