¿Necesita Cloud Computing? Empiece ahora

Prácticas recomendadas de seguridad de API basadas en REST

Abigail Ojeda headshot

escrito por

Abigail Ojeda

November 15, 2023

Abigail Ojeda headshot

escrito por

Abigail Ojeda

Abigail Ojeda es la directora de Marketing de Productos de Akamai.

Investigar de forma proactiva el uso de las API basadas en REST y detectar los intentos de abuso, incluso aunque estos no consigan lograr sus objetivos, le ayudará a identificar cuáles son los puntos débiles de sus prácticas de seguridad que se aplican a este tipo de API.

¿Qué es una API basada en REST?

El estilo de la arquitectura de software de transferencia de estado representacional (REST) se remonta a una tesis doctoral del año 2000 del informático Roy Fielding. En las décadas transcurridas desde entonces, las API basadas en REST, a veces denominadas API RESTful, han evolucionado hasta convertirse en un modelo de arquitectura de API muy conocido para aplicaciones web y móviles, así como para aplicaciones de empresa a empresa y sistemas internos de las organizaciones.

Si bien otros sistemas de API (como SOAP, GraphQL y gRPC) también se utilizan en muchas aplicaciones, las API basadas en REST son las más habituales, principalmente debido a su fácil implementación. Diseñar API basadas en REST es un proceso muy sencillo para los marcos de front-end modernos, lo que las convierte en una opción idónea para aplicaciones web, aplicaciones móviles y otras muchas implementaciones de API internas y de empresa a empresa.

5 mejores prácticas recomendadas que se aplican a la seguridad de las API basadas en REST

Aunque estas API se pueden implementar de forma muy segura y flexible, existen una serie de estándares de seguridad de API básicos que resultan fundamentales en cualquier implementación. 

Los cinco principales métodos de integración de la seguridad en un diseño de API basada en REST son:

  1. Utilizar en todo momento el cifrado TLS.

  2. Implementar un modelo de autenticación y autorización sólido y adaptable.

  3. No incluir información confidencial en las URL.

  4. Definir explícitamente las solicitudes y respuestas de API RESTful permitidas.

  5. Aplicar funciones de detección continua de API.

Utilizar en todo momento el cifrado TLS.

Al igual que ocurre con otros tipos de tráfico HTTP confidencial, al usar TLS para las API RESTful se garantizará el cifrado de toda la comunicación que se produzca entre el cliente de la API y el terminal de esta. Esto es importante no solo para la seguridad de las API basadas en REST sino también para la seguridad de las aplicaciones web, ya que el tráfico HTTP generado contiene información de autenticación confidencial, como contraseñas, claves de API o tokens.

Implementar un modelo de autenticación y autorización sólido y adaptable.

Se pueden utilizar muchas técnicas distintas a la hora de gestionar el acceso a las API basadas en REST. Las más utilizadas son las claves y los tokens de seguridad de API. Sin embargo, la gestión de estos elementos puede resultar bastante compleja.

En ocasiones, provoca vulnerabilidades de seguridad de API basadas en REST involuntarias. Para mitigar este riesgo, integre un proveedor de gestión de identidades compatible con OAuth 2.0para la autenticación y emisión de los tokens de acceso. También se puede utilizar un gateway de API centralizada para estandarizar y proteger su enfoque de seguridad de API basada en REST.

No incluir información confidencial en las URL.

Un defecto que se suele cometer al diseñar las API basadas en REST es la inclusión de información confidencial, como credenciales de usuario, claves o tokens, en las URL. Incluso cuando se usa el método TLS, los atacantes pueden seguir detectando fácilmente esta información. Los distintos servidores y dispositivos de red también suelen registrar las URL en la ruta de datos de la solicitud de API, lo que provoca una mayor filtración de datos si las URL incluyen información confidencial.

Definir explícitamente las solicitudes y respuestas de API RESTful permitidas.

Es importante asumir que los atacantes intentarán utilizar las API para finalidades maliciosas o mal intencionadas. Por lo tanto, es importante no confiar de forma implícita en las solicitudes de API RESTful. Uno de los pasos más importantes que se debe llevar a cabo es verificar atributos como el formato, la longitud y el tipo de cualquier parámetro u objeto.

También debe regular de forma estricta los tipos de respuestas que puede proporcionar la API basada en REST. Por ejemplo, las respuestas se deben limitar a tipos de contenido permitidos explícitamente, como GET, PUT y POST.

Aplicar funciones de detección continua de API.

Incluso las empresas que cumplen las prácticas recomendadas que se aplican a la seguridad de una API basada en REST pueden verse sorprendidas por aquellas API en la sombra que no se hayan implementado siguiendo los procesos normales, o bien por las API zombis que hayan quedado olvidadas en una infraestructura heredada que aún no se haya retirado. Por lo tanto, resulta imprescindible implementar funciones de detección de API continuas en toda la empresa.

La mejor manera de garantizar que haya un inventario completo para todas las API consiste en recopilar datos de todas las fuentes de información de actividad de API disponibles, entre ellas: 

  • Gateways de API

  • Redes de distribución de contenido

  • Registros de proveedores de servicios en la nube

  • Sistemas de gestión de registros

  • Herramientas de orquestación

