Barra de errores de seguridad de SDL (ejemplo)

Consulte la Matriz de denegación de servicio para obtener una matriz completa de escenarios doS del servidor.

La barra del servidor normalmente no es apropiada cuando la interacción del usuario forma parte del proceso de explotación. Si una vulnerabilidad crítica solo existe en los productos de servidor y se aprovecha de una manera que requiere la interacción del usuario y da como resultado la transacción del servidor, la gravedad puede reducirse de Crítico a Importante de acuerdo con la definición de DATOS/NEAT de interacción extensa del usuario que se presenta al principio del pivote de gravedad del cliente.

Servidor

Crítico

Resumen del servidor: Gusanos de red o casos inevitables en los que el servidor es "propiedad".

  • Elevación de privilegios: la capacidad de ejecutar código arbitrario u obtener más privilegios de los autorizados

    • Usuario anónimo remoto

      • Ejemplos:

        • Acceso al sistema de archivos no autorizado: escritura arbitraria en el sistema de archivos

        • Ejecución de código arbitrario

        • SQL inyección (que permite la ejecución de código)

    • Todas las infracciones de acceso de escritura (AV), los AVs de lectura explotables o los desbordamientos de enteros en código remoto que se puede llamar anónimamente

Importante

Resumen del servidor: escenarios críticos no predeterminados o casos en los que existen mitigaciones que pueden ayudar a evitar escenarios críticos.

  • Denegación de servicio: Debe ser "fácil de explotar" enviando una pequeña cantidad de datos o inducido rápidamente

    • Anónimo

      • DoS persistentes

        • Ejemplos:

          • Enviar un único paquete TCP malintencionado da como resultado una pantalla azul de la muerte (BSoD)

          • Enviar un pequeño número de paquetes que causa un error en el servicio

      • DoS temporal con amplificación

        • Ejemplos:

          • Enviar un pequeño número de paquetes que hace que el sistema no se pueda usar durante un período de tiempo

          • Un servidor web (como IIS) se está abajo durante un minuto o más

          • Un único cliente remoto que consume todos los recursos disponibles (sesiones, memoria) en un servidor estableciendo sesiones y manteniéndolos abiertos

    • Autenticado

      • DoS persistente frente a un activo de alto valor

        • Ejemplo:

          • Enviar un pequeño número de paquetes que provocan un error de servicio para un activo de alto valor en roles de servidor (servidor de certificados, servidor Kerberos, controlador de dominio), por ejemplo, cuando un usuario autenticado de dominio puede realizar un DoS en un controlador de dominio

  • Elevación de privilegios: la capacidad de ejecutar código arbitrario o de obtener más privilegios de los previstos

    • Usuario autenticado remoto

    • Usuario autenticado local (Terminal Server)

      • Ejemplos:

        • Acceso al sistema de archivos no autorizado: escritura arbitraria en el sistema de archivos

        • Ejecución de código arbitrario

    • Todos los AVs de escritura, los AVs de lectura explotables o los desbordamientos de enteros en el código a los que pueden obtener acceso los usuarios autenticados locales o remotos que no sean administradores (los escenarios de administrador no tienen problemas de seguridad por definición, pero siguen siendo problemas de confiabilidad).

  • Divulgación de información (dirigida)

    • Casos en los que el atacante puede localizar y leer información desde cualquier lugar del sistema, incluida la información del sistema que no estaba pensada o diseñada para exponerse

      • Ejemplos:

        • Divulgación de información de identificación personal (PII)

          • Divulgación de pii (direcciones de correo electrónico, números de teléfono, información de tarjeta de crédito)

          • El atacante puede recopilar PII sin el consentimiento del usuario o de forma encubrida

  • Suplantación de datos

    • Una entidad (equipo, servidor, usuario, proceso) puede hacerse pasar por una entidadespecífica (usuario o equipo) de su elección.

      • Ejemplos:

        • El servidor web usa la autenticación de certificado de cliente (SSL) incorrectamente para permitir que un atacante se identifique como cualquier usuario de su elección

        • El nuevo protocolo está diseñado para proporcionar autenticación de cliente remoto, pero existe un defecto en el protocolo que permite que un usuario remoto malintencionado se pueda ver como un usuario diferente de su elección

  • Manipulación

    • Modificación de cualquier dato de "activo de alto valor" en un escenario común o predeterminado en el que la modificación persiste después de reiniciar el software afectado

    • Modificación permanente o persistente de los datos de usuario o sistema usados en un escenario común o predeterminado

      • Ejemplos:

        • Modificación de bases de datos o archivos de datos de aplicaciones en un escenario común o predeterminado, como la inyección SQL datos autenticados

        • Intoxicación de caché de proxy en un escenario común o predeterminado

        • Modificación de la configuración del sistema operativo o de la aplicación sin el consentimiento del usuario en un escenario común o predeterminado

  • Características de seguridad: Romper o omitir cualquier característica de seguridad proporcionada.
    Tenga en cuenta que una vulnerabilidad de una característica de seguridad está calificada como "Importante" de forma predeterminada, pero la clasificación puede ajustarse en función de otras consideraciones como se documenta en la barra de errores de SDL.

    • Ejemplos:

      • Deshabilitar o omitir un firewall sin informar a los usuarios ni obtener consentimiento

      • Volver a configurar un firewall y permitir conexiones a otros procesos

