Como começar a entender a superfície de ataque da sua API

Os invasores estão visando APIs com grande sucesso. Veja como começar a avaliar sua superfície de ataque de API e minimizar seu risco

Author Photo
9:24 am - 15 de julho de 2022

Vivemos em um mundo de computação em nuvem, dispositivos móveis e microsserviços. Quase todos os aplicativos com os quais interagimos são alimentados por APIs, geralmente muitas, especialmente ao lidar com os principais provedores de serviços em nuvem (CSPs), aplicativos móveis e ambientes de microsserviços. Isso torna as APIs uma parte crítica da superfície de ataque de uma organização.

A Akamai estima que cerca de 83% do tráfego da Internet é baseado em API. Outros estudos, como os da Salt Security, afirmam que os ataques à API aumentaram mais de 600% de 2021 a 2022, e o Gartner prevê que 90% dos aplicativos habilitados para a Web terão superfícies de ataque mais amplas devido às APIs expostas. O último estudo da Imperva afirma que as APIs vulneráveis estão custando às organizações entre US$ 40 e US$ 70 bilhões anualmente.

Outra parte crítica da superfície de ataque da API em expansão é a adoção de Kubernetes e microsserviços. Um estudo descobriu recentemente mais de 380.000 servidores API Kubernetes expostos, o que é preocupante, já que o servidor de API Kubernetes é um componente central do plano de controle para implantações de contêiner. Dito isso, muito pouca atenção é dada à segurança da API, apesar da realidade de que as APIs atuam como a cola que alimenta o ecossistema digital moderno.

As APIs são usadas para acessar e consultar dados, bem como realizar atividades como enriquecimento e modificações de dados como parte dos processos. Isso significa que as próprias APIs devem ser protegidas, assim como os dados que passam por elas.

Essa realidade enfatiza a necessidade de práticas recomendadas de segurança de aplicativos e dados ao trabalhar com APIs. Assim como em muitas outras áreas de tecnologia, a maioria das organizações luta com a simples tarefa de fazer um inventário de suas APIs. Isso significa que a maioria não tem visibilidade de quais APIs elas têm, interagem e são relevantes para sua superfície de ataque.

Organizações como Resurface Labs e Traceable AI começaram a atacar esse problema, mas muito mais trabalho precisa ser feito. É aqui que as organizações devem começar a entender sua superfície de ataque de API e suas possíveis vulnerabilidades.

Como começar a avaliar a superfície de ataque da API

A segurança da API pode ser uma tarefa assustadora para organizações que estão começando, principalmente para grandes empresas com inventários de API extensos. Dito isso, práticas e metodologias sólidas podem ser adotadas para lidar com esse vetor de ataque em grande parte não endereçado. A abordagem requer uma combinação de governança, segurança de infraestrutura e práticas recomendadas em nível de aplicativo para reduzir o risco organizacional.

Um ótimo lugar para começar, além de fazer um inventário das APIs organizacionais existentes, é identificar e entender as preocupações mais comuns de segurança da API. Felizmente, a sempre valiosa comunidade OWASP produziu a lista ‘Security Top 10’ de API. Isso inclui itens como objeto quebrado e autorização/autenticação do usuário, exposição excessiva de dados e falta de limitação de taxa.

A autorização de nível de objeto quebrado é uma construção de nível de código que garante que os usuários tenham acesso apenas aos objetos que eles estão autorizados a acessar. Isso volta ao conceito sempre presente de controle de acesso menos privilegiado, que também é predominante na busca por confiança zero.

A autenticação de usuário quebrada se manifesta em várias formas, incluindo mecanismos de autenticação fracos, a presença de informações de autenticação confidenciais em URLs e preenchimento de credenciais, em que atores mal-intencionados usaram informações de autenticação obtidas para tentar repetidamente explorar interfaces de autenticação. Lidar com essas vulnerabilidades envolve entender os fluxos de autenticação, mecanismos e usar padrões baseados no setor para autenticação.

A exposição excessiva de dados é um problema muito comum. Quando se trata de APIs, essa vulnerabilidade geralmente ocorre quando uma API retorna dados confidenciais em resposta a atividades do usuário que ela não deveria ter exposto. As organizações podem resolver essas vulnerabilidades validando os dados que as respostas da API contêm e garantindo que dados confidenciais não sejam contidos inadvertidamente. As organizações também devem implementar mecanismos de validação de resposta para garantir que dados confidenciais não sejam expostos.

A falta de controles de limitação de taxa está mais ligada ao impacto da disponibilidade dos sistemas do que a um comprometimento da confidencialidade ou integridade, conforme mencionado com algumas das outras vulnerabilidades comuns líderes. Dado que as APIs geralmente funcionam como a cola que une microsserviços modernos, nuvens e aplicativos móveis, todos usados para agregar valor aos clientes e gerar receita, impactar a disponibilidade é uma preocupação significativa. A interrupção dos negócios pode significar perda de receita ou confiança do cliente. Se você estiver no setor público ou na segurança nacional, isso pode ter um impacto nos serviços cívicos críticos e na segurança nacional.

Esses problemas podem parecer óbvios para o profissional de segurança experiente, pois os ataques de autenticação, autorização e negação de serviço (DoS) são comuns. Dito isso, quando você considera algumas das métricas fornecidas anteriormente em relação à prevalência de APIs nas organizações e na Internet, juntamente com a taxa crescente de ataques contra APIs de agentes mal-intencionados, o risco potencial aumenta.

APIs permitem movimento lateral

Dado que as APIs geralmente servem como porta de entrada para aplicativos e ambientes digitais, os ataques contra APIs costumam ser usados para se mover lateralmente entre os sistemas. As APIs podem servir um vetor de ataque inicial e, em seguida, serem usadas para acessar sistemas, cargas de trabalho e dados subjacentes. Isso torna a proteção delas exponencialmente importante. Os principais vetores de ataque para APIs incluem autenticação e autorização em nível de objeto e usuário. Portanto, os atores mal-intencionados não estão atrás das APIs em si, mas dos dados aos quais eles têm acesso e transporte, bem como os sistemas subjacentes aos quais costumam estar à frente.

Mais foco na segurança da API

Embora muitos dos vetores de ataque possam não parecer exclusivos das APIs, eles se tornam muito preocupantes quando você os combina com a presença generalizada de APIs no ecossistema digital moderno. Felizmente, várias tendências estão surgindo, incluindo o aumento do investimento em startups e produtos de segurança de API, mais orientação sobre segurança de API e uma maior conscientização do setor sobre o quão problemáticas as APIs inseguras podem ser.

Se as APIs se tornaram os laços que unem o ecossistema digital moderno, é imperativo, como indústria, garantir que esses laços sejam sólidos e que não tenhamos um ecossistema limitado por chicletes e cordões de sapato. Embora o modelo legado de segurança baseada em perímetro possa ter caído no esquecimento, as APIs ainda servem como uma entrada crítica e ponto de articulação para sistemas modernos. Isso inclui não apenas sistemas voltados para o exterior, mas também sistemas de comunicação interna.

Também estamos vendo esforços para proteger a cadeia de suprimentos de software. Essa cadeia é unida por meio de APIs como o principal método de comunicação entre sistemas orientados por software. Isso aponta a segurança da API como um componente central do ecossistema mais amplo da cadeia de suprimentos de software que também garante segurança e rigor.

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.