A recente divulgação de violação de dados pela T-Mobile destaca os desafios do crescente “oeste selvagem” da segurança de aplicativos — APIs. Um indivíduo (ou grupo) conseguiu coletar dados pessoais de mais de 30 milhões de clientes por meio do uso (ou abuso) de uma API, desviando informações diariamente por mais de um mês antes da detecção.
No momento em que este artigo foi escrito, não havia muitos detalhes específicos sobre como ou por que a API foi abusada neste caso (por exemplo, abuso de função, autorização de nível de objeto quebrado, exposição excessiva de dados) ou como a violação foi finalmente realizada. Apenas examinando os números, em média, dados de 902.000 clientes foram removidos por meio dessa API por dia, sem acionar nenhum limite de limitação de taxa, anomalias comportamentais de séries temporais, etc. Ou talvez fossem, mas não com o nível de ameaça apropriado para serem rapidamente identificados e terem ações de mitigação tomadas pelas equipes de operações — tem as características de um ataque baixo e lento.
Violações como essa nos dão a oportunidade de pensar sobre o quão difundidas as APIs são, o quão críticas elas são para as organizações hoje em dia e o papel único que elas podem desempenhar na segurança (ou insegurança) de qualquer aplicativo e, portanto, de uma organização inteira. Em uma análise de violações nos últimos anos, a F5 Labs notou que, na maioria dos cenários em que os incidentes estão relacionados a APIs, o método de violação é tecnicamente muito simples e afeta endpoints de API públicos e mal protegidos.
Segurança, quando se trata de APIs, é mais fácil falar do que fazer (pelo menos quando bem feita). Com a onda de dados de eventos de segurança de aplicativos sendo gerados para o número crescente de aplicativos e endpoints monitorados pela maioria das organizações atualmente, parece uma tarefa impossível ficar por dentro de tudo.
No entanto, há três elementos principais que esse ataque destaca especificamente em relação à segurança de API, dos quais todas as organizações podem aprender ao priorizar tecnologias e serviços que oferecem:
Visibilidade e descoberta da API. Neste caso, não está claro se esta API específica era conhecida ou estava sendo monitorada ativamente. Segurança positiva, contando com APIs desenvolvidas com segurança e bem documentadas com funcionalidade de aplicação de esquema, é essencial, mas é apenas metade da equação. É provável que a maioria das organizações não tenha controle sobre todas as APIs em execução em seu ambiente, portanto, ser capaz de aprender e mapear constantemente as APIs que ainda não estão documentadas em todos os caminhos de comunicação de um aplicativo é de suma importância. A tecnologia de descoberta permite que as organizações mapeiem todo o seu cenário de APIs, expondo APIs desconhecidas/ocultas, APIs abandonadas ou zumbis para bloquear/remover e quaisquer APIs "boas" desconhecidas que devem ser consideradas para governança, fornecendo uma supervisão mais abrangente.
Saber que uma API existe e ter recursos de controle de acesso são duas peças essenciais para o quebra-cabeça de segurança da API. Em nosso Relatório de Estratégia de Estado de Aplicação de 2022 , 68% dos entrevistados classificaram a autenticação e a autorização como os componentes mais valiosos da segurança de API, seguidos não muito atrás pela Análise Comportamental e Detecção de Anomalias para monitorar APIs, identificando e alertando sobre comportamento anormal e abuso potencial, uma vez que há muitas maneiras pelas quais os criminosos podem facilmente ignorar a autenticação e a autorização. Nesse cenário, algo nos dados transmitidos entre a API e o cliente deve ter sido incomum. Ser capaz de rastrear o comportamento da API ao longo do tempo, uma vez em produção, geralmente incluiria análise de solicitações de API e detecção de anomalias de séries temporais para criar atributos comportamentais básicos que seriam usados para identificar anomalias em taxas de solicitação, erros, latência, rendimento, etc. Com essa funcionalidade, um elemento de alerta é essencial para levantar problemas quando ocorrem picos ou quedas inesperados, padrões de tráfego exclusivos estão presentes ou solicitações de API anormais são detectadas.
Completar uma pilha de segurança de API moderna requer um mecanismo de aplicação de segurança de API e aplicativo em linha , provavelmente incluindo um WAF com várias camadas de funcionalidade de segurança de aplicativo, como aplicação de política L7 granular com limitação de taxa, reputação de IP, funcionalidade de lista de permissões/negações e DoS L7 com recursos para investigar e agir mais profundamente em endpoints, usuários e outras atividades maliciosas. Isso permite que as equipes de operações identifiquem de forma rápida e fácil suspeitas de abuso de API à medida que anomalias são detectadas e criem políticas para impedir esse uso indevido, protegendo melhor as APIs e os endpoints de aplicativos ao longo do tempo, conforme eles evoluem e o comportamento muda.
Certamente, mais informações surgirão com o passar do tempo e conforme descobrirmos o que exatamente aconteceu durante essa violação específica, mas é fundamental que as organizações aproveitem esses três elementos para avaliar e desenvolver melhor um plano para proteger seus aplicativos e endpoints de API contra abusos como esse.
Este relatório “Insegurança de API” da Forrester destaca os desafios crescentes com o desenvolvimento de aplicativos modernos e a segurança de API, fornecendo dicas sobre como implementar a segurança como parte dos fluxos de trabalho de desenvolvimento de aplicativos modernos e API.