Nos últimos anos, a proliferação de APIs mudou significativamente a forma como as empresas operam. As APIs permitem que diferentes aplicações se comuniquem e troquem dados entre si, possibilitando processos de negócios e desenvolvimento de software mais eficientes e eficazes.
No entanto, com o aumento do uso de APIs, surge o risco de proliferação descontrolada de APIs, em que APIs são criadas e implantadas por equipes e arquiteturas distribuídas, muitas vezes sem a devida supervisão e gestão. Isso pode gerar um novo conjunto de riscos de segurança para as empresas, pois cada API representa um possível ponto de entrada para invasores obterem acesso não autorizado a dados e sistemas confidenciais.
A ascensão do desenvolvimento de software API-first
Um dos principais fatores que impulsionam a proliferação de APIs é a disseminação dos microsserviços. Uma arquitetura de microsserviços divide uma aplicação maior em aplicações menores e independentes, que se comunicam entre si por meio de APIs. Isso divide aplicações complexas em partes distintas, que podem ser gerenciadas por equipes específicas e dimensionadas de forma independente para atender às demandas de tráfego.
Os microsserviços oferecem muitas vantagens aos desenvolvedores, incluindo maior flexibilidade e escalabilidade. No entanto, esses benefícios envolvem algumas contrapartidas, como maior complexidade. Por isso, muitas empresas adotam uma abordagem API-first para criar microsserviços. Nessa estratégia, o processo de design de aplicações e serviços começa com um contrato de API que descreve como uma API funciona, incluindo o formato das solicitações e respostas.
A superfície de ataque aumenta à medida que as APIs proliferam
Os benefícios do desenvolvimento de software com foco em APIs podem ser facilmente comprometidos quando a segurança das APIs não é levada a sério, especialmente durante as etapas de projeto e implantação. Em termos básicos, quanto mais APIs, maior é a superfície de ataque. Embora as APIs desempenhem um papel fundamental no desenvolvimento de software moderno, elas também estão se tornando cada vez mais fáceis de explorar.
Em 2018, a Gartner previu que, até 2022, as APIs se tornariam o vetor de ataque mais comum contra aplicações. Na verdade, a previsão de que isso demoraria tanto foi otimista demais. Violações de APIs de grande repercussão em grandes empresas, que afetaram milhões de usuários, já estavam ocorrendo e se tornaram cada vez mais comuns:
- Em 2018, o Facebook informou que os dados de pelo menos 50 milhões de usuários estavam em risco após invasores explorarem a API para desenvolvedores da empresa a fim de obter informações de identificação pessoal (PII) vinculadas às páginas de perfil dos usuários, incluindo nome, gênero e cidade natal.
- Em 2019, o LinkedIn informou que um hacker usou técnicas de raspagem de dados, explorando APIs para coletar informações de mais de 700 milhões de usuários, que foram colocadas à venda na dark web.
- Em 2021, uma API mantida pela Peloton permitiu que um agente mal-intencionado solicitasse informações de identificação pessoal, incluindo idade, gênero, cidade, peso e data de nascimento.
- Em 2022, o Twitter solucionou uma violação de API que expôs dados de 5,4 milhões de contas de usuários, incluindo números de telefone e endereços de e-mail.
- Em 2023, a T-Mobile informou que uma violação de API havia resultado no roubo de dados de 37 milhões de clientes, incluindo nomes, e-mails, endereços, números de telefone, datas de nascimento e muito mais.
A abrangência e a variedade desses ataques revelam os desafios enfrentados pelos líderes de segurança e engenharia. Alguns ataques exploram APIs que foram indevidamente expostas à internet. Outros usam chaves de API ou outros métodos de autenticação que foram indevidamente expostos em repositórios de código. Há ainda casos em que os invasores obtêm acesso a ambientes internos explorando vulnerabilidades em VPNs e usam APIs internas para exfiltrar dados.
Impedir ataques a APIs exige a estratégia e as ferramentas certas
A maneira mais comum de se proteger contra ameaças a APIs é combinar estratégias tradicionais de segurança de aplicações web com técnicas modernas de segurança de APIs. As estratégias tradicionais muitas vezes são insuficientes diante das diversas ameaças atuais a APIs. Técnicas modernas, como a descoberta automatizada de APIs e os testes de contraste de APIs, buscam preencher essas lacunas.
É fundamental que as empresas adotem a estratégia de shield right (implementar controles globais e políticas de segurança para proteger aplicações e APIs implantadas) e de shift left (incorporar a segurança ao código para eliminar vulnerabilidades antes que aplicações e APIs entrem em produção). Nenhuma dessas estratégias consegue, isoladamente, oferecer segurança abrangente para APIs. Portanto, a chave para evitar violações é adotar uma abordagem holística que abranja três categorias de práticas de segurança de APIs:
- Gerenciamento da postura de segurança de APIs– Oferece visibilidade sobre o estado de segurança de um conjunto de APIs, incluindo os tipos de dados expostos e os métodos de solicitação
- Testes de segurança de APIs – Avaliam a segurança de uma API em pontos-chave de seu ciclo de vida para identificar possíveis vulnerabilidades
- Proteção de APIs em tempo de execução– Detecta e impede que solicitações maliciosas cheguem às APIs durante a operação
Ao combinar a estratégia certa com as ferramentas adequadas, as organizações podem proteger melhor suas APIs contra ataques e garantir a segurança de seus sistemas de software. Vejamos as funcionalidades e ferramentas essenciais que os líderes de engenharia de plataforma precisam implementar para proteger as APIs durante todo o seu ciclo de vida.
O que é o gerenciamento da postura de segurança de APIs?
O gerenciamento da postura de segurança de APIs oferece visibilidade sobre a quantidade, os tipos, as localizações e os dados expostos por suas APIs. Essas informações ajudam você a entender os riscos associados a cada API para que possa tomar as medidas adequadas para protegê-la.
Principais funcionalidades:
- Descoberta automatizada de APIs – Descoberta automática e contínua de APIs para proporcionar visibilidade abrangente das APIs implantadas em um ambiente
- Caracterização de APIs – Identifique e categorize APIs por protocolo ou arquitetura (REST, GraphQL, SOAP etc.) e mapeie os fluxos de dados confidenciais para entender sua exposição a riscos
- Catalogação de APIs – Mantenha uma lista completa de APIs para incentivar as equipes de software a reutilizar APIs existentes e ajudar as equipes de SecOps a obter uma visão abrangente da sua postura de segurança
Tecnologias representativas:
- Web application and API protection (WAAP) – Aproveita uma posição global privilegiada na infraestrutura de APIs para analisar o tráfego que entra e sai dos ambientes, identificar APIs e criar uma visão da sua exposição a riscos
- Descoberta inline ou baseada em agente – Anexa um agente a gateways de API, balanceadores de carga ou controladores de Ingress do Kubernetes existentes para espelhar e analisar o tráfego de API
- Descoberta fora de banda ou sem agente – Usa o espelhamento de tráfego ou logs e métricas exportados para analisar o tráfego de APIs; geralmente oferece menos visibilidade sobre APIs e ameaças do que outras tecnologias
- Rastreadores de domínio – Os provedores de segurança de APIs podem oferecer rastreadores que examinam seu domínio em busca de endpoints de API expostos que permitem que o tráfego contorne seus gateways de API e balanceadores de carga, nos quais as políticas de segurança podem ser aplicadas
É importante ter em mente que nenhuma tecnologia consegue encontrar de forma confiável todas as APIs da sua arquitetura. A maioria das técnicas de descoberta depende da visibilidade fornecida pelos balanceadores de carga, gateways de API e controladores de Ingress existentes e dificilmente detectará configurações incorretas que contornem esses componentes arquiteturais.
Em última análise, a revisão de código e a adoção das práticas recomendadas de API-first oferecem uma prevenção mais eficaz a longo prazo. No entanto, as ferramentas automatizadas de descoberta de APIs ainda são úteis para criar rapidamente uma visão da sua postura de segurança e identificar APIs que, de outra forma, poderiam permanecer sem gerenciamento e sem proteção.
O que são testes de segurança de APIs?
Enquanto o gerenciamento da postura de segurança de APIs se concentra na segurança de toda a empresa, os testes de segurança de APIs são voltados especificamente para APIs individuais. Em sua forma mais básica, os testes de segurança de APIs ajudam a identificar e prevenir vulnerabilidades e os riscos associados a elas, testando o ambiente de execução da API — a aplicação executada por trás da API. Isso ajuda a garantir que os requisitos básicos de segurança tenham sido atendidos, incluindo condições de autenticação, autorização, limitação de taxa e criptografia.
Principais funcionalidades:
- Teste de contrato de API – Usa a especificação OpenAPI de uma API para verificar se ela está funcionando conforme projetado, comparando as solicitações do cliente com as respostas do servidor. Adota uma abordagem “de dentro para fora” para identificar se as APIs estão vulneráveis antes de serem implantadas.
- Teste dinâmico de segurança de aplicações (DAST) – Simula ataques contra uma API em execução para identificar vulnerabilidades, avaliando-a de “fora para dentro”, como faria um usuário mal-intencionado.
Tecnologias representativas:
- Software de teste de contrato de API – Ferramentas especializadas para executar testes que segmentam solicitações e respostas de API a fim de verificar se o comportamento do cliente e do servidor está em conformidade com o contrato da API
- Software de teste de segurança de aplicações (AST) – Ferramentas que analisam e testam aplicações, incluindo APIs, por meio da simulação de ataques
Há tanto ferramentas de código aberto para testes de contrato quanto produtos comerciais de fornecedores especializados em segurança de APIs. O mercado de testes de segurança de aplicações (AST) existe há décadas, e cada vez mais fornecedores oferecem ferramentas específicas para a varredura e o teste de APIs.
O que é proteção de APIs em tempo de execução?
A proteção de APIs em tempo de execução consiste em protegê-las enquanto operam e processam solicitações. Ela prioriza a incorporação da segurança tanto à infraestrutura da plataforma quanto ao próprio código das APIs. O objetivo é identificar e impedir solicitações maliciosas de API que surjam após a implantação.
Principais funcionalidades:
- Controle de acesso – Aplique políticas de autenticação (authN) e autorização (authZ)
- Network security – Criptografe e proteja as comunicações em toda a rede
- Proteção de aplicações – Proteja os ambientes de execução de APIs contra solicitações maliciosas e ataques
- Monitoramento em tempo real – Visualize, rastreie e mitigue ataques em toda a infraestrutura de APIs
Tecnologias representativas:
- Gateway de API – Aplica e impõe políticas de segurança, incluindo autenticação, autorização, limitação de taxa, listas de controle de acesso e criptografia
- Firewall de aplicações web (WAF) – Protege APIs e aplicações contra ataques sofisticados de camada 7, monitorando e filtrando ativamente o tráfego com base em assinaturas de ataque
- Provedor de identidade (IdP) – Serviço que armazena e verifica a identidade do usuário e geralmente funciona com provedores de logon único (SSO) para autenticar usuários
Nem todos os gateways de API e WAFs/WAAPs são iguais. Alguns serviços, especialmente as soluções nativas disponíveis na nuvem e em outras plataformas, não oferecem a visibilidade global e a padronização necessárias para arquiteturas multinuvem e híbridas.
Práticas recomendadas de segurança de APIs
Dada a importância de proteger as APIs, é essencial abordar a segurança de APIs de forma organizada. Os líderes de engenharia de plataforma e de segurança devem trabalhar em conjunto para atender aos requisitos de segurança em todo o ciclo de vida das APIs. Como vimos anteriormente, isso corresponde, de modo geral, a três áreas principais de atuação: gerenciamento da postura de segurança de APIs, testes de segurança de APIs e proteção de APIs em tempo de execução. Em outras palavras, é preciso saber quantas APIs você tem, como testá-las para detectar erros e como incorporar segurança ao seu código.
Conclusão
Como toda área de segurança cibernética, a segurança de APIs é um processo contínuo que exige a colaboração de diversas partes interessadas, incluindo engenheiros de rede, líderes de operações de segurança, líderes de engenharia de plataforma e engenheiros de desenvolvimento de software. A boa notícia é que proteger APIs não é nenhum grande mistério.
A maioria das organizações já conta com medidas para combater ataques conhecidos, como cross-site scripting, injeção, negação de serviço distribuída e outros que podem ter APIs como alvo. Além disso, muitas das práticas recomendadas descritas acima provavelmente são bastante conhecidas por profissionais de segurança experientes. Independentemente da quantidade de APIs operadas pela sua organização, o objetivo é estabelecer políticas sólidas de segurança de APIs e gerenciá-las de forma proativa ao longo do tempo.
Comece sua avaliação gratuita de 30 dias do NGINX API Connectivity Stack, que inclui o F5 NGINX Management Suite API Connectivity Manager para gerenciar, administrar e proteger APIs; o F5 NGINX Plus como gateway de API; e o F5 NGINX App Protect WAF e DoS para segurança avançada de APIs.
Recursos adicionais
- Blog: Proteja seu gateway de API com o NGINX App Protect WAF
- Blog: Proteja suas APIs GraphQL e de streaming bidirecional gRPC com o WAF F5 NGINX App Protect
- eBook: Segurança moderna de aplicações e APIs
Sobre o autor
Publicações relacionadas no blog

