API Security – Seguridad en la Era de las Interacciones

API Managment

API Security – Seguridad en la Era de las Interacciones
25/08/2019
Las formas en que las empresas atraen interactúan y sirven a los clientes han cambiado profundamente en los últimos años. Los canales tradicionales dedicados dieron paso a una combinación de canales discretos aumentados por sitios web y aplicaciones, que a su vez evolucionaron hacia el panorama actual, en el que los clientes esperan que los canales, ya sean físicos o digitales, se combinen en una experiencia cohesiva conectada.

Las interfaces de programación de aplicaciones (API) hacen posibles estas conexiones, y los enfoques de desarrollo API-first han ayudado a las empresas a no solo habilitar experiencias de clientes conectados, sino también a participar en ecosistemas de software que pueden abarcar miles de millones de usuarios y proporcionar oportunidades para economías de escala sin precedentes. Sin embargo, la popularidad de las API y las diversas formas en que las empresas las aprovechan están atrayendo a hackers y malos actores. A medida que las oportunidades comerciales dependen cada vez más de las conexiones digitales, cada punto de interacción se convierte en una fuente potencial de apalancamiento comercial y una fuente potencial de riesgo.

Las técnicas de seguridad del “jardín amurallado” (walled garden )  en las que las empresas han dependido durante mucho tiempo ya no ofrecen protección suficiente. Las aplicaciones web que alimentan experiencias conectadas pueden implicar la conexión de servicios a través de múltiples nubes o el ensamblaje de software de múltiples compañías en un todo coherente. El concepto de un perímetro de red simplemente ya no se aplica.

El creciente número de infracciones relacionadas con API no seguras ha despertado a muchos líderes empresariales y de TI a tomar en serio los riesgos asociado.

El problema no es intrínsecamente con las API, sino cómo las empresas deben administrar las API, de modo que permita experiencias de clientes conectados y mantenga a esos clientes y sus datos seguros. Cada conexión digital, es decir, cada API, necesita ser administrada y asegurada sin comprometer la flexibilidad que permite a los desarrolladores construir experiencias conectadas para empezar.

El desafío es mantener un entorno de “no confianza” que reconoce las amenazas podría provenir de cualquier interacción y al mismo tiempo permite que las interacciones ocurran con poca fricción.

Debido a que las API impulsan prácticamente todas las interacciones, la capacidad de una empresa para habilitar, beneficiarse y proteger las experiencias conectadas depende en gran medida de su capacidad para crear, administrar y proteger las API. 

API y el aumento del mandato de la experiencia conectada

No hace mucho tiempo, cuando una persona deseaba pagarle a un amigo o prestarle dinero a alguien, esa persona entregaba el efectivo en persona, escribía un cheque o tal vez entraba en una sucursal bancaria para organizar una transferencia. El mundo digital ha cambiado todo eso. Hace unos años, la gente comenzó a usar sitios web y aplicaciones de forma rutinaria para enviar dinero sin intercambiar ninguna moneda física, y hoy, millones de usuarios ni siquiera tienen que iniciar sesión en una aplicación adicional o abrir un sitio web para hacer el trabajo, ya que con frecuencia pueden enviar dinero sin abandonar las experiencias digitales en las que ya están comprometidos, como los servicios de mensajería.

Esta evolución dramática y rápida en la forma en que las personas comparten dinero es solo un ejemplo de un fenómeno mucho más grande: las experiencias conectadas.

Desde mercados digitales y plataformas de contenido hasta hogares inteligentes y dispositivos portátiles, en prácticamente todas las industrias, las experiencias conectadas están redefiniendo cómo los clientes interactúan con las empresas, cómo las empresas deben interactuar con los clientes y cómo ambos deben protegerse de las amenazas en un paisaje construido a través de conexiones globales en lugar de dentro de firewalls corporativos.

