Seguridad en las API: Los principales riesgos de 2023
Seguridad en las API: Los principales riesgos de 2023

Seguridad en las API: Los principales riesgos de 2023

Las APIs son una parte fundamental de las aplicaciones web, SaaS y móviles modernas. Su uso se extiende desde bancos, comercio minorista y transporte hasta IoT, vehículos autónomos y ciudades inteligentes. Sin embargo, debido a que exponen la lógica de la aplicación y datos confidenciales como la información de identificación personal (PII), las APIs han convertido en un objetivo para los atacantes.

Para abordar estos riesgos, el OWASP API Security Top 10 de 2023 se presenta junto con el OWASP Mobile Top 10 y el OWASP Serverless Top 10, enfocándose en estrategias y soluciones para comprender y mitigar las vulnerabilidades únicas de las interfaces de programación de aplicaciones.

API1:2023 – Autorización de nivel de objeto rota

Las APIs tienden a exponer puntos finales que manejan identificadores de objetos, creando una amplia superficie de ataque relacionada con problemas de control de acceso a nivel de objeto. Las verificaciones de autorización a nivel de objeto deben considerarse en cada función que acceda a una fuente de datos utilizando una ID del usuario.

API2:2023 – Autenticación rota

Los mecanismos de autenticación suelen implementarse incorrectamente, lo que permite a los atacantes comprometer tokens de autenticación o explotar fallas de implementación para asumir las identidades de otros usuarios temporal o permanentemente. Comprometer la capacidad de un sistema para identificar al cliente/usuario compromete la seguridad general de la API.

API3:2023 – Autorización de nivel de propiedad de objetos rota

Esta categoría combina API3:2019 Exposición excesiva de datos y API6:2019 – Asignación masiva, centrándose en la causa raíz: la falta o validación incorrecta de autorización a nivel de propiedad del objeto. Esto conduce a la exposición o manipulación de información por parte de personas no autorizadas.

API4:2023 – Consumo de recursos sin restricciones

Satisfacer las solicitudes de la API requiere recursos como el ancho de banda, la CPU, la memoria y el almacenamiento. Los proveedores de servicios ponen a disposición otros recursos como correos electrónicos/SMS/llamadas telefónicas o validación biométrica a través de integraciones API y se pagan por solicitud. Los ataques exitosos pueden conducir a una denegación de servicio o un aumento de los costos operativos.

API5:2023 – Autorización de nivel de función rota

Las políticas de control de acceso complejas con diferentes jerarquías, grupos y roles, y una separación poco clara entre funciones administrativas y regulares, tienden a generar fallas de autorización. Al explotar estos problemas, los atacantes pueden obtener acceso a recursos y/o funciones administrativas de otros usuarios.

API6:2023 – Acceso sin restricciones a flujos comerciales confidenciales

Las APIs vulnerables a este riesgo exponen un flujo comercial, como comprar un boleto o publicar un comentario, sin compensar cómo la funcionalidad podría dañar el negocio si se usa excesivamente de manera automatizada. Esto no necesariamente proviene de errores de implementación.

API7:2023 – Falsificación de solicitud del lado del servidor

Las fallas de falsificación de solicitud del lado del servidor (SSRF) pueden ocurrir cuando una API obtiene un recurso remoto sin validar el URI proporcionado por el usuario. Esto permite que un atacante coaccione a la aplicación para que envíe una solicitud manipulada a un destino inesperado, incluso si está protegido por un firewall o una VPN.

API8:2023 – Configuración incorrecta de seguridad

Las APIs y los sistemas que las respaldan suelen contener configuraciones complejas destinadas a hacerlas más personalizables. Los ingenieros de software y DevOps pueden pasar por alto estas configuraciones o no seguir las mejores prácticas de seguridad en lo que respecta a la configuración, lo que abre la puerta a diferentes tipos de ataques.

API9:2023 – Gestión de inventario inadecuada

Las APIs tienden a exponer más puntos finales que las aplicaciones web tradicionales, lo que hace que la documentación adecuada y actualizada sea muy importante. Un inventario adecuado de hosts y versiones de API implementadas también es importante para mitigar problemas como versiones de API en desuso y puntos finales de depuración expuestos.

API10:2023 – Consumo no seguro de API

Los desarrolladores tienden a confiar más en los datos recibidos de las APIs de terceros que en las entradas de los usuarios, por lo que tienden a adoptar estándares de seguridad más débiles. Para comprometer las APIs, los atacantes buscan servicios integrados de terceros en lugar de intentar comprometer la API de destino directamente.