Al buscar en estos datos pruebas de la actividad de las API, su equipo de seguridad podrá conocer todas las API que se utilizan en la empresa. Cualquier API basada en REST inesperada que se detecte puede retirarse o incorporarse a un inventario formalizado donde se aplicarán las prácticas recomendadas de API basadas REST que correspondan.

4 prácticas recomendadas de seguridad avanzadas de API basadas en REST

La implementación de un conjunto de estándares de seguridad básicos en el diseño de la API basada en REST es un primer paso esencial, pero estos pasos por sí solos no mantendrán protegidas completamente a sus aplicaciones. Muchos atacantes han conseguido desarrollar técnicas avanzadas para eludir las medidas de seguridad de las API basadas en RESTful base. Al fin y al cabo, no todos los ataques de seguridad de API basada en REST tienen como objetivo infringir la infraestructura de aplicaciones web.

En muchos casos, el objetivo es simplemente utilizar la funcionalidad de la API de formas no deseadas para acceder a datos confidenciales y conseguir una ventaja competitiva. Estas actividades pueden proceder de fuentes de confianza, como clientes o partners a los que se ha otorgado acceso a las API basadas en REST. Las credenciales, las claves y los tokens también pueden ser robados o secuestrados, lo que permite a los atacantes realizar actividades similares sin tener en cuenta los estándares de seguridad de la API basada en REST base.

Para proporcionar un nivel de protección adicional contra estos métodos más sofisticados de abuso de API, puede utilizar las cuatro prácticas recomendadas que se aplican a la seguridad de las API basadas en REST avanzadas:

  1. Utilice la nube para recopilar grandes conjuntos de datos de seguridad de API basada en REST

  2. Aplique el análisis de comportamiento a los datos de las API basadas en REST

  3. Proporcione información sobre el uso de las API basadas en REST a los equipos de desarrollo y operaciones

  4. Realice actividades proactivas de búsqueda de amenazas de API basadas en REST

Utilice la nube para recopilar grandes conjuntos de datos de seguridad de API basada en REST

Muchas de las técnicas de seguridad de API de primera generación se aplican a nivel local. Como consecuencia, se limitan a analizar periodos de actividad muy breves, tras lo cual los datos de las API se descartan. Esto no es de gran utilidad, ya que muchos tipos de abuso de API se llevan a cabo de forma lenta y silenciosa durante semanas, o incluso meses. El envío a la nube de los datos sobre la actividad de las API ofrece la solución adecuada para almacenar datos de API de un mes o un de un periodo superior, lo que abre la puerta a técnicas de análisis más sofisticadas.

Aplique el análisis de comportamiento a los datos de las API basadas en REST

Cuando se cuente con una cantidad significativa de información sobre la actividad de la API basada en REST, también podrá aprovechar la escala informática de la nube para realizar análisis de comportamiento. La primera forma en que esto permite mejorar su estrategia de seguridad de API basada en REST es mediante la identificación de las entidades implicadas, para que disponga de más contexto. Las entidades pueden incluir usuarios, así como procesos de negocio significativos.

Cuando este sea su caso, puede establecer patrones de uso normales para sus API para, a partir de ahí, realizar análisis adicionales con el fin de encontrar anomalías. Este tipo de detección de anomalías es la mejor manera de detectar el abuso, sobre todo cuando procede de usuarios autenticados.

Proporcione información sobre el uso de las API basadas en REST a los equipos de desarrollo y operaciones

Una de las mejores formas de proteger a su organización frente a las vulnerabilidades de seguridad de las API basadas en REST es evitarlas totalmente. Compartir información sobre el uso, y el uso indebido, de las API RESTful con los desarrolladores y el personal de operaciones ayudará a su organización a detectar de forma más rápida, con mejores prácticas de seguridad de API basadas en REST en las primeras fases de los procesos de desarrollo e implementación.

Realice actividades proactivas de búsqueda de amenazas de API basadas en REST

Es importante no esperar hasta que el abuso de API basada en REST se convierta en un incidente de seguridad muy grave para actuar. Investigar de forma proactiva el uso de las API basadas en REST y detectar los intentos de abuso, incluso aunque estos no consigan lograr sus objetivos, le ayudará a identificar cuáles son los puntos débiles de sus prácticas de seguridad que se aplican a este tipo de API. 

El examen de la actividad de uso de las API también es una forma eficaz de descubrir la presencia de vulnerabilidades de la seguridad de las API basadas en REST, como las descritas en 10 principales riesgos de seguridad de API de la Open Web Application Security Project (OWASP). Encontrar y eliminar las vulnerabilidades antes de que los atacantes puedan aprovecharlas es uno de los métodos más eficaces de mejorar su estrategia de seguridad de API basadas en REST.

¿Preparado para empezar?

Akamai ayuda a algunas de las organizaciones más conocidas del mundo a implementar prácticas recomendadas, tanto básicas como avanzadas, que se aplican a la seguridad de las API basadas en REST. Desde la detección de API, pasando por el análisis de comportamiento y hasta la búsqueda gestionada de amenazas,nuestro enfoque le ayudará a fortalecer su estrategia de seguridad que se aplica a las API basadas en REST.

Más información

¿Desea obtener más información? Conozca la solución API Security de Akamai.



Abigail Ojeda headshot

escrito por

Abigail Ojeda

November 15, 2023

Abigail Ojeda headshot

escrito por

Abigail Ojeda

Abigail Ojeda es la directora de Marketing de Productos de Akamai.