Como o F5 NGINX One aprimora o gerenciamento e a observabilidade
Descubra como o F5 NGINX One aprimora o gerenciamento e a observabilidade de ambientes híbridos e multicloud ao oferecer um console web centralizado baseado em SaaS, com insights em tempo real, conformidade automatizada e gerenciamento simplificado de configurações.

Do OpenAPI ao NGINX como gateway de API usando uma API declarativa
Descubra como transformar uma definição de esquema OpenAPI em uma configuração NGINX totalmente funcional, operando como um API Gateway com a segurança de um Web Application Firewall e um Portal do Desenvolvedor, usando uma abordagem declarativa de API.

Como gerenciar picos repentinos de tráfego e sobrecarga do servidor
Picos de tráfego e sobrecarga de servidores são preocupações sérias para varejistas online em qualquer época, mas especialmente durante a “Cyber Season” de compras de fim de ano. Detalhamos como você pode aproveitar as soluções de entrega de aplicações de nível de produção da NGINX para se preparar para aumentos repentinos de tráfego.

Distribuição segura de chaves privadas SSL com o NGINX
Descrevemos três maneiras progressivamente mais seguras de proteger chaves privadas SSL ao configurar o NGINX para processar tráfego HTTPS: permitir acesso de leitura apenas ao usuário root, criptografar as chaves com senhas armazenadas separadamente e distribuir as senhas a partir de um repositório central.
Agrupando solicitações de API em lotes com NGINX Plus e o módulo JavaScript do NGINX
O módulo JavaScript do NGINX lançado com o NGINX Plus R15 oferece suporte a subsolicitações, possibilitando uma classe totalmente nova de casos de uso para o NGINX Plus. Este exemplo completo também usa a API do NGINX Plus e os módulos de chave-valor para converter solicitações de API dos clientes em solicitações separadas para as APIs dos microsserviços que compõem um aplicativo.
Como superar o esgotamento de portas efêmeras no NGINX e no NGINX Plus
Confira dicas para evitar o esgotamento de portas efêmeras com ajustes no kernel do Linux, conexões keepalive e conexões vinculadas dinamicamente a endereços IP locais.