Moderado
  • Denegación de servicio

    • Anónimo

      • DoS temporal sin amplificación en una instalación predeterminada o común.

        • Ejemplo:

          • Varios clientes remotos que consumen todos los recursos disponibles (sesiones, memoria) en un servidor estableciendo sesiones y manteniéndolos abiertos

    • Autenticado

      • DoS persistentes

        • Ejemplo:

          • El usuario Exchange sesión puede enviar un mensaje de correo específico y bloquear el Exchange Server, y el bloqueo no se debe a un AV de escritura, AV de lectura explotable o desbordamiento de enteros

      • DoS temporal con amplificación en una instalación predeterminada o común

        • Ejemplo:

          • El SQL Server normal ejecuta un procedimiento almacenado instalado por algún producto y consume el 100 % de la CPU durante unos minutos

  • Divulgación de información (dirigida)

    • Casos en los que el atacante puede leer fácilmente la información del sistema desde ubicaciones específicas, incluida la información del sistema, que no estaba pensada o diseñada para exponerse.

      • Ejemplo:

        • Divulgación dirigida de datos anónimos

        • Divulgación dirigida de la existencia de un archivo

        • Divulgación dirigida de un número de versión de archivo

  • Suplantación de datos

    • Una entidad (equipo, servidor, usuario, proceso) puede enmascararse como una entidad aleatoria diferente que no se puede seleccionar específicamente.

      • Ejemplo:

        • El cliente se autentica correctamente en el servidor, pero el servidor entrega una sesión de otro usuario aleatorio que pasa a estar conectado al servidor al mismo tiempo

  • Manipulación

    • Modificación permanente o persistente de cualquier usuario o datos del sistema en un escenario específico

      • Ejemplos:

        • Modificación de bases de datos o archivos de datos de aplicaciones en un escenario específico

        • Intoxicación de caché de proxy en un escenario específico

        • Modificación de la configuración del sistema operativo o de la aplicación sin el consentimiento del usuario en un escenario específico

    • Modificación temporal de datos en un escenario común o predeterminado que no persiste después de reiniciar el sistema operativo/aplicación-/sesión

  • Garantías de seguridad:

    • Una garantía de seguridad es una característica de seguridad u otra característica o función de producto que los clientes esperan ofrecer protección de seguridad. Las comunicaciones han indicado (explícita o implícitamente) que los clientes pueden confiar en la integridad de la característica y eso es lo que la convierte en una garantía de seguridad. Los boletines de seguridad se publicarán por un defecto en una garantía de seguridad que desvirtue la confianza o confianza del cliente.

      • Ejemplos:

        • Los procesos que se ejecutan con privilegios normales de "usuario" no pueden obtener privilegios de "administrador" a menos que se hayan proporcionado contraseñas o credenciales de administrador a través de métodos autorizados intencionadamente.

        • JavaScript basado en Internet que se ejecuta en Internet Explorer no puede controlar nada del sistema operativo host a menos que el usuario haya cambiado explícitamente la configuración de seguridad predeterminada.

Bajo
  • Divulgación de información (sin destino)

    • Información de tiempo de ejecución

      • Ejemplo:

        • Pérdida de memoria de almacenamiento dinámico aleatorio

  • Manipulación

    • Modificación temporal de datos en un escenario específico que no persiste después de reiniciar el sistema operativo o la aplicación

