Hable acerca de la seguridad de API

b5cc84fafd82cce3ca1b23e97fa5741b.png

El estado actual de la seguridad de las API

Con el rápido desarrollo de Internet y la madurez de la tecnología, las personas han comenzado a prestar atención a los problemas técnicos de seguridad mientras disfrutan de la comodidad que brinda la tecnología.

En los últimos años, el mercado de aplicaciones se ha convertido en el favorito de las principales empresas de plataformas de Internet. Facebook, Twitter, Sina Weibo, la cuenta oficial de WeChat, Douyin, etc. han utilizado este modelo, es decir, para establecer una cooperación entre la plataforma y terceros. -Parte desarrolladores Un mecanismo de ganar-ganar, el lado de la plataforma permite a terceros llamar datos para desarrollar aplicaciones e implementarlas en la plataforma, enriqueciendo así el contenido de la plataforma y aumentando la permanencia del usuario, mientras que el tercero realiza el drenaje y la monetización por proporcionar contenido o programas de alta calidad. Aunque la interacción de múltiples productos enriquece los escenarios de uso de los usuarios y la facilidad de uso, también crea peligros ocultos para la protección de la privacidad.

Salt Security es una empresa de seguridad de API que proporciona una plataforma de protección de API para evitar ataques que utiliza el aprendizaje automático y la inteligencia artificial para identificar y proteger las API de forma automática y continua.

Según los datos de la encuesta de seguridad API 2022 de Salt Security, entre más de 250 encuestados:

  • El 95% dijo que había experimentado un incidente de seguridad de API en los últimos 12 meses;

  • Solo el 11% de los encuestados dijeron que estaban usando una estrategia de seguridad de API que incluía pruebas y protección de API dedicadas;

  • Cuando se les preguntó cuál era su mayor preocupación sobre los planes API de su empresa, el 40 % de los encuestados destacó las infracciones de seguridad como su principal preocupación;

  • El 40 % de los encuestados tiene problemas con las API que cambian al menos semanalmente, y el 9 % dice que sus API cambian a diario.

De acuerdo con las estadísticas relevantes de los clientes de Salt, el 94 % de los ataques de API ocurren en API autenticadas. A partir de las entrevistas anteriores y los comentarios de los datos de los clientes, la gran mayoría de las empresas han experimentado incidentes de seguridad de API, pero solo el 11 % de las empresas tiene una estrategia de seguridad de API que incluye pruebas y protección de API dedicadas.

Por lo tanto, para una empresa, ¿qué nivel de defensa de seguridad debe construir para defenderse de la mayoría de los ataques de seguridad?

La pregunta anterior no es un problema que solo existió después de Internet, sino que en los miles de años de historia de la guerra humana, varios países han estado explorando y practicando diversas estrategias de defensa y fortificaciones. Estas experiencias e ideas también son aplicables al campo de la seguridad de la red. Por ejemplo: WAF es para las murallas de la ciudad, la autenticación de identidad es para los símbolos de los soldados y el honeypot es para que los botes de paja tomen prestadas flechas.

Entre estas estrategias de guerra, la defensa en profundidad es una de las formas efectivas.

a1db8e46107a2d7091382bc85f035315.png

que es defensa en profundidad

Defense-in-Depth (DiD) es una línea de defensa de seguridad tridimensional multicapa, cuyo principio de funcionamiento es proporcionar diferentes tipos de protección en cada línea de defensa, para convertirse en el mejor medio para prevenir ataques. . Estas líneas de defensa pueden prevenir diferentes tipos de problemas de seguridad y cubrir múltiples dominios en todas las direcciones.

En la actualidad, la defensa en profundidad se puede dividir aproximadamente en las siguientes tres líneas diferentes de defensa en términos de profundidad.

97f9b521f253aa85d999645c5e6bb408.png

  Perímetro

La defensa fronteriza es el tipo de defensa más básico y común. Casi todas las empresas invertirán en defensa fronteriza, como WAF. Defiéndase contra métodos de ataque conocidos y vulnerabilidades de seguridad a través de expresiones regulares, listas negras de IP, etc.

La mayoría de los llamados ataques son iniciados por "script kiddies". No tienen capacidades técnicas sólidas ni pensamiento de pirata informático, y solo pueden realizar ataques tentativos a objetivos en lotes a través de algunos scripts y herramientas. En este momento, la defensa fronteriza bien puede resistir estos ataques indiscriminados .

Aunque desde un punto de vista técnico, WAF no tiene un contenido técnico particularmente alto, pero siempre ha sido uno de los métodos de defensa necesarios y se despliega en la capa más externa de defensa.

