Riesgos y recomendaciones de seguridad de la API

1 de septiembre de 2020 | Blog Riesgos y recomendaciones de seguridad de la API


amenaza a la seguridad de las API

Los expertos advierten a los profesionales de la seguridad sobre la próxima gran amenaza que azota el mundo cibernético: los ataques a las interfaces de programación de aplicaciones (API) . Las API mejoran el rendimiento de los sistemas integrando los servicios de otros sitios web. Algunas API populares son Google Maps, YouTube y Twitter, que permiten a los creadores de sitios web insertar mapas, vídeos de YouTube o tweets en sus páginas. A medida que estas herramientas se han popularizado, los hackers han encontrado maneras de explotarlas para cometer fraudes y robar datos.

Los diez principales riesgos de la API de OWASP

A medida que los hackers centran su atención en el hackeo de APIs, estas representan un riesgo para las empresas que las utilizan en sus sitios web. Nuestros colaboradores de OWASP han codificado los principales riesgos de seguridad relacionados con las API:

  1. Autorización de nivel de objeto roto. El único propósito de una API es proporcionar acceso remoto a los datos. En algunas API, se deben configurar permisos para evitar que un usuario acceda a los datos de otro. Esto se logra mediante la Autorización a Nivel de Objeto. Asegúrese de que sus API restrinjan el acceso a los usuarios adecuados para reducir este riesgo. Por ejemplo, una API de comercio electrónico simple podría mostrar las ventas de su tienda. Una Autorización a Nivel de Objeto correctamente realizada evita que otros propietarios de tiendas consulten las ventas de su tienda. 
  2. Autenticación de usuario rota. Los mecanismos de autenticación a menudo se implementan incorrectamente, lo que permite a los atacantes comprometer los tokens de autenticación o explotar fallas de implementación para asumir las identidades de otros usuarios de manera temporal o permanente. Comprometer la capacidad de un sistema para identificar al cliente / usuario compromete la seguridad de la API en general.
  3. Exposición excesiva de datos. Los desarrolladores suelen exponer involuntariamente conjuntos de datos de API. Aplique el principio del mínimo privilegio para reducir la posibilidad de exposición de datos confidenciales. En nuestro ejemplo de comercio electrónico, permita que la tienda A solo acceda a sus datos y que la tienda B solo acceda a sus datos. 
  4. Falta de restricciones de consultas y limitación de velocidad. Las API no imponen restricciones sobre el tamaño ni la cantidad de recursos que puede solicitar el cliente/usuario. Esto no solo puede afectar el rendimiento del servidor API, sino que también puede... Denegación de servicio (DoS), pero también permite ataques de autenticación como un ataque de fuerza bruta sobre credenciales. 
  5. Autorización de nivel de función rota. Políticas de control de acceso complejas con diferentes grupos y roles, y una separación incorrecta de las funciones administrativas y regulares. Estos errores de API son fallos de autorización. Al explotar estos problemas, los atacantes obtienen acceso a los recursos o funciones administrativas de otros usuarios.
  6. Asignación masiva. Las API, por diseño, exponen a los usuarios las funciones subyacentes de acceso a datos. Deben restringir todas las solicitudes de datos a un conjunto específico de llamadas a funciones. Esto reduce el riesgo de modificación o acceso inapropiado a objetos simplemente adivinando sus propiedades, explorando otros puntos finales de la API, consultando la documentación o proporcionando propiedades adicionales en las cargas útiles de las solicitudes.
  7. Configuración incorrecta de seguridad. Una configuración de seguridad incorrecta suele deberse a configuraciones predeterminadas inseguras, incompletas o ad hoc, almacenamiento en la nube abierto, encabezados HTTP mal configurados, métodos HTTP innecesarios, uso compartido de recursos entre orígenes (CORS) permisivo y mensajes de error extensos con información confidencial. Por ejemplo, un error de inicio de sesión web no debe revelar si el nombre de usuario está presente en el sitio web.
  8. Inyección. Los defectos de inyección, como SQL, NoSQL, inyección de comandos, etc., ocurren cuando se envían datos no confiables a un intérprete como parte de un comando o consulta. Los datos maliciosos del atacante pueden engañar al intérprete para que ejecute comandos no deseados o acceda a los datos sin la autorización adecuada.
  9. Gestión inadecuada de activos. Las API suelen exponer más endpoints que las aplicaciones web tradicionales, por lo que contar con documentación adecuada y actualizada es fundamental. Una documentación rigurosa de todas las implementaciones y versiones de las API permite realizar inventarios válidos. Cuando se detectan y solucionan errores o vulnerabilidades en la API, el inventario ayuda a garantizar que todo esté actualizado. 
  10. Registro y monitoreo insuficientes. Un registro y una monitorización insuficientes, junto con la falta o ineficacia de la integración con la respuesta a incidentes, generan numerosos problemas. Esto permite a los atacantes explotar sistemas, configurar y mantener la persistencia, reorientar sus ataques para atacar más sistemas y extraer o destruir datos. La mayoría de los estudios de vulnerabilidades demuestran que el tiempo de detección de una vulnerabilidad supera los 200 días, y generalmente es detectado por terceros en lugar de por procesos o monitorización internos.