La acción de usuario extensiva se define como:

  • La "interacción del usuario" solo puede ocurrir en un escenario controlado por el cliente.

  • Las acciones de usuario normales y sencillas, como obtener una vista previa del correo, ver carpetas locales o recursos compartidos de archivos, no son una interacción extensa del usuario.

  • "Extensivo" incluye a los usuarios que navegan manualmente a un sitio web determinado (por ejemplo, escribiendo una dirección URL) o haciendo clic en una decisión de sí o no.

  • "No extensivo" incluye a los usuarios haciendo clic en los vínculos de correo electrónico.

  • Calificador NEAT (solo se aplica a advertencias). Evidentemente, la experiencia de usuario es:

    • Necessary (¿Realmente es necesario presentar al usuario la decisión?)

    • Explained (¿el UX presenta toda la información que el usuario necesita para tomar esta decisión?)

    • Unctionable (¿Hay un conjunto de pasos que los usuarios pueden seguir para tomar decisiones correctas tanto en escenarios benignos como malintencionados?)

    • Tested (¿Ha revisado la advertencia varias personas para asegurarse de que los usuarios comprendan cómo responder a la advertencia?)

  • Aclaración: Tenga en cuenta que el efecto de la interacción extensiva del usuario no es una reducción de un nivel en la gravedad, sino que es y ha sido una reducción de la gravedad en determinadas circunstancias en las que la frase interacción extensa del usuario aparece en la barra de errores. La intención es ayudar a los clientes a diferenciar los ataques que se propagan rápidamente y los ataques que se pueden gusanos de los ataques, en los que, dado que el usuario interactúa, el ataque se ralentiza. Esta barra de errores no le permite reducir la elevación de privilegios debajo de Importante debido a la interacción del usuario.

Cliente

Crítico

Resumen del cliente:

  • Gusanos de red o escenarios de exploración y uso comunes inevitables en los que el cliente es "propietario" sin advertencias ni avisos.

  • Elevación de privilegios (remoto): La capacidad de ejecutar código arbitrario o de obtener más privilegios de los previstos

    • Ejemplos:

      • Acceso al sistema de archivos no autorizado: escribir en el sistema de archivos

      • Ejecución de código arbitrario sin una acción exhaustiva del usuario

      • Todos los AVs de escritura, los AVs de lectura explotables, los desbordamientos de pila o los desbordamientos de enteros en código que se puede llamar remotamente(sin una acción de usuario extensa)

Importante

Resumen del cliente:

  • Escenarios comunes de exploración y uso en los que el cliente es "propietario" con advertencias o avisos, o a través de acciones extensas sin avisos. Tenga en cuenta que esto no discrimina sobre la calidad/usabilidad de una solicitud y la probabilidad de que un usuario haga clic en el mensaje, pero solo que existe un mensaje de algún formulario.

  • Elevación de privilegios (remoto)

    • Ejecución de código arbitrario con una amplia acción de usuario

      • Todos los AVs de escritura, los AVs leídos explotables o los desbordamientos de enteros en código remoto que se puede llamar(con una acción de usuario extensa)

  • Elevación de privilegios (local)

    • El usuario local con privilegios bajos puede elevarse a otro usuario, administrador o sistema local.

      • Todos los AVs de escritura, los AVs de lectura explotables o los desbordamientos de enteros en código local que se puede llamar

  • Divulgación de información (dirigida)

    • Casos en los que el atacante puede localizar y leer información en el sistema, incluida la información del sistema que no estaba pensada o diseñada para exponerse.

    • Ejemplo:

      • Acceso al sistema de archivos no autorizado: lectura desde el sistema de archivos

      • Divulgación de PII

        • Divulgación de PII (direcciones de correo electrónico, números de teléfono)

      • Teléfono escenarios de inicio

  • Denegación de servicio

    • La corrupción del sistema DoS requiere volver a instalar el sistema y/o los componentes.

      • Ejemplo:

        • Visitar una página web provoca daños en el registro que hacen que el equipo no se pueda arranque

    • Drive-by DoS

      • Criterios:

        • DoS del sistema no autenticado

        • Exposición predeterminada

        • No hay características de seguridad predeterminadas ni mitigaciones de límites (firewalls)

        • Sin interacción del usuario

        • Sin auditoría y pista de sanción

        • Ejemplo:

          • Drive-by Bluetooth sistema DoS o SMS en un teléfono móvil

  • Suplantación de datos

    • Capacidad para que el atacante presente una interfaz de usuario diferente de la interfaz de usuario, pero visualmente idéntica a la interfaz de usuario en la que deben confiar los usuarios para tomar decisiones de confianza válidas en un escenario predeterminado o común. Una decisión de confianza se define como cualquier momento en que el usuario realiza una acción pensando que una entidad determinada presenta información, ya sea el sistema o algún origen local o remoto específico.

      • Ejemplos:

        • Mostrar una dirección URL diferente en la barra de direcciones del explorador desde la dirección URL del sitio que el explorador está mostrando en realidad en un escenario predeterminado o común

        • Mostrar una ventana sobre la barra de direcciones del explorador que tiene un aspecto idéntico a una barra de direcciones, pero que muestra datos falsos en un escenario predeterminado o común

        • Mostrar un nombre de archivo diferente en un "¿Desea ejecutar este programa?" cuadro de diálogo que el del archivo que realmente se cargará en un escenario predeterminado o común

        • Mostrar un mensaje de inicio de sesión "falso" para recopilar credenciales de usuario o cuenta

  • Manipulación

    • Modificación permanente de los datos de usuario o datos usados para tomar decisiones de confianza en un escenario común o predeterminado que persiste después de reiniciar el sistema operativo o la aplicación.

      • Ejemplos:

        • Intoxicación en caché del explorador web

        • Modificación de la configuración significativa del sistema operativo o la aplicación sin el consentimiento del usuario

        • Modificación de datos de usuario

  • Características de seguridad: Romper o omitir cualquier característica de seguridad proporcionada

    • Ejemplos:

      • Deshabilitar o omitir un firewall con el usuario informado o obtener consentimiento

      • Volver a configurar un firewall y permitir la conexión a otros procesos

      • Usar un cifrado débil o mantener las claves almacenadas en texto sin formato

      • AccessCheck bypass

      • Omisión de Bitlocker; por ejemplo, no cifrar parte de la unidad

      • Omisión de syskey, una forma de descodificar la syskey sin la contraseña

