Vulnerabilidades de APIs se tornaram um dos alvos mais visados por agentes cibernéticos maliciosos.
O cenário recente de transformação digital acelerada implica em uma procura maior por serviços e aplicações baseados ou nativos na nuvem. Esse contexto, por sua vez, impulsiona o uso de APIs em organizações dos mais diversos segmentos e tamanhos.
O resultado direto é um aumento significativo das ameaças digitais envolvendo APIs: de acordo com o Relatório sobre o Estado da Segurança de API do Salt Labs, feito pela Salt Security em 2024, incidentes de segurança de API mais do que dobraram entre 2023 e o ano atual. A mesma pesquisa relata que 95% das empresas entrevistadas afirmaram enfrentar problemas na área.
Para especialistas, é palpável o quanto pensar em uma estratégia de API Security é essencial.
Neste artigo, para nos aprofundarmos no tema, vamos apresentar 5 falhas críticas de segurança de APIs que podem ameaçar suas operações. Boa leitura!
OWASP API Security Top 10
Os riscos de APIs que iremos citar ao longo desse texto têm como base a lista “OWASP API Security Top 10”.
A OWASP (Open Web Application Security Project) é uma organização não governamental voltada a ajudar empresas a desenvolver, comprar e manter aplicações e APIs confiáveis. Os documentos que servem de guia para o mercado são construídos com o feedback da comunidade e o parecer de grandes especialistas.
A seguir, confira 5 erros comuns de segurança de APIs, retirados da lista da OWASP e destacados pela Sec4U.
1. Falta de autorização de nível de objeto
Um dos principais riscos de cibersegurança associados às APIs é a vulnerabilidade BOLA (Broken Object-Level Authorization); ela representa cerca de 40% dos ataques à APIs.
Frequentemente, as APIs expõem endpoints que lidam com IDs de objetos, criando uma grande superfície de ataque potencial.
A autorização em nível de objeto é um método de controle de acesso que, geralmente, é implementado no nível do código para verificar a capacidade de um usuário acessar um determinado objeto. Aplicações modernas utilizam uma variedade de sistemas de autorização e controle de acesso intricados e abrangentes.
No entanto, não é incomum que desenvolvedores negligenciem a utilização dessas verificações, mesmo quando uma aplicação inclui uma infraestrutura robusta para tal. Isso resulta em cibercriminosos podendo facilmente explorar endpoints de API que são vulneráveis à autorização em nível de objeto quebrada, manipulando o ID de um objeto enviado em uma solicitação.
Regras de acesso mal definidas ou falhas na lógica de autorização também podem levar a essa vulnerabilidade.
Exfiltração, visualização, modificação e/ou destruição não autorizada de dados são algumas das consequências de falta de autorização em nível de objeto. Também é possível a tomada total de conta.
2. Autenticação de usuário quebrada
Essa é a segunda vulnerabilidade mais frequente de acordo com a OWASP.
A autenticação de usuário quebrada permite que cibercriminosos utilizem técnicas como credential stuffing, tokens de autenticação roubados e ataques de força bruta para obter acesso não autorizado a aplicativos.
A autenticação falha em APIs pode acontecer em decorrência de problemas como:
- Complexidade inadequada de senhas;
- Falta de critérios para bloqueio de contas;
- Tempos de rotação excessivamente longos para senhas e certificados;
- Ou o uso de chaves de API como único método de autenticação.
Através dessas vulnerabilidades, os hackers conseguem controlar contas, acessar ilegalmente dados de usuários e executar ações não autorizadas, como realizar transações financeiras e enviar mensagens pessoais.
3. Exposição excessiva de dados
O excesso de exposição de dados é mais uma vulnerabilidade comum. Apesar de ser simples, ela oferece alto risco de vazamento de informações sensíveis da empresa, da operação e de usuários.
A exploração dessa falha costuma ser realizada através do monitoramento do tráfego investigando as respostas da API, buscando dados sensíveis que não deveriam ser entregues ao usuário.
Como as APIs podem ser usadas como um meio de troca de dados, os engenheiros de back-end podem acabar implementando APIs de maneira genérica, sem considerar a sensibilidade ou a privacidade dos dados.
Utilizando ferramentas de proxy de interceptação, os cibercriminosos conseguem expor as comunicações de rede entre o cliente da API (o código do front-end) e as APIs de back-end. A partir daí, eles podem analisar as respostas da API e procurar dados que são retornados ao usuário, mas que, normalmente, não são exibidos na interface do cliente.
4. Ausência de limites de recursos e taxas
As solicitações de API consomem recursos de back-end, como rede, CPU, memória e armazenamento. No entanto, nem sempre há restrições sobre os recursos que podem ser solicitados pelo cliente ou o usuário.
Sem essas limitações, as APIs tornam-se vulneráveis a diversos tipos de ataques, como negação de serviço (DoS), força bruta, consumo excessivo de recursos, enumeração e preenchimento de credenciais.
Falta de limite de recursos
A ausência de limitação de recursos pode ser explorada através da criação de uma única chamada de API capaz de sobrecarregar uma aplicação, impactando seu desempenho e capacidade de resposta ou fazendo com que ela se torne não responsiva.
A falta de limites de recursos pode deixar o sistema, a aplicação ou a API suscetíveis a ataques de autenticação e ataques de exfiltração de dados.
Falta de limite de taxa
Os hackers exploram a falta de limitação de taxa criando e enviando altos volumes de solicitações de API para sobrecarregar os recursos do sistema, forçar credenciais de login, enumerar rapidamente grandes conjuntos de dados ou exfiltrar grandes quantidades de informações.
5. Configurações de segurança incorretas
Erros assim podem ocorrer a qualquer nível do stack da API, desde o nível da rede até o nível da aplicação. Isso faz com que configurações incorretas de segurança sejam comuns em infraestruturas de APIs.
De forma geral, falhas desse tipo podem revelar informações privadas do usuário e detalhes do sistema que ajudam criminosos a localizar tecnologias exploráveis, resultando em exposição de informações confidenciais e comprometimento do sistema.
Alguns exemplos de configurações de segurança inadequadas são:
- Configurações padrão inseguras;
- Configurações incompletas ou ad-hoc;
- Armazenamento em nuvem aberto;
- Cabeçalhos HTTP incorretos;
- Métodos HTTP desnecessários;
- Compartilhamento de recursos Cross-Origin (CORS) excessivamente permissivo;
- Exposição de informações sensíveis em mensagens de erro.
Como criar uma estratégia eficiente de API Security?
A segurança de APIs é uma preocupação vital para qualquer organização que dependa de aplicações conectadas. Neste artigo, destacamos 5 vulnerabilidades da segurança de API, mas há inúmeras maneiras pelas quais cibercriminosos podem explorar sua operação.
Tecnologias mais tradicionais, no entanto, não são capazes de corrigir esses erros e prover uma proteção robusta. Para isso, é preciso entender mais a fundo o cenário das APIs e implementar práticas recomendadas mais específicas.
Para ajudar você e sua empresa a avançar na prevenção de ataques, a Sec4U está oferecendo um e-book completo de estratégia de Identity API Security.
Clique aqui e garanta o seu!
Acompanhe
nossas redes
Últimos Posts