A los clientes no les importa si una empresa tiene un sitio web, una aplicación o ambos, les importa obtener lo que necesitan, cuando lo necesitan, sin esfuerzo. Si un consumidor comienza a ver su programa favorito en la televisión, luego salta en la parte trasera de su auto compartido, espera poder retomar el programa donde lo dejó en su dispositivo móvil. Los clientes desean consumir productos y servicios de la manera que les resulte conveniente, ya sea a través de una interacción con un empleado de la tienda, un quiosco, un navegador, una aplicación móvil, un dispositivo doméstico conectado, un asistente virtual, una interfaz de voz o alguna combinación fluida de todos ellos.

Las API habilitan estas conexiones.

Las API permiten a las empresas expresar partes de sus negocios como software que los desarrolladores pueden aprovechar para obtener experiencias y productos digitales.

Cuando alguien solicita entradas para el cine a través de un asistente de voz, esa transacción solo es posible porque el asistente de voz puede llamar a las API que expresan capacidades como la búsqueda en el horario, la búsqueda de ubicación y la aprobación de la transacción. Independientemente de si un desarrollador está familiarizada con la tecnología subyacente, como el lenguaje utilizado para codificar la capacidad, todavía puede usar una API para aprovechar la capacidad y combinarla con otras API para crear nuevas experiencias conectadas.

Cuando las empresas usan API para compartir sus activos digitales para beneficio mutuo, también pueden permitir la creación de ecosistemas de software, desarrolladores y clientes. Pocas empresas tienen los recursos o la experiencia para poseer todos los aspectos de todas las experiencias conectadas en las que pueden confiar sus negocios, especialmente a medida que esas experiencias se han vuelto más descentralizadas.

Los ecosistemas permiten a las empresas aumentar sus fortalezas patentadas y expandir su exposición a los usuarios a través de asociaciones, utilizando API para extender los activos a los nuevos usuarios a un costo marginal prácticamente nulo.

Los ecosistemas más elaborados a menudo giran en torno a negocios de plataformas “gravitacionales”, como Android, iOS, varios mercados en línea y muchas redes sociales y servicios de productividad en el lugar de trabajo. Estas empresas proporcionan infraestructura tecnológica que media las interacciones entre proveedores de bienes y servicios y consumidores de bienes y servicios. Las interacciones impulsan estos ecosistemas y las experiencias conectadas y los modelos comerciales que dependen de ellos, y esas interacciones son impulsadas por las API.

En consecuencia, permitir experiencias conectadas, participar en los ecosistemas que los clientes valoran y proteger tanto a los clientes como a la empresa son, en gran parte, cuestiones de gestión, apalancamiento y seguridad de las API.

Aunque las nuevas oportunidades comerciales que las API permiten son emocionantes para los líderes empresariales (al igual que las experiencias conectadas que las API permiten son convincentes para los consumidores), estos cambios fundamentales en la forma en que se construyen las experiencias de los usuarios también han cambiado la imagen de seguridad empresarial.

Las API se pueden aprovechar para crear una capa de seguridad sólida, pero solo si las empresas la ejecutan bien.

De la seguridad en el perímetro a la seguridad en cada interacción

Años antes de las aplicaciones móviles, el flujo de datos para crear una experiencia digital era muy sencillo:

un navegador llamaba a un  sitio web adjunto a una base de datos. En este enfoque para el desarrollo de aplicaciones, el perímetro de la red sirvió como protección, creando un “jardín amurallado” alrededor de los datos con un solo acceso de mediación “protector”. Específicamente, las credenciales se intercambiaron por una galleta, y la galleta permaneció dentro del jardín amurallado.

Muchas partes activas de Internet aún dependen en gran medida de esta estructura, pero las aplicaciones web rápidamente se volvieron más complicadas. Los desarrolladores comenzaron a aprovechar los componentes reutilizables, todos implementados en el mismo contenedor, en sus aplicaciones. Se introdujeron conceptos como sesiones fijas para ayudar a gestionar la escala. Los niveles web y de datos escalables de forma independiente permitieron nuevas experiencias digitales más inmersivas. Pero el paradigma de seguridad se mantuvo esencialmente igual: una dependencia del perímetro de la red.