Además de WAF, existen algunas herramientas de defensa de seguridad específicamente para Bots. El uso de bots para llevar a cabo ataques de "relleno de credenciales" es un medio común para robar activos digitales de alto valor, como cuentas. El método de ataque general consiste principalmente en comprar información de inicio de sesión de correo electrónico o contraseña filtrada y luego iniciar sesión en otros sitios web en lotes. En este caso, la forma más efectiva de defenderse es identificar el Bot y luego interceptar todas las solicitudes realizadas por el Bot.

El principio básico de la intercepción de bots es que el dispositivo está conectado en serie entre el servidor y el extremo de acceso en forma de intermediario. Cuando el servidor devuelve una página de respuesta, el dispositivo inserta JavaScript en la página devuelta, requiriendo el extremo de acceso ( navegador o herramienta de piratas informáticos) para ejecutar JS Y calcular el Token relevante y colocarlo en la cookie y devolverlo. Después de recibir el Token, el dispositivo juzgará si la otra parte es una herramienta de piratería y tomará las medidas correspondientes.

Estos productos también pueden cifrar contenido específico en la página, como la URL o el contenido del formulario en la página. Teóricamente hablando, este nivel de encriptación no debería ser difícil para un entusiasta de la criptografía de "voluntad firme" (porque no se ha implementado un mecanismo perfecto de establecimiento de claves entre el cliente y el servidor), pero contra esas herramientas de penetración hábiles los usuarios son suficientes.

En una arquitectura de servidor empresarial convencional, los componentes como WAF, la puerta de enlace SSL, la puerta de enlace de tráfico y la puerta de enlace API son todos ascendentes y descendentes en serie. Estos componentes pueden implementarse por separado o combinarse en un componente básico unificado.

En el nivel de puerta de enlace API, tomamos Apache APISIX como ejemplo. APISIX también proporciona algunas capacidades comunes en la defensa fronteriza, como la lista negra y la lista blanca de IP, el motor de reglas WAF, la inyección de fallas, el tráfico y el límite de velocidad, etc. Cuando se combinan estas capacidades, la puerta de enlace se puede utilizar para bloquear la mayoría de los ataques de seguridad indiscriminados.

5b0407598483f586719697196ae869dd.png

  para observar

En el campo de la seguridad, lo más aterrador no es que se haya descubierto un incidente de seguridad, sino que nunca se haya descubierto un incidente de seguridad. Esto último significa que su negocio puede haberse visto comprometido muchas veces sin darse cuenta.

Percibir los riesgos de seguridad y poder realizar una observación continua es el paso más importante para combatir los " ataques intencionales ". Después de que los piratas informáticos rompan la defensa perimetral más externa, necesitamos capacidades de observación para identificar el tráfico de ataques maliciosos potenciales.

A nivel de observación y defensa, los métodos comunes incluyen honeypots, IDS, NTA, NDR, APT (Advanced Persistent Threat), detección avanzada de amenazas persistentes, inteligencia de amenazas, etc.

Entre ellos, el honeypot es uno de los métodos con más historia, tiende trampas para los atacantes maliciosos imitando algunos objetivos de alto valor, y luego analiza el comportamiento del ataque e incluso localiza a los atacantes. Sin embargo, la detección APT y algunos métodos de aprendizaje automático no son fáciles de evaluar intuitivamente. Porque en un entorno de producción real, el efecto del aprendizaje automático no será muy bueno, porque en términos de seguridad, el aprendizaje automático seguirá provocando falsos positivos.

Por lo tanto, para la mayoría de los usuarios empresariales, es suficiente hacer un buen trabajo en la recopilación y el análisis de registros, el seguimiento del comportamiento y las pruebas electrónicas, y la detección oportuna de comportamientos anormales en este nivel.

Volviendo al nivel de puerta de enlace API, APISIX puede hacer más cosas desde la perspectiva de la observabilidad.

En primer lugar, puede realizar datos de registro y estadísticas como Rastreo, Registro y Métricas.Al ubicar cada solicitud, puede rastrear la fuente, registrar registros para ajustar las políticas de seguridad y marcar el tráfico o los parámetros anormales. En APISIX, otros componentes de observabilidad, como SkyWalking y Datadog, están conectados principalmente en los protocolos de cuatro y siete capas.

En segundo lugar, los honeypots y los objetivos de alto valor se pueden simular mediante la disposición de complementos para confundir a los atacantes. Por ejemplo, a través de  workflow complementos APISIX, se puede realizar un control muy preciso a nivel de flujo. Por ejemplo, ejecutar cierto comportamiento cuando la condición A sea verdadera, ejecutar otro comportamiento cuando la condición B sea verdadera, y así sucesivamente. A través de este método más claro, los usuarios pueden programar más convenientemente varios tráficos comerciales en el nivel de la puerta de enlace y responder de manera oportuna.

