BLOG | NGINX

Proteja sus API de transmisión bidireccional GraphQL y gRPC con F5 NGINX App Protect WAF

NGINX - Parte de F5 - horizontal, negro, tipo RGB
Miniatura de Thelen Blum
Thelen Blum
Publicado el 27 de abril de 2023

La economía digital continúa expandiéndose desde la pandemia de COVID-19, y el 90 % de las organizaciones están ampliando sus arquitecturas de aplicaciones modernas. En el Informe sobre el estado de la estrategia de aplicação de 2023 de F5, más del 40 % de los 1000 tomadores de decisiones de TI globales encuestados describen sus carteras de aplicaciones como "modernas". Este porcentaje ha ido creciendo de forma constante en los últimos años y se prevé que supere el 50% en 2025. Sin embargo, el aumento de las aplicaciones modernas y el uso de microservicios viene acompañado de una proliferación de API y puntos finales de API, lo que aumenta exponencialmente el potencial de vulnerabilidades y la superficie para ataques.

Según Continuous API Sprawl , un informe de la Oficina del CTO de F5, en 2021 había aproximadamente 200 millones de API en todo el mundo, una cifra que se espera que se acerque a los 2 mil millones para 2030.  A la complejidad resultante de este rápido crecimiento de las API se suma el desafío de gestionar aplicações distribuidas en entornos híbridos y multicloud. Los encuestados en el Informe sobre el estado de la estrategia de aplicação de 2023 citaron la complejidad de gestionar múltiples herramientas y API como su desafío número uno al implementar aplicaciones en entornos de múltiples nubes. La aplicación de políticas de seguridad consistentes y la optimización del rendimiento de las aplicaciones quedaron en un cercano segundo lugar.

Figura 1: Principales desafíos de implementar aplicaciones en un entorno multicloud (fuente: Informe sobre el estado de la estrategia de aplicação de 2023).

Por qué la seguridad de la API es fundamental para sus resultados finales

Las API no solo son los componentes básicos de las aplicações modernas, sino que también son el núcleo del negocio digital: el 58 % de las organizaciones encuestadas en el informe F5 2023 afirman que obtienen al menos la mitad de sus ingresos de los servicios digitales. Las API permiten la comunicación entre usuarios y aplicaciones y entre aplicaciones, y el acceso que brindan a datos privados de clientes e información corporativa interna las convierte en objetivos lucrativos para los atacantes. Las API fueron el vector de ataque preferido en 2022.

La protección de las API es primordial en una estrategia de seguridad de aplicação . Los ataques pueden tener consecuencias devastadoras que van mucho más allá de la violación de la privacidad del consumidor (por muy malo que sea eso), hasta llegar a un mayor nivel de gravedad que daña la seguridad pública y conduce a la pérdida de propiedad intelectual. A continuación se muestran algunos ejemplos de cada uno de estos tipos de ataques de API que ocurrieron en 2022.

  • Privacidad del consumidor : Twitter sufrió un ataque de API que duró varios años. En diciembre de 2022, piratas informáticos robaron los datos de perfil y las direcciones de correo electrónico de 200 millones de usuarios de Twitter . Cuatro meses antes, los investigadores de CloudSEK descubrieron 3.207 aplicações móviles que filtraban claves y secretos de API de Twitter válidos. Y un mes antes, los piratas informáticos habían explotado una vulnerabilidad de la API para confiscar y vender datos de 5,4 millones de usuarios .
  • Seguridad pública : un equipo de investigadores encontró vulnerabilidades críticas en la seguridad de las API en aproximadamente 20 de los principales fabricantes de automóviles, incluidos Toyota, Mercedes y BMW . Hoy en día, muchos automóviles actúan como dispositivos inteligentes y los piratas informáticos pueden ir mucho más allá de robar números de identificación del vehículo (VIN) e información personal de los propietarios de los automóviles. Pueden rastrear la ubicación de los vehículos y controlar el sistema de gestión remota, lo que les permite desbloquear y arrancar el vehículo o desactivarlo por completo.
  • Propiedad intelectual : Un empleado de CircleCI , una plataforma CI/CD utilizada por más de un millón de desarrolladores en todo el mundo para enviar código, fue víctima de un ataque de malware. Este empleado tenía privilegios para generar tokens de acceso a producción y, como resultado, los piratas informáticos pudieron robar las claves API y los secretos de los clientes. La violación pasó desapercibida durante casi tres semanas. Al no poder determinar si los secretos de un cliente fueron robados y utilizados para acceso no autorizado a sistemas de terceros, CircleCI solo pudo recomendar a los clientes que rotaran los tokens de API personales y de proyecto.

