A segurança de API refere-se às práticas e aos procedimentos que protegem as interface de programação de aplicativos (APIs) contra o uso indevido, ataques maliciosos de bot e outras ameaças de segurança cibernética. Funciona como um subconjunto de segurança na web, mas com um foco específico nas APIs, que são cada vez mais vitais para o gerenciamento de TI da empresa.1
As APIs agora servem como alicerces da transformação digital, permitindo que as empresas ofereçam serviços a desenvolvedores e parceiros externos. Como as APIs orquestram a comunicação e a troca de dados entre aplicações, elas podem facilitar experiências de usuário mais conectadas, ampliar o alcance geral dos negócios e promover a inovação tecnológica de ponta a ponta. As APIs também simplificam a integração de serviços para que as empresas possam se adaptar rapidamente às mudanças do mercado e às demandas dos clientes.
Mas à medida que as APIs se proliferam, também aumentam os problemas de segurança que geralmente as acompanham.
As APIs ficam entre os recursos de TI de uma organização e desenvolvedores de software terceirizados, ou entre recursos de TI e indivíduos, entregando dados e informações em endpoints de processos. Como esses endpoints são expostos ao mundo externo, eles podem se tornar alvos lucrativos para diversos tipos de ataques.
A evolução do gerenciamento e da segurança de APIs está intrinsecamente ligada à própria evolução das APIs. As primeiras APIs focavam principalmente na comunicação entre processos dentro de um único sistema. Como tal, a segurança (ou a falta dela) era menos preocupante, pois a comunicação estava confinada a uma única máquina.
Contudo, com o surgimento da Internet das Coisas (IoT) e das arquiteturas de microsserviços nativas da nuvem, as APIs se expandiram para permitir comunicação fluida e roteamento de chamadas entre aplicações e em ambientes DevOps. Uma API moderna e de alta qualidade, como REST (Representational State Transfer) ou SOAP (Simple Object Access Protocol), organiza a integração de aplicações, especifica formatos de dados e dita tipos de chamadas, procedimentos e convenções.
APIs da web, especialmente GraphQL, API REST e API SOAP, mudaram o cenário ao expandirem os recursos para incluir amplos recursos de integração em uma infinidade de redes complexas.
Mas como as tecnologias avançadas dependem fortemente dos endpoints das APIs para funcionar, empresas e equipes de segurança devem implementar medidas robustas para proteger dados e serviços web, e, assim, extrair o máximo valor de seus recursos de TI.
Se não forem devidamente protegidos, os endpoints de API podem permitir que atores mal-intencionados obtenham acesso não autorizado a dados sensíveis, interrompam operações de serviço ou ambos, com consequências potencialmente devastadoras.Ameaças comuns incluem:
Em uma economia digital dinâmica, as APIs são críticas para a agilidade dos negócios, mas sua natureza aberta pode representar riscos significativos à segurança de dados. As violações de segurança de API levaram a vazamentos enormes de dados, mesmo nas grandes empresas de boa reputação, como John Deere, Experian e Peloton.2
E em um ambiente tecnológico tão global, as vulnerabilidades de segurança ameaçam todos os principais provedores de serviços, independentemente do setor ou da localização geográfica. Como exemplo, um ataque de API de 2022 contra a empresa australiana de telecomunicações Optus expôs os nomes, números de telefone, dados do passaporte e informações da carteira de motorista de quase 10 milhões de clientes.3
Esses incidentes ressaltam a importância da proteção de API e aceleraram o desenvolvimento de ferramentas e estratégias abrangentes de segurança de API.
A implementação de protocolos de segurança de API rigorosos protege os dados, as aplicações e os serviços que os endpoints de API mostram e, ao mesmo tempo, protege sua disponibilidade para usuários legítimos. No entanto, a segurança de API não se resume à proteção de endpoints. Ela também prioriza a segurança das interações de rede, como transmissões de dados, solicitações de usuários e comunicações entre aplicativos ao longo do ciclo de vida da API.
Algumas das soluções de segurança de API mais comuns para proteger infraestruturas de TI incluem:
Autenticação é o processo de verificação da identidade de um usuário, sistema ou processo. No contexto de APIs, isso envolve o uso de protocolos como OAuth 2.0, chaves de API (API keys) e JWT (JSON Web Tokens) para garantir que quem faz a requisição é realmente quem afirma ser.
Por outro lado, a autorização é o processo de verificação do que um usuário autenticado tem acesso. Depois que um usuário é autenticado, os controles de acesso baseados em funções devem limitar estritamente o acesso do usuário aos recursos necessários ou solicitados.
Com a criptografia, dados em texto simples ou em outros formatos legíveis são convertidos para versões codificadas que só podem ser decodificadas por quem tiver a chave de descriptografia. Tecnologias como TLS (Transport Layer Security), conexões SSL e protocolos de criptografia TLS garantem que o tráfego da API não seja interceptado nem alterado por agentes mal-intencionados ou usuários não autorizados.
Protocolos de validação de input protegem APIs contra dados maliciosos, como ataques de injeção SQL e cross-site scripting (XSS), garantindo que os inputs atendam a critérios como comprimento, tipo, formato e intervalo antes de serem processados. O uso de firewalls de aplicações web (WAFs) e validação de esquemas XML ou JSON ajuda as equipes de segurança a automatizar esse processo, analisando requisições e bloqueando tráfego malicioso antes que chegue ao servidor.
A limitação de taxa protege os recursos das APIs contra ataques de força bruta e ataques de negação de serviço (DoS), restringindo o número de chamadas que um usuário ou endereço IP pode fazer em um determinado período. Esses limites garantem que todas as requisições sejam processadas de forma oportuna e que nenhum usuário possa sobrecarregar o sistema com solicitações maliciosas.
Assim como o limitação de taxa (rate limiting), o throttling restringe o número de chamadas de API que um sistema recebe. No entanto, em vez de operar no nível do usuário/cliente, o throttling funciona no nível do servidor/rede. Os limites e cotas de throttling protegem a largura de banda do sistema de back-end da API, limitando a API a um determinado número de chamadas, mensagens ou ambos por segundo.
Os cabeçalhos de segurança podem ser particularmente eficazes para evitar ataques de clickjacking. O cabeçalho “content-security-policy”, por exemplo, informa ao navegador quais recursos ele pode solicitar ao servidor. O cabeçalho “x-content-type-option” impede que os navegadores tentem fazer a detecção de tipo MIME, e o cabeçalho “strict-transport-security” aplica conexões seguras (HTTP sobre SSL/TLS) com o servidor.
Instalar gateways de API é uma das maneiras mais fáceis de restringir o acesso à API e adicionar uma camada adicional de segurança de rede, especialmente no caso de APIs abertas. Um gateway de API atua como um único ponto de entrada para todas as solicitações de API que um sistema recebe, padronizando interações de API e oferecendo recursos de segurança como caching, análise de dados, composição de API, limitação de taxa, criptografia, registro e controle de acesso.
Manter registros de auditoria abrangentes e atualizados (e revisá-los com frequência) permite que as organizações acompanhem o acesso e uso de dados e registrem todas as requisições de API. Dada a complexidade dos ecossistemas de API, acompanhar a atividade pode ser bastante trabalhoso, mas os procedimentos de auditoria e registro podem economizar tempo quando as equipes precisam refazer etapas após uma violação de dados ou falha de conformidade.
O tratamento proativo de erros em ambientes de API pode evitar que cibercriminosos revelem informações confidenciais sobre os processos da API. Idealmente, qualquer erro de API deve retornar códigos de status HTTP que indiquem amplamente a natureza do erro, fornecendo contexto suficiente para que as equipes compreendam e resolvam o problema sem risco de exposição excessiva de dados.
Assim como em qualquer aplicação ou sistema de software, o monitoramento e a manutenção em tempo real são essenciais para manter a segurança de API. Mantenha um olhar atento para qualquer atividade de rede incomum e atualize as APIs com as últimas correções de segurança, correções de bugs e novas funcionalidades.
As organizações também devem adotar padrões de segurança oportunos como as recomendações de segurança de API do Open Web Application Security Project (OWASP). A lista Top 10 de Segurança de API do OWASP, por exemplo, oferece uma estrutura para entender e mitigar as ameaças de segurança de API mais críticas e comuns, como autenticação quebrada, atribuição em massa e falsificação de solicitação do lado do servidor.
Cada nova versão do software de API vem com atualizações de segurança e correções de bugs que reforçam as lacunas de segurança em versões anteriores. Mas sem práticas adequadas de versionamento, os usuários podem acidentalmente (ou intencionalmente) implementar uma versão desatualizada de API e colocar dados sensíveis em risco. Práticas atentas de versionamento e documentação permitem que as empresas acelerem o desenvolvimento de API e eliminem versões antigas de API sem interromper os serviços, direcionando os usuários para iterações mais novas e seguras.
Por exemplo, se uma equipe descobrir uma falha de segurança na v1 de uma API, ela pode corrigi-la na v2. E com versionamento, as equipes de segurança podem incentivar os usuários a migrar da v1 para a v2 no seu próprio ritmo, deixando claro na documentação da versão que a v1 possui uma vulnerabilidade de segurança conhecida.
Os testes de segurança exigem que os desenvolvedores enviem requisições padrão usando um cliente de API para avaliar a qualidade e a correção das respostas do sistema. Conduzir testes de segurança regulares para identificar e corrigir lacunas de segurança ajuda as equipes a corrigir vulnerabilidades da API antes que invasores tenham a chance de explorá-las.
A automação impulsionada por IA escala a agilidade em APIs, aplicações, eventos, arquivos e B2B/EDI.
Libere o potencial dos negócios com as soluções de integração da IBM, que conectam aplicações e sistemas para acessar dados críticos de forma rápida e segura.
Libere novos recursos e aumente a agilidade dos negócios com os serviços de consultoria em nuvem da IBM. Descubra como cocriar soluções, acelerar a transformação digital e otimizar o desempenho por meio de estratégias de nuvem híbrida e parcerias com especialistas.
1 Research Brief: The Urgency of Addressing API Security in an Application Security Program, Enterprise Strategy Group, 16 de outubro de 2023.
2 On the Radar: Wib secures APIs throughout their full lifecycles, Omdia, 1.º de setembro de 2023.
3 The next big API security breach looms: here’s how to prepare, SC Magazine, 19 de outubro de 2023.