6 princípios de uma estratégia holística de segurança de APIs

RESUMO EXECUTIVO

Embora a experiência do usuário (UX) seja a face dos seus aplicativos, as APIs são a espinha dorsal da sua organização. Um erro comum cometido por muitas empresas é considerar uma API apenas como a camada de interface sobre um aplicativo. Na realidade, as APIs funcionam como o tecido conjuntivo entre seus aplicativos e ecossistemas de terceiros, que estão cada vez mais distribuídos em arquiteturas híbridas e multicloud. Embora as APIs estejam sujeitas a alguns dos mesmos riscos que os aplicativos web — como exploração de vulnerabilidades, abuso da lógica de negócios e configurações incorretas —, há outros riscos significativos. Entre eles estão ataques que contornam controles frágeis de autenticação e autorização, inventários inadequados e o uso inseguro de APIs de terceiros. O risco aumenta ainda mais devido à velocidade dos negócios digitais, viabilizada por cadeias complexas de fornecimento de software e pipelines automatizados de CI/CD, que podem resultar em APIs desconhecidas, não monitoradas e desprotegidas. Isso inclui especificamente APIs ocultas e zumbis, desconhecidas pelas equipes de segurança e/ou sem manutenção pelas equipes de desenvolvimento. Neste artigo, exploraremos seis princípios de uma abordagem holística e abrangente para a segurança de APIs.

1. Entenda suas APIs e seus endpoints

É bem provável que, mesmo que tentasse, você não conseguisse identificar agora todos os endpoints de API em seu ambiente. Infelizmente, talvez não seja possível dizer o mesmo sobre agentes mal-intencionados. Se um endpoint existe, ele pode ser usado como porta de entrada ou como meio para interromper funções críticas de negócios.

Além disso, expor APIs publicamente significa estar sujeito a receber solicitações de uma infinidade de clientes, parceiros e aplicativos. Essa exposição também deixa sua organização vulnerável a ataques, por isso é fundamental compreender e monitorar as APIs. Há diversos controles de risco que precisam ser considerados para proteger sua organização contra as vulnerabilidades e possíveis ameaças que as APIs podem expor e que podem resultar em violações de segurança e indisponibilidade.

Para qualquer profissional de defesa, a descoberta de APIs é o primeiro passo — e um passo fundamental — para protegê-las. Pode parecer óbvio, mas nada é mais verdadeiro do que o ditado: “não é possível proteger aquilo que não se pode ver”. Ter um inventário completo de APIs é o ponto de partida para desenvolver ou aprimorar qualquer estratégia de segurança de APIs, ajudando você a compreender e quantificar toda a superfície de ameaças das suas APIs. Esse inventário serve como base para:

  • Visibilidade: Ao catalogar todas as APIs disponíveis, você amplia a compreensão do cenário de ameaças às suas APIs, incluindo vulnerabilidades, exposição de dados confidenciais e endpoints não autorizados ou esquecidos.
  • Controle de versões: Manter um inventário facilita o gerenciamento de versões — conhecer o histórico e as diferentes versões das APIs ajuda a descontinuar versões obsoletas ou vulneráveis ou a protegê-las adequadamente.
  • Monitoramento: Um inventário de APIs centralizado e completo permite monitorar e registrar melhor o uso das APIs, facilitando a detecção e a resposta a atividades suspeitas (anomalias) e possíveis eventos de segurança. Além disso, em caso de incidente, um inventário claro pode ajudar na resposta.
  • Controles e políticas de segurança consistentes: Ter essa visibilidade, incluindo um inventário completo de APIs, permite implementar controles e políticas de forma eficaz em toda a superfície de ameaças das suas APIs.

2. Encontre um equilíbrio entre inovação e segurança

É um dilema clássico. Por um lado, a vontade de ousar, ultrapassar limites e fazer o que seus concorrentes não conseguem é um dos pilares de qualquer empresa bem-sucedida. Por outro, manter a segurança nem sempre combina com as inovações mais recentes.