Estos ataques a las API sirven como advertencia. Cuando las API tienen vulnerabilidades de seguridad y quedan desprotegidas, las consecuencias a largo plazo pueden ir mucho más allá de los costos monetarios. No se puede exagerar la importancia de la seguridad de la API.

Cómo F5 NGINX le ayuda a proteger sus API

La solución NGINX API Connectivity Stack le ayuda a gestionar sus puertas de enlace de API y API en entornos de múltiples nubes. Al implementar NGINX Plus como su puerta de enlace de API con NGINX App Protect WAF , puede ayudar a prevenir y mitigar las vulnerabilidades de API comunes que abordan los tres principales desafíos de API identificados en el Informe sobre el estado de la estrategia de aplicação de F5 2023 (administrar la complejidad de API en entornos de múltiples nubes, garantizar políticas de seguridad y optimizar el rendimiento de las aplicaciones), así como los tipos de ataques de API analizados en la sección anterior. NGINX Plus se puede utilizar de varias maneras, incluso como puerta de enlace de API donde puede enrutar solicitudes de API rápidamente, autenticar y autorizar clientes de API para proteger sus API y limitar el tráfico para proteger sus servicios basados en API contra sobrecargas.

NGINX Plus brinda protección lista para usar no solo contra las 10 principales vulnerabilidades de seguridad de la API de OWASP . También verifica cookies, JSON y XML malformados, valida los tipos de archivos permitidos y los códigos de estado de respuesta, y detecta técnicas de evasión utilizadas para enmascarar ataques. Una puerta de enlace API NGINX Plus garantiza la protección de los protocolos API HTTP o HTTP/2, incluidos REST, GraphQL y gRPC.

NGINX App Protect WAF proporciona seguridad de API y aplicaciones liviana y de alto rendimiento que va más allá de la protección básica contra OWASP API Security Top 10 y OWASP (Aplicação) Top 10 , con protección contra más de 7500 firmas avanzadas, firmas de bots y campañas de amenazas. Permite una estrategia de desplazamiento a la izquierda y una fácil automatización de la seguridad de la API para integrar la seguridad como código en los procesos de CI/CD. En pruebas con AWS, Azure y Cloudflare WAF, se descubrió que NGINX App Protect WAF ofrece una sólida seguridad de aplicaciones y API y, al mismo tiempo, mantiene un mejor rendimiento y una menor latencia. Para obtener más detalles, consulte este informe de GigaOm .  

NGINX App Protect WAF está integrado en la puerta de enlace API NGINX Plus, lo que da como resultado un salto menos para el tráfico API. Menos saltos entre capas reducen la latencia, la complejidad y los puntos de falla. Esto está en marcado contraste con las soluciones de gestión de API típicas que no se integran con un WAF (se debe implementar el WAF por separado y, una vez configurado, el tráfico de API debe atravesar el WAF y la puerta de enlace de API por separado). La estrecha integración de NGINX significa alto rendimiento sin comprometer la seguridad.

GraphQL y gRPC están en auge

Los desarrolladores de aplicaciones y API buscan constantemente nuevas formas de aumentar la flexibilidad, la velocidad y la facilidad de uso e implementación. Según el Informe sobre el estado de la API de 2022 de Postman, REST sigue siendo el protocolo de API más utilizado en la actualidad (89%), pero GraphQL (28%) y gRPC (11%) continúan creciendo en popularidad. En última instancia, la elección del protocolo API depende en gran medida del propósito de la aplicação y de la mejor solución para su negocio. Cada protocolo tiene sus propios beneficios.

¿Por qué utilizar las API de GraphQL?

Los beneficios clave de usar las API de GraphQL incluyen:

  • Adaptabilidad – El cliente decide la solicitud, el tipo y el formato de los datos.
  • Eficiencia : no hay sobrebúsqueda, las solicitudes se ejecutan contra un esquema creado y los datos devueltos son exactamente (y únicamente) los que se solicitaron. El formato de los datos en la solicitud y la respuesta es idéntico, lo que hace que las API GraphQL sean rápidas, predecibles y fáciles de escalar.
  • Flexibilidad : admite más de una docena de idiomas y plataformas.