Moderado
  • Denegación de servicio

    • El DoS permanente requiere un reinicio en frío o causa la comprobación de errores o pantalla azul.

      • Ejemplo:

        • Al abrir un documento de Word, el equipo se muestra en Pantalla azul/Comprobación de errores.

  • Divulgación de información (dirigida)

    • Casos en los que el atacante puede leer información del sistema desde ubicaciones conocidas, incluida la información del sistema que no estaba pensada o diseñada para exponerse.

      • Ejemplos:

        • Existencia de archivos dirigidos

        • Número de versión del archivo de destino

  • Suplantación de datos

    • Capacidad para que el atacante presente una interfaz de usuario diferente de la interfaz de usuario, pero visualmente idéntica a la que los usuarios están acostumbrados a confiar en un escenario específico. "Acostumbrado a la confianza" se define como cualquier cosa con la que un usuario está familiarizado en función de la interacción normal con el sistema operativo o la aplicación, pero normalmente no se considera una "decisión de confianza".

      • Ejemplos:

        • Intoxicación en caché del explorador web

        • Modificación de la configuración significativa del sistema operativo o la aplicación sin el consentimiento del usuario

        • Modificación de datos de usuario

Bajo
  • Denegación de servicio

    • El DoS temporal requiere reiniciar la aplicación.

      • Ejemplo:

        • Al abrir un documento HTML, Internet Explorer se bloquea

  • Suplantación de datos

    • Capacidad para que el atacante presente una interfaz de usuario diferente de la interfaz de usuario, pero visualmente idéntica a la interfaz de usuario que es una única parte de un escenario de ataque más grande.

      • Ejemplo:

        • El usuario tiene que ir a un sitio web "malintencionado", hacer clic en un botón en un cuadro de diálogo suplantado y, a continuación, es susceptible a una vulnerabilidad basada en un error de explorador diferente

  • Manipulación

    • Modificación temporal de los datos que no se conservan después de reiniciar el sistema operativo o la aplicación.

    • Divulgación de información (sin destino)

      • Ejemplo:

        • Pérdida de memoria de almacenamiento dinámico aleatorio

Definición de términos

autenticado
Cualquier ataque que tenga que incluir la autenticación por parte de la red. Esto implica que el registro de algún tipo debe poder producirse para que se pueda identificar al atacante.

anónimo
Cualquier ataque que no necesite autenticarse para completarse.

cliente
Cualquier software que se ejecute localmente en un único equipo o software que acceda a recursos compartidos proporcionados por un servidor a través de una red.