A chave para alcançar esse equilíbrio envolve três aspectos:

  • Elabore uma estratégia de governança de APIs para cada tipo de API, a fim de definir os controles de segurança adequados.
  • Implemente políticas de segurança de APIs que possam ser aplicadas de forma consistente onde quer que as APIs sejam implantadas.
  • Adapte-se a ameaças emergentes, comportamentos anômalos e usuários mal-intencionados que tentam explorar ou usar APIs de forma abusiva, utilizando IA para reduzir a carga sobre as equipes de segurança.

Dependendo do seu setor, os padrões de conformidade podem variar, sendo que alguns exigem medidas de segurança mais rigorosas do que outros. Independentemente disso, é essencial que a postura de segurança das suas APIs seja robusta o suficiente para enfrentar uma ampla gama de vetores de ameaça.

“Dos clientes externos à infraestrutura interna de back-end, cada parte da arquitetura deve contar com suas próprias medidas de proteção.”

3. Gerencie os riscos durante todo o ciclo de vida do desenvolvimento

Os testes de segurança de APIs não devem ser realizados apenas uma vez. É fundamental testar antes, durante e depois da implantação. Ao incorporar os testes a todas as etapas do desenvolvimento, você tem muito mais oportunidades de identificar pontos fracos e vulnerabilidades antes que ocorra uma violação. E, embora as ferramentas específicas para testes de segurança sejam excelentes, não se esqueça também da modelagem de casos de uso de segurança.

A segurança precisa acompanhar o mesmo ciclo de vida contínuo dos próprios aplicativos, o que exige uma integração estreita com pipelines de CI/CD, provisionamento de serviços e ecossistemas de monitoramento de eventos.

4. Aplique camadas de proteção do back-end ao cliente final

Dos clientes externos à infraestrutura interna de back-end, cada parte da arquitetura deve contar com suas próprias medidas de proteção.

Além disso, práticas de segurança comprovadas continuam válidas: arquiteturas de negação por padrão, criptografia robusta e acesso com privilégios mínimos.

Ao pensar em proteção na camada de API, é útil primeiro classificar suas APIs em duas categorias: internas e externas. As APIs internas são mais fáceis de proteger, pois o provedor da API pode coordenar as medidas de segurança com as equipes dos aplicativos. Para APIs externas, a avaliação dos riscos é diferente. Você pode (e deve) implementar proteções no nível da API que cumpram três funções:

  • Reduza as oportunidades de violação de segurança com inteligência de ameaças em tempo real e mecanismos de controle de acesso, como tokens de sessão reforçados.
  • Estabeleça padrões de referência para tráfego normal e anormal.
  • Restrinja o uso de APIs e forneça controle granular sobre agregadores aprovados e integrações de terceiros.

No ambiente de produção, o enorme volume de tráfego decorrente da proliferação de APIs exige o uso de IA para detectar comportamentos anômalos e usuários mal-intencionados.

5. Tenha as estratégias e ferramentas certas

Assim como não existe um único alimento capaz de nos manter plenamente nutridos, não há um único controle de segurança que proteja completamente as APIs. Em vez disso, é preciso desenvolver uma estratégia que utilize um ecossistema abrangente de ferramentas como parte de uma arquitetura holística de segurança de aplicativos e APIs. Isso inclui detecção e aplicação de políticas em linha, permitindo controlar o comportamento das APIs, limitar atividades indesejadas ou mal-intencionadas e impedir a exposição de dados confidenciais.

Isso pode incluir uma combinação de recursos e ferramentas, como:

  • Um gateway de API
  • Testes de segurança de aplicações (SAST e DAST)
  • Um firewall de aplicações web (WAF)
  • Prevenção contra perda de dados (DLP)
  • Gerenciamento de bots
  • Mitigação de DDoS

Gateways de API oferecem recursos robustos de inventário e gerenciamento, mas fornecem apenas segurança básica, como limitação de taxa, que não impedirá invasores sofisticados. Além disso, a proliferação de APIs está levando à multiplicação de ferramentas, incluindo a de gateways de API.