Requisitos de seguridad

Con el aumento en la adopción de API, se incrementan los ataques de hackers dirigidos a ellas. Los expertos recomiendan que los diseñadores y desarrolladores implementen los siguientes requisitos de seguridad al trabajar con aplicaciones que involucran API: 

Visibilidad

El conocimiento es poder es fundamental cuando se trata de la visibilidad de las API. Los desarrolladores y usuarios de aplicaciones necesitan saber qué API se publican, cómo y cuándo se actualizan, quién accede a ellas y cómo se accede a ellas. Comprender el alcance del uso de las API es el primer paso para protegerlas.

Control de acceso

El acceso a las API suele estar poco controlado, lo que provoca exposiciones no deseadas. Garantizar que el conjunto correcto de usuarios tenga los permisos de acceso adecuados para cada API es un requisito de seguridad fundamental que debe coordinarse con los sistemas de Gestión de Identidad y Acceso (IAM).

Mitigación de bot

En algunos entornos, hasta el 90 % del tráfico de la aplicación (inicio de sesión/registro de cuenta, pago en el carrito de compra) es generado por bots automatizados. Comprender y gestionar los perfiles de tráfico, incluyendo la diferenciación entre bots beneficiosos y dañinos, es necesario para prevenir ataques automatizados sin bloquear el tráfico legítimo. Entre las medidas complementarias eficaces se incluyen la implementación de listas blancas, listas negras, políticas de limitación de velocidad, CAPTCHA, así como geofencing específico para cada caso de uso y los endpoints de API correspondientes.

Prevención de vulnerabilidades

Las API simplifican los procesos de ataque al eliminar el formulario web o la aplicación móvil, lo que permite a un atacante explotar con mayor facilidad una vulnerabilidad específica. Proteger los endpoints de las API del abuso de la lógica de negocio y otras vulnerabilidades es un requisito clave para la mitigación de la seguridad de las API.

Prevención de pérdida de datos

Prevenir la pérdida de datos sobre las API expuestas para usuarios con privilegios apropiados o de otro modo, ya sea debido a errores de programación o brechas de control de seguridad, también es un requisito de seguridad crítico. Muchos ataques de API están diseñados específicamente para obtener acceso a datos críticos disponibles desde servidores y sistemas de back-end.

Moving Forward

Es importante mantenerse al día con las herramientas y el software que usa con frecuencia y asegurarse de conocer todas las nuevas vulnerabilidades de los sistemas. Suscribirse a un boletín informativo sobre ciberseguridad puede ayudarle a estar al tanto de estas amenazas emergentes. Consulte los boletines de CyberHoot y regístrese para recibir actualizaciones mensuales gratuitas. Ser consciente de las amenazas de seguridad a las que se enfrenta es el primer paso para proteger sus sistemas.

CyberHoot es una excelente empresa con la que colaborar, ya que ofrecemos cientos de programas de capacitación que incluyen conceptos básicos de ciberseguridad. CyberHoot puede capacitar a los usuarios en cualquier tema, desde conceptos básicos de ciberseguridad hasta riesgos de aplicaciones OWASP y capacitación avanzada en Microsoft Excel. Conéctate con nosotros contactándonos. ventas@cyberhoot.com, o programar una reunión en https://Calendly.com/CyberHoot.

Para obtener más información sobre la seguridad de API, mire este breve video de 2 minutos:

Fuentes: 

ThreatPost

HelpNetSeguridad

Lecturas adicionales: 

Los diez principales riesgos de seguridad de OWASP

Apple anima a los desarrolladores a utilizar la nueva API App Attest de iOS 14 para protegerse de las amenazas de seguridad.

Últimos Blogs

Manténgase actualizado con lo último información de seguridad

Descubra y comparta las últimas tendencias, consejos y mejores prácticas en ciberseguridad, junto con nuevas amenazas a las que debe prestar atención.

MDM corporativo: La aplicación de trabajo falsa que quería leer tus mensajes de texto

MDM corporativo: La aplicación de trabajo falsa que quería leer tus mensajes de texto

Autora: Katie Boquetti | Editorial: Craig Taylor Editorial de Craig Taylor: Lo sabemos desde hace tiempo...

LEER MÁS
Los programas falsos de ChatGPT están propagando malware. Aquí te explicamos cómo detectarlos.

Los programas falsos de ChatGPT están propagando malware. Aquí te explicamos cómo detectarlos.

Autora: Katie Boquetti | Editorial: Craig Taylor Editorial de Craig Taylor: Un CAPTCHA debería comprobar si...

LEER MÁS
Suplantación de identidad mediante consentimiento OAuth: proteja sus permisos, no solo su contraseña.

Suplantación de identidad mediante consentimiento OAuth: proteja sus permisos, no solo su contraseña.

Autora: Katie Boquetti | Editorial: Craig Taylor Editorial de Craig Taylor: Tengo la suerte de tener...

LEER MÁS