Por supuesto, la función de duplicación de tráfico también se puede usar para enviar algunas solicitudes a dispositivos de detección de seguridad paralelos o en serie para juicios de seguridad rápidos para bloquear ataques. Digamos algo como detectar ataques ABT, podría ser más lento. Luego, si usa la puerta de enlace para reflejar este tráfico API en un dispositivo seguro para su análisis, y luego importe los datos nuevamente después del análisis.

0baa5058660d6443884683b5d3045d70.png

  identidad

Cuando el atacante atraviesa la doble línea exterior de defensa e ingresa a la red interna, es hora de que la autenticación de identidad y el control de acceso desempeñen un papel.

El escenario de este método de defensa es similar a aquel en el que las personas deslizan sus tarjetas de identificación para ingresar a la estación en aeropuertos y estaciones de tren, o escanean códigos para registrarse en centros comerciales y edificios de oficinas. Sin la correspondiente identidad y autoridad, es imposible ingresar al sistema correspondiente.

Esta capa de defensa refleja principalmente las habilidades de seguridad básicas del negocio de la empresa y también refleja la fortaleza de la tecnología de la información de una empresa. Los sistemas internos de muchas empresas no cuentan con sistemas sólidos de identificación y control de autoridades, debido a que el establecimiento de estos sistemas requiere una inversión continua y de largo plazo.

De la esencia de la seguridad, la tercera línea de defensa es la más importante. Debido al apoyo de la protección fronteriza y la observación de amenazas a la seguridad, está ayudando en gran medida a la tercera línea de defensa. La defensa de la seguridad de las fronteras y las observaciones es el equilibrio de la relación entrada-salida, el equilibrio entre falsos positivos y falsos positivos, por lo que debe haber peces que se deslicen por la red y entren por la puerta del sistema de aplicación de la intranet.

Esta línea de defensa también es donde entran en juego las puertas de enlace API. Tome APISIX como ejemplo, como:

  • Realice el acoplamiento con varios métodos de autenticación de identidad, como JWT y Key Auth;

  • Realice el acoplamiento con varios sistemas de autenticación de identidad como Okta y Auth 2.0;

  • Cifrado TLS y mTLS del tráfico a través de APISIX;

  • Conéctese con servicios de administración de claves como Vault y KMS, y admita la rotación automática de claves;

  • Apoyo secreto nacional.

Si se realizan los ángulos anteriores, la puerta de enlace API puede mejorar el nivel de seguridad de sus campos de API y microservicio.

Las diversas capas de medidas de defensa descritas anteriormente requieren la cooperación de múltiples departamentos y múltiples herramientas para bloquear eficazmente los ataques de seguridad. Por supuesto, estas defensas de varias capas se pueden defender con algunas configuraciones en el nivel de puerta de enlace API.

Entonces, ¿existe una forma más efectiva, la llamada "bala de plata", para resolver todos los problemas de seguridad?

403b52c697c1f2c367324d194aaff23f.png

Política de seguridad De "blanco y negro" a "blanco y negro"

La comunidad de seguridad ha estado pensando en este tema. La mayoría de los métodos de detección y defensa de seguridad son para encontrar una pequeña cantidad de amenazas de seguridad en los datos masivos. Esta operación equivale a encontrar una aguja en un pajar, e inevitablemente habrá falsos positivos y falsos negativos.

Si cambiamos nuestra forma de pensar y cambiamos "encontrar a los malos" por "identificar a los buenos", ¿no será otro pueblo?

Hace más de diez años, algunas empresas de software antivirus comenzaron a hacer ese intento. Su punto de partida fue el siguiente: dado que el sistema Windows y el software de uso común son fijos, agregaremos este software a la lista blanca, y otros pueden ser I identificará los programas uno por uno después de ejecutarlos, ¿el resto no son solo virus? En este caso, cualquier virus nuevo no puede escapar a los ojos del software antivirus. Este plan es bastante idealista, tomó cuatro o cinco años desde la idea hasta la implementación, pero no es un absoluto "blanco y negro", sino una gestión jerárquica.

En el mundo de la seguridad de la red y la seguridad de las API, la mentalidad de "blanco y negro" es aún más aplicable. Por ejemplo, si una empresa proporciona una interfaz API de pago al mundo exterior, se requiere un token para acceder a ella. Si no hay acceso de token o error de token, debe ser una solicitud maliciosa y debe rechazarse directamente.