Os testes de segurança de aplicações são sempre essenciais, mas as metodologias shift-left para garantir uma segurança robusta das aplicações durante o desenvolvimento precisam ser complementadas por práticas shield-right — ou seja, pela proteção dos endpoints de API em produção.

Firewalls de aplicações web oferecem uma proteção temporária crucial para mitigar, por meio de assinaturas, a exploração de vulnerabilidades em aplicações. As APIs estão sujeitas aos mesmos tipos de ataques de injeção que as aplicações às quais dão suporte — tentativas de executar comandos não previstos ou acessar dados. No entanto, os WAFs geralmente não contam com os recursos de descoberta dinâmica necessários para detectar continuamente APIs desconhecidas (ocultas ou zumbis) e problemas como anomalias comportamentais em APIs e possíveis explorações da lógica de negócios.

Detecção de dados confidenciais e prevenção contra perda de dados ajudam a proteger as APIs e os dados que elas acessam e transmitem, detectando e mascarando dados confidenciais críticos, incluindo informações de identificação pessoal (PII) e informações financeiras. Isso permite que as organizações criem regras de proteção de dados para limitar ou mascarar a transmissão de dados e impedir que endpoints de API exponham dados, ajudando a evitar vazamentos de dados por meio de APIs.

Gerenciamento de bots para APIs não pode depender de controles de segurança comumente usados, como autenticação multifator (MFA) e CAPTCHA, pois o tráfego de APIs normalmente ocorre entre máquinas e não há interação humana direta, exceto nas interfaces de usuário de sistemas baseados em APIs.

A mitigação tradicional de DDoS concentra-se em ataques de rede e volumétricos, enquanto as APIs podem estar sujeitas a ataques direcionados à camada 7 que exploram lógicas de negócios críticas. O resultado final é o mesmo: degradação do desempenho e, possivelmente, indisponibilidade.

A descoberta dinâmica de APIs, a aplicação de esquemas (segurança positiva), o controle de acesso, a detecção automatizada de anomalias e as proteções baseadas em aprendizado de máquina surgiram como recursos essenciais do ecossistema para a defesa de APIs. É importante contar com uma ou mais ferramentas que sejam compatíveis com os protocolos de API e permitam impor o comportamento adequado das APIs e criar regras de proteção para elas. As organizações precisam ser capazes de criar regras personalizadas que controlem especificamente as APIs e seu comportamento. Isso inclui controles de listas de permissões e bloqueios, limitação de taxa, filtragem por GeoIP e criação de regras personalizadas para atuar sobre solicitações de API, incluindo o mascaramento de dados confidenciais e critérios de correspondência e restrição de solicitações para endpoints ou grupos específicos de APIs.

6. Segurança híbrida e multinuvem

A proliferação de APIs está levando a uma expansão arquitetural insustentável em ambientes híbridos e multicloud. Mais uma vez, a proliferação de APIs resultou na multiplicação de gateways de API, pois muitas ferramentas de segurança não conseguem oferecer proteção consistente em diferentes arquiteturas, como data centers, nuvens privadas e públicas e ambientes de borda. A visibilidade e o controle do tráfego de APIs em todo o ecossistema digital são essenciais para mitigar a próxima vulnerabilidade crítica e evitar configurações incorretas que podem ocorrer quando os endpoints estão distribuídos entre diferentes provedores de nuvem.

Proteja as APIs onde quer que estejam

As APIs estão em toda parte — no data center, em diferentes nuvens e na borda — e estão interconectadas por trás de aplicações web, aplicativos móveis e integrações de terceiros associadas. As APIs precisam ser protegidas onde quer que estejam, e a segurança nunca deve parar. Portanto, garanta que sua estratégia inclua soluções que protejam continuamente a lógica de negócios crítica por trás das APIs e mantenham a segurança de forma consistente em toda a sua estrutura digital conectada por APIs — para que você possa otimizar as operações e inovar com confiança.

Recursos