Falsificación de peticiones del lado del servidor

La Falsificación de Peticiones del Lado del Servidor (SSRF) es una grave vulnerabilidad de seguridad web que permite a un atacante manipular un servidor para que realice peticiones no deseadas. Para los equipos SOC, es crucial comprender la SSRF, sus posibles efectos y las estrategias de mitigación para proteger las aplicaciones web.
  • Según un informe de Positive Technologies, el 35% de las aplicaciones web analizadas eran vulnerables a ataques SSRF.
  • Las vulnerabilidades de SSRF fueron un factor importante en la violación de datos de alto perfil de Capital One en 2019, exponiendo información sensible de más de 100 millones de clientes.
  • ¿Qué es la falsificación de peticiones del lado del servidor?

    La Falsificación de Peticiones del Lado del Servidor (SSRF) es una vulnerabilidad por la que un atacante puede engañar a un servidor para que realice peticiones no deseadas a recursos internos o externos. Estas solicitudes se realizan desde el propio servidor, que puede tener más privilegios y acceso en comparación con una solicitud del lado del cliente. SSRF puede ser explotado para obtener acceso a sistemas internos, extraer datos sensibles, o llevar a cabo otros ataques dentro de la red de la organización.

    Cómo funcionan los ataques de falsificación de peticiones del lado del servidor

    Un ataque SSRF normalmente implica los siguientes pasos:

    1. Identificación de la vulnerabilidad: El atacante identifica una función de la aplicación web que procesa URLs proporcionadas por el usuario o puede realizar peticiones HTTP.
    2. Creación de solicitud maliciosa: El atacante crea una solicitud que incluye una URL a un recurso interno o sensible.
    3. Explotación de la vulnerabilidad: El servidor procesa la petición maliciosa y realiza la petición a la URL especificada.
    4. Acceso a datos sensibles: La solicitud del servidor recupera datos de sistemas internos, que luego se envían de vuelta al atacante, lo que conduce a la fuga de datos o al acceso no autorizado.
    diagrama que ilustra el proceso de ataque SSRF

    Ejemplos reales de ataques de falsificación de peticiones del lado del servidor

    1. Violación de datos de Capital One (2019): El atacante explotó una vulnerabilidad SSRF para acceder a información sensible de los servicios de metadatos de AWS, lo que resultó en la exposición de más de 100 millones de registros de clientes.
    2. Vulnerabilidad SSRF de GitHub (2020): Una vulnerabilidad en la función de duplicación de repositorios de GitHub permitía a los atacantes activar solicitudes internas, exponiendo potencialmente servicios internos.

    Indicadores de ataques de falsificación de peticiones del lado del servidor

    1. Patrones de tráfico saliente inusuales: La monitorización de peticiones salientes inesperadas desde el servidor a direcciones IP internas o dominios externos inesperados puede indicar un ataque SSRF.
    2. Registros de acceso inesperados: Los registros de acceso que muestran solicitudes a servicios o recursos internos que no deberían ser accesibles externamente son una señal de alarma.
    3. Anomalías en las respuestas del servidor: Respuestas que incluyen metadatos internos o información sensible que se devuelve al usuario.

    Diferencias entre la falsificación de petición del lado del servidor (SSRF) y Cross-Site Request Forgery (CSRF)

    Server-Side Request Forgery (SSRF) y Cross-Site Request Forgery (CSRF) son dos vulnerabilidades críticas de la seguridad web que pueden tener graves consecuencias si se explotan. Aunque ambos tipos de ataques implican la manipulación del comportamiento de las aplicaciones web, operan de formas fundamentalmente distintas y se dirigen a aspectos diferentes de las aplicaciones web. Comprender las diferencias entre SSRF y CSRF es esencial para que los equipos de los SOC apliquen las medidas de seguridad adecuadas y protejan sus sistemas con eficacia.

    A continuación se muestra una tabla comparativa detallada en la que se destacan las principales diferencias entre SSRF y CSRF:

    Aspecto Falsificación de peticiones del lado del servidor (SSRF) Cross-Site Request Forgery (CSRF)
    Definición SSRF es una vulnerabilidad en la que un atacante manipula un servidor para realizar peticiones no deseadas a recursos internos o externos. CSRF es una vulnerabilidad en la que un atacante engaña a un usuario autenticado para que realice peticiones no deseadas a una aplicación web.
    Objetivo El propio servidor, haciendo que realice acciones no autorizadas en nombre del atacante. El navegador del usuario, explotando la sesión autenticada del usuario con una aplicación web.
    Vector de ataque Manipula directamente las peticiones del lado del servidor, a menudo a través de entradas suministradas por el usuario que el servidor procesa. Utiliza la ingeniería social para engañar a los usuarios para que hagan clic en enlaces maliciosos o visiten sitios web maliciosos que envían peticiones en su nombre.
    Impacto Puede provocar el acceso no autorizado a servicios internos, la exfiltración de datos y, potencialmente, graves compromisos de la red interna. Puede dar lugar a acciones no autorizadas, como cambiar la configuración del usuario, realizar transacciones o publicar contenidos sin su consentimiento.
    Indicadores comunes Patrones de tráfico saliente inusuales, registros de acceso inesperados a recursos internos y anomalías en las respuestas de los servidores. Cambios inesperados en la configuración de las cuentas de usuario, transacciones financieras inexplicables y registros de actividad anómalos.
    Estrategias de prevención
    • Validar y desinfectar la entrada del usuario
    • Restringir las solicitudes salientes
    • Segmentación de la red
    • Utilizar cabeceras de seguridad
    • Auditorías de seguridad periódicas
    • Utilizar fichas anti-CSRF
    • Atributo de cookie SameSite
    • Reautenticación para acciones sensibles
    • Educar a los usuarios sobre enlaces sospechosos
    • Pruebas de seguridad periódicas

    Estrategias de prevención eficaces

    1. Validación y sanitización de entradas:

    • Validar y desinfectar todas las entradas del usuario, asegurándose de que sólo se permiten URL y dominios permitidos.
    • Implemente una lista blanca estricta de URL que el servidor puede solicitar, para evitar destinos no deseados.

    2. Segmentación y aislamiento de redes:

    • Segmente la red para garantizar que los servidores web no puedan acceder directamente a los servicios internos sin pasar por los controles de seguridad adecuados.
    • Utilice cortafuegos y listas de control de acceso (ACL) para restringir el acceso de los servidores a los recursos internos sensibles.

    3. Uso de cabeceras y protocolos de seguridad:

    • Implementar cabeceras de seguridad como la Política de Seguridad de Contenidos (CSP) para restringir los recursos que pueden ser cargados o solicitados por la aplicación.
    • Aplique HTTPS para garantizar la comunicación cifrada entre el servidor y los recursos externos, mitigando el riesgo de interceptación de datos.

    4. Supervisión y registro:

    • Supervise continuamente el tráfico saliente y registre todas las solicitudes del servidor, en particular las dirigidas a direcciones IP internas o dominios inesperados.
    • Utilizar sistemas de detección de anomalías para identificar patrones de solicitud inusuales que podrían indicar un intento de SSRF.

    5. Auditorías de seguridad y pruebas de penetración periódicas:

    • Llevar a cabo auditorías de seguridad y pruebas de penetración periódicas para identificar y abordar las vulnerabilidades del SSRF.
    • Utilice herramientas automatizadas como OWASP ZAP, Burp Suite y escáneres específicos de SSRF para detectar posibles puntos débiles de SSRF.

    6. Principio del menor privilegio:

    • Aplique el principio de mínimo privilegio, asegurándose de que la aplicación web tiene los permisos mínimos necesarios para realizar sus funciones.
    • Restrinja las capacidades del servidor para realizar peticiones externas sólo cuando sea absolutamente necesario.

    Garantizar que sus aplicaciones web son seguras frente a los ataques SSRF es vital para mantener la integridad de los datos y proteger la información confidencial. Si le preocupan las vulnerabilidades SSRF de sus aplicaciones, nuestro equipo de Vectra AI puede ayudarle. Obtenga una visita gratuita a la plataforma Vectra AI para descubrir cómo podemos ayudarle a fortalecer sus defensas contra SSRF y otras ciberamenazas.

    Preguntas frecuentes

    ¿Qué es la falsificación de peticiones del lado del servidor (SSRF)?

    ¿Cuáles son los indicadores habituales de un ataque SSRF?

    ¿Cómo se puede prevenir la SSRF?

    ¿Cómo ayuda la validación de entradas a prevenir la SSRF?

    ¿Cómo pueden ayudar las cabeceras de seguridad a mitigar la SSRF?

    ¿Cómo funciona un ataque SSRF?

    ¿Cuáles son algunos ejemplos de ataques SSRF?

    ¿Cuál es el impacto de una vulnerabilidad SSRF?

    ¿Qué papel desempeña la segmentación de la red en la mitigación de la SSRF?

    ¿Qué herramientas pueden utilizarse para detectar las vulnerabilidades de los SSRF?