Idealmente, todas las API deberían tener autenticación y controles de acceso similares, y solo se puede acceder a aquellos que hayan pasado la autenticación. Aunque esto no puede evitar los "fantasmas internos", la ingeniería social y los ataques de día cero, aumentará en gran medida el umbral y la dificultad para los atacantes, hará que el costo de los ataques sea muy alto y hará que los ataques "indiscriminados" sean imposibles.

Para los atacantes, cuando el ROI (relación de entrada-salida) se vuelve irrazonable, inmediatamente girarán sus armas y buscarán otros objetivos que sean fáciles de atacar.

Basado en las ideas básicas de "defensa en profundidad" y "blanco o negro", se ha desarrollado gradualmente un marco de seguridad de "confianza cero", con la esperanza de resolver el problema de la seguridad de la red de una vez por todas.

f26ed264af194f06059bf583773fb7f5.png

¿Es Zero Trust la panacea para la seguridad de las API?

¿Qué es Confianza Cero? La explicación de una oración es: no hay una terminal confiable en el sistema, por lo que es necesario verificar la identidad en todas partes.

Ya sea una solicitud externa o un acceso interno, ya sea una máquina bastión, una máquina trampolín, un teléfono móvil o una PC, ya sea un empleado ordinario, un supervisor o un director general, se supone que se puede violar y no se puede ser confiable y debe pasar la autenticación de identidad para acceder a los Sistemas y API correspondientes.

Además de la molestia de verificar la identidad en todas partes, parece que no hay escapatoria. Entonces, ¿la confianza cero es la característica principal de la ciberseguridad? La respuesta es: No, este tipo de solución es actualmente el status quo de "lo ideal es muy pleno, pero la realidad es muy flaca".

La confianza cero es un marco y una estrategia de seguridad integrales. Desde terminales, BYOD, servidores, API, microservicios, almacenamiento de datos hasta varios servicios y sistemas internos, todo debe transformarse y debe agregarse un sistema de autenticación de identidad estricto y unificado. Puede pensar en la confianza cero como un colchón de aire de seguridad. Una vez que hay una fuga en un lugar, todo el colchón de aire es inútil.

Implementar la confianza cero es difícil. Puede imaginarlo por analogía: en centros de transporte como aeropuertos y trenes de alta velocidad, el costo de agregar equipo de identificación, tiempo y dinero es alto.

En las grandes empresas, generalmente hay cientos de sistemas, decenas de miles de API y microservicios, o cientos de miles de terminales.Los servicios de estas escalas requieren un gran coraje y costo para construir un sistema completo de confianza cero. Por lo tanto, la solución Zero Trust actual está más implementada en el gobierno, la industria militar y algunas grandes empresas.

Por supuesto, eso no quiere decir que las soluciones de confianza cero no sean útiles. Para la mayoría de las empresas, es una opción más sabia construir un sistema de defensa de seguridad con un ROI más alto aprendiendo de la idea de la solución de confianza cero.

En la actualidad, los componentes centrales del sistema de confianza cero incluyen principalmente los siguientes dos tipos:

  • Autenticación de identidad unificada IAM (Administración de identidad y acceso)

  • API Gateway infundido con funciones de seguridad

Cuando hay dos componentes básicos, IAM y puerta de enlace API, se puede promover mejor la implementación de la solución de confianza cero. Al mismo tiempo, con la división de los niveles de seguridad relevantes, el plano de control y el plano de datos se separan en el nivel de puerta de enlace API, se construyen los servicios de identidad y autoridad, y finalmente se realiza una gestión unificada del tráfico.

Sin embargo, debe tenerse en cuenta que las soluciones de confianza cero no son perfectas, y los ataques de día cero y los ataques de ingeniería social aún no son defendibles por las soluciones de confianza cero.

b01c6dfca274315e65527d3bc46cfc2e.png

Resumir

La seguridad es un juego infinito, y los atacantes siempre esperan encontrar más medios de ROI para obtener activos digitales de alto valor o para lograr el propósito de destrucción. Para las empresas al aire libre, cómo evitar las flechas abiertas y ocultas de los atacantes no es suficiente para confiar solo en la defensa. También es necesario mejorar la conciencia de seguridad de los desarrolladores, cambiar la seguridad a la izquierda y minimizar la exposición de las superficies de ataque.

Más recomendaciones de artículos de alta calidad:

Hablando sobre el consejo de renuncia de un empleado de Ali P7

¿Qué es la Web 3.0 de la que oímos hablar con frecuencia?

Una nueva versión de un libro divino con una puntuación de 9,3 en Douban

¿Qué tan bueno es el P10 Bixuan que Ali no puede quedarse?

Supongo que te gusta

Origin blog.csdn.net/u013527895/article/details/127581723
Recomendado
Clasificación