GitHub es un usuario conocido de GraphQL. Hicieron el cambio a GraphQL en 2016 por razones de escalabilidad y flexibilidad.

¿Por qué utilizar las API de gRPC?

Los principales beneficios de utilizar las API de gRPC incluyen:

  • Rendimiento : el formato de datos liviano y compacto minimiza las demandas de recursos y permite una rápida codificación y decodificación de mensajes.
  • Eficiente : el formato de datos protobufs agiliza la comunicación al serializar datos estructurados.
  • Confiabilidad: se requieren HTTP/2 y TLS/SSL, lo que mejora la seguridad de forma predeterminada.

La mayor parte de la energía proviene del lado del cliente, mientras que la administración y los cálculos se descargan a un servidor remoto que aloja el recurso. gRPC es adecuado para casos de uso que necesitan rutinariamente una cantidad determinada de datos o procesamiento, como el tráfico entre microservicios o la recopilación de datos en los que el solicitante (como un dispositivo IoT) necesita conservar recursos limitados.

Netflix es un ejemplo de un usuario conocido de las API de gRPC.

Proteja sus API GraphQL con NGINX App Protect WAF

NGINX App Protect WAF ahora admite las API GraphQL además de las API REST y gRPC. Protege las API GraphQL aplicando firmas de ataque, eliminando exploits maliciosos y defendiéndose contra ataques. El tráfico GraphQL se analiza de forma nativa, lo que permite que NGINX App Protect WAF detecte violaciones basadas en la sintaxis y el perfil de GraphQL y aplique firmas de ataque. La visibilidad de las consultas de introspección permite que NGINX App Protect WAF las bloquee, así como también bloquee patrones detectados en las respuestas. Este método ayuda a detectar ataques y ejecutar firmas en los segmentos apropiados de una carga útil y, al hacerlo, ayuda a reducir los falsos positivos.
 
Descubra cómo NGINX App Protect WAF puede defender sus API GraphQL de ataques en esta demostración.

Beneficios de la seguridad de la API GraphQL con NGINX App Protect WAF:

  • Definir parámetros de seguridad : establezca de acuerdo con la política de su organización la longitud total y el valor de los parámetros en la plantilla GraphQL y el perfil de contenido como parte de la política de seguridad de la aplicación.
  • Reducir los falsos positivos : mejore la precisión de la prevención de ataques con controles granulares para una mejor detección de ataques en una solicitud GraphQL
  • Alivie las vulnerabilidades maliciosas : defina el máximo de consultas por lotes en una solicitud HTTP para reducir el riesgo de ataques y explotación maliciosa.
  • Eliminar ataques DoS : configure la profundidad máxima de la estructura en los perfiles de contenido para detener los ataques DoS causados por consultas recursivas
  • Limite la exposición al riesgo de la API : aplique restricciones en las consultas de introspección para evitar que los piratas informáticos comprendan la estructura de la API, lo que puede provocar una infracción.

API de transmisión bidireccional de gRPC seguras con NGINX App Protect WAF

NGINX App Protect WAF ahora admite la transmisión bidireccional de gRPC además de los tipos de mensajes unarios, lo que le permite proteger las API basadas en gRPC que usan flujos de mensajes (cliente, servidor o ambos). Esto proporciona seguridad completa para las API de gRPC independientemente del tipo de comunicación.

NGINX App Protect WAF protege las API de gRPC al aplicar su esquema, establecer límites de tamaño, bloquear archivos desconocidos y prevenir ataques DoS que agotan los recursos. Puede importar su archivo de lenguaje de definición de interfaz (IDL) a NGINX App Protect WAF para que pueda aplicar la estructura y el esquema de sus mensajes gRPC y buscar ataques en los lugares correctos. Esto permite una detección precisa de intentos de explotar su aplicação a través de gRPC y evita falsos positivos que pueden ocurrir al escanear en busca de seguridad en lugares equivocados sin contexto.

Descubra cómo NGINX App Protect WAF puede defender sus API bidireccionales gRPC de ataques en esta demostración.