predeterminado/común
Todas las características que estén activas fuera de la caja o que lleguen a más del 10 por ciento de los usuarios.

escenario
Todas las características que requieren personalización especial o casos de uso para habilitar, alcanzando menos del 10 por ciento de los usuarios.

servidor
Equipo que está configurado para ejecutar software que espera y cumple las solicitudes de los procesos de cliente que se ejecutan en otros equipos.

  **Critical.** *A security vulnerability that would be rated as

con el mayor potencial de daño.*

  **Important.** *A security vulnerability that would be rated as

con un potencial significativo de daño, pero menor que Crítico.*

  **Moderate.** *A security vulnerability that would be rated as

con un potencial moderado de daño, pero menor que Importante.*

  **Low.** *A security vulnerability that would be rated as having

bajo potencial de daño.*

divulgación de información dirigida
Capacidad para seleccionar de forma intencionada (destino) la información deseada.

DoS temporal
Un DoS temporal es una situación en la que se cumplen los siguientes criterios:

  • El objetivo no puede realizar operaciones normales debido a un ataque.

  • La respuesta a un ataque es aproximadamente la misma magnitud que el tamaño del ataque.

  • El objetivo vuelve al nivel normal de funcionalidad poco después de finalizar el ataque. La definición exacta de "en breve" debe evaluarse para cada producto.

Por ejemplo, un servidor no responde mientras un atacante envía constantemente una transmisión de paquetes a través de una red y el servidor vuelve a la normalidad unos segundos después de que se detenga la transmisión de paquetes.

DoS temporal con amplificación

Un DoS temporal con amplificación es una situación en la que se cumplen los siguientes criterios:

  • El objetivo no puede realizar operaciones normales debido a un ataque.

  • La respuesta a un ataque es de magnitudes superiores al tamaño del ataque.

  • El objetivo vuelve al nivel normal de funcionalidad después de finalizar el ataque, pero lleva algún tiempo (quizás unos minutos).

Por ejemplo, si puede enviar un paquete malintencionado de 10 bytes y provocar una respuesta de 2048k en la red, está doSing the bandwidth amplifying our attack effort.

DoS permanente

Un DoS permanente es uno que requiere que un administrador inicie, reinicie o reinstale todas o partes del sistema. Cualquier vulnerabilidad que reinicie automáticamente el sistema también es un DoS permanente.

Matriz de denegación de servicio (servidor)

Autenticado frente a ataque anónimo Valor predeterminado/común frente a escenario DoS temporal frente a Permanente Clasificación
Autenticado Predeterminado/Común Permanente Moderado
Autenticado Predeterminado/Común DoS temporal con amplificación Moderado
Autenticado Predeterminado/Común DoS temporales Bajo
Autenticado Escenario Permanente Moderado
Autenticado Escenario DoS temporal con amplificación Bajo
Autenticado Escenario DoS temporales Bajo
Anónimo Predeterminado/Común Permanente Importante
Anónimo Predeterminado/Común DoS temporal con amplificación Importante
Anónimo Predeterminado/Común DoS temporales Moderado
Anónimo Escenario Permanente Importante
Anónimo Escenario DoS temporal con amplificación Importante
Anónimo Escenario DoS temporales Bajo

Declinación de responsabilidades de contenido

Esta documentación no es una referencia exhaustiva sobre las prácticas de SDL en Microsoft. Los equipos de producto pueden realizar un trabajo de garantía adicional (pero no necesariamente documentado) a su discreción. Como resultado, este ejemplo no debe considerarse como el proceso exacto que microsoft sigue para proteger todos los productos.

Esta documentación se proporciona "tal como está". La información y las vistas expresadas en este documento, incluidas las url y otras referencias a sitios web de Internet, pueden cambiar sin previo aviso. Usted asume el riesgo de usarlo.

Esta documentación no le proporciona ningún derecho legal a ninguna propiedad intelectual en ningún producto de Microsoft. Puede copiar y usar este documento con fines de referencia internos.

© Microsoft Corporation 2018. Todos los derechos reservados.

Licencia bajoCreative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported

Nota: Este documento de ejemplo solo tiene fines ilustrativos. En el contenido que se muestra a continuación se describen los criterios básicos que debe tener en cuenta al crear procesos de seguridad. No es una lista exhaustiva de actividades o criterios y no debe tratarse como tal.

Consulte las definiciones de términos de esta sección.

En esta página

Servidor
Cliente
Definiciones de términos