Hoy, la situación es significativamente diferente. Las técnicas de desarrollo de aplicaciones heredadas generalmente no pueden soportar las experiencias que los clientes demandan, y los enfoques modernos para el desarrollo de aplicaciones (y la agilidad y la riqueza de características que estos enfoques permiten) no admiten fácilmente los métodos de seguridad obsoletos.

Las aplicaciones modernas se componen de muchas piezas conectadas a través de API. La interfaz de usuario está separada de la lógica empresarial. Los componentes dentro de la experiencia del usuario se ejecutan como servicios desplegables de forma independiente, algunos originados dentro de la empresa y otros alojados en otro lugar.

Las aplicaciones se crean de manera diferente y se consumen de manera diferente, lo que brinda experiencias más ricas y un desarrollo más rápido y con mayor capacidad de respuesta, pero también evita muchos enfoques de seguridad heredados.

Muchas empresas están invirtiendo en microservicios, por ejemplo, para permitir un desarrollo de aplicaciones más rápido y eficiente. Pero mientras que en los modelos tradicionales, las aplicaciones se implementan en servidores de aplicaciones, en una arquitectura basada en microservicios, los servidores se implementan en la aplicación.

Una consecuencia es que las tareas previamente manejadas por el servidor de aplicaciones, como autenticación, autorización y administración de sesiones, se transfieren a cada microservicio. Si una empresa tiene miles de esos microservicios que alimentan sus aplicaciones en varias nubes, ¿cómo pueden sus líderes de TI comenzar a pensar en un perímetro?

La experiencia final del cliente se basa en las interacciones entre numerosos componentes, y cada uno necesita ser asegurado.

Cuando un usuario solicita un servicio de viaje compartido, por ejemplo, muchos servicios se combinan a través de API para la experiencia final: servicios para identificar la ubicación del usuario y relacionarlo con los controladores cercanos, servicios para llamar al perfil del usuario e información del cliente, servicios para permitir al usuario para comprar un viaje, servicios para trazar rutas, etc. Algunos de estos servicios se originan dentro del negocio de viajes compartidos y otros son servicios externos que el negocio de viajes compartidos aprovecha a través de ecosistemas digitales. Para el usuario final, estos servicios deben producir una experiencia fluida, con seguridad robusta y baja fricción en cada punto del proceso. Asegurar de manera efectiva todas estas interacciones es, en muchos sentidos, un ejercicio para moverse fuera del perímetro de la red para administrar y proteger las API donde sea que se encuentren.

Del mismo modo, las agencias gubernamentales y las grandes corporaciones han expuesto de manera similar sus sistemas, incluidos los datos de los clientes en muchos casos, debido a API mal administradas. Es peligroso cuando incluso las credenciales de un solo usuario se ven comprometidas, como podría suceder en el caso de un ataque de phishing, y puede ser exponencialmente peor si una API mal configurada compromete los datos de millones.

Históricamente, muchas empresas aplicaban la administración y la seguridad solo a un subconjunto de API, por ejemplo, aquellas compartidas con socios internos y alojadas detrás del firewall corporativo (dentro de un jardín amurallado, por ejemplo). Pero debido a que los perímetros de red ya no contienen las experiencias que impulsan los negocios, las empresas deberían pensar en cada API como un posible punto de influencia comercial y un posible punto de vulnerabilidad. Todas las API deben administrarse y protegerse, independientemente de dónde se encuentren: no hay jardines ni cortafuegos, solo miles de millones de interacciones que deben protegerse.

La Seguridad de APIs  es parte de nuestro servicio de Programa de APIs empresarial 

Si deseas tener más información , escríbenos a [email protected]

https://www.prodigio.tech/2019/12/10/owasp-api-security-top-10/