Beneficios de la seguridad de la API de gRPC con NGINX App Protect WAF:

  • Protección gRPC integral : desde transmisión unitaria hasta bidireccional, seguridad completa independientemente del tipo de comunicación
  • Reducir los falsos positivos : mayor precisión gracias a la aplicación de la estructura y el esquema de mensajes de gRPC, para una mejor detección de ataques en una solicitud de gRPC
  • Bloquear exploits maliciosos : cumplimiento de que cada campo en el mensaje gRPC tenga el tipo correcto y el contenido esperado, con la capacidad de bloquear campos desconocidos
  • Eliminar ataques DoS : límites de tamaño de mensajes para evitar ataques DoS que agotan los recursos

Tanto los equipos de SecOps como los de desarrollo de API pueden gestionar y automatizar la seguridad de la API

En el Informe sobre el estado de la API de 2022 de Postman, el 20 % de los 37 000 desarrolladores y profesionales de API encuestados afirmaron que los incidentes de API ocurren al menos una vez al mes en su organización, lo que resulta en pérdida de datos, pérdida de servicio, abuso o acceso inapropiado. Por el contrario, el 52% de los encuestados sufrieron un ataque de API menos de una vez al año, lo que subraya la importancia de incorporar la seguridad de manera temprana como parte de una estrategia de cambio a la izquierda para la seguridad de API. Como las API se publican con mayor frecuencia que las aplicações, cada vez se aplica más una estrategia de desplazamiento a la izquierda en lo que respecta a la seguridad de las API. Cuando las organizaciones adoptan una cultura de cambio a la izquierda e integran la seguridad como código en los procesos de CI/CD, incorporan seguridad en cada etapa del desarrollo de API, permiten que los desarrolladores se mantengan ágiles y aceleran la velocidad de implementación.

Diagrama que muestra cómo desplazarse a la izquierda usando la seguridad como código con NGINX App Protect WAF, Jenkins y Ansible
Figura 2: NGINX App Protect WAF permite la integración de seguridad de API en canales CI/CD para una protección automatizada que abarca todo el ciclo de vida de la API.

Un área clave donde la protección debe ser específica de la API es la validación de los esquemas de API, incluidos los archivos IDL de gRPC y las consultas GraphQL. Los esquemas son únicos para cada API y cambian con cada versión de API. Al automatizar el esquema de API, cada vez que actualiza una API también necesita actualizar la configuración y el código en ese archivo. Las configuraciones de WAF se pueden implementar de forma automatizada para mantenerse al día con los cambios de versión de API. NGINX App Protect WAF puede validar esquemas y verificar que las solicitudes cumplan con lo que admite la API (métodos, puntos finales, parámetros, etc.). NGINX App Protect WAF permite una seguridad de aplicaciones consistente con políticas declarativas que pueden ser creadas por equipos de SecOps, con equipos de desarrollo de API capaces de administrar e implementar la seguridad de API para un control granular . Si busca automatizar la seguridad de su API a escala en entornos híbridos y multicloud, NGINX App Protect WAF puede ayudarlo.

resumen

Las carteras de aplicaciones modernas siguen creciendo y, con el uso de microservicios, se produce una proliferación aún mayor de API. La seguridad de las API es compleja y desafiante, especialmente para las organizaciones que operan en entornos híbridos o de múltiples nubes. La falta de seguridad de la API puede tener efectos devastadores a largo plazo más allá de los costos monetarios. NGINX App Protect WAF brinda seguridad de API integral que incluye protección para sus API REST, GraphQL y gRPC y ayuda a sus equipos de SecOps y API a cambiar a la izquierda y automatizar la seguridad durante todo el ciclo de vida de la API y en entornos distribuidos.

Pruebe NGINX App Protect WAF hoy con una prueba gratuita de 30 días.

Recursos adicionales

Blog: Proteja su API Gateway con NGINX App Protect WAF
Libro electrónico: Seguridad de API y aplicaciones modernas
Libro electrónico: Dominando la arquitectura API de O'Reilly
Ficha de datos: NGINX APP PROTECT WAF


"Esta publicación de blog puede hacer referencia a productos que ya no están disponibles o que ya no reciben soporte. Para obtener la información más actualizada sobre los productos y soluciones F5 NGINX disponibles, explore nuestra familia de productos NGINX . NGINX ahora es parte de F5. Todos los enlaces anteriores de NGINX.com redirigirán a contenido similar de NGINX en F5.com.