As interfaces de programação de aplicativos (API) se tornaram um herói desconhecido da revolução digital. Esse conjunto de ferramentas fornece a conexão que une diversos componentes de software para criar novas experiências para o usuário. No entanto, ao fornecer um caminho direto para bancos de dados de back-end, as APIs também se tornam um alvo interessante para cibercriminosos. Não ajuda o fato de que o número de APIs explodiu nos últimos anos, levando muitas implantações a não serem documentadas e protegidas.

De acordo com um estudo recente, 94% das organizações globais tiveram problemas de segurança de API em produção no último ano, com quase um quinto (17%) sofrendo um incidente relacionado a API. É hora de ganhar visibilidade e controle desses blocos de construção digitais.

Quão graves são as ameaças às APIs?

As APIs são fundamentais para a empresa componível: um conceito do Gartner no qual as organizações são incentivadas a dividir seus aplicativos em capacidades de negócios embaladas (PBCs, na sigla em inglês). A ideia é que a montagem desses componentes menores de várias maneiras permita que as empresas se movam com mais agilidade e velocidade, criando novas funcionalidades e experiências em resposta a necessidades de negócios em constante evolução. As APIs são um componente crítico das PBCs, cujo uso tem aumentado com a adoção crescente de arquiteturas de microsserviços.

Quase todos (97%) os líderes globais de TI concordam que executar com sucesso uma estratégia de API é vital para a receita e o crescimento futuro. No entanto, cada vez mais, o volume de APIs e sua distribuição em várias arquiteturas e equipes são motivo de preocupação. Pode haver dezenas ou até centenas de milhares de APIs voltadas para clientes e parceiros em uma grande empresa. Mesmo organizações de médio porte podem ter milhares de APIs em funcionamento.

Qual é o impacto nas empresas?

As ameaças também estão longe de ser teóricas. Somente este ano, vimos:

  • A T-Mobile USA admitir que 37 milhões de clientes tiveram suas informações pessoais e de conta acessadas por um ator malicioso através de uma API.
  • Implementações mal configuradas de Autorização Aberta (OAuth) no Booking.com, que poderiam ter possibilitado ataques sérios de apropriação de contas de usuários no site.

Não é apenas a reputação corporativa e o resultado final que estão em risco com as ameaças de API. Elas também podem atrasar projetos de negócios importantes. Mais da metade (59%) das organizações afirmam que tiveram que retardar o lançamento de novos aplicativos devido a preocupações com a segurança da API. Essa é uma das razões pelas quais agora é um tópico de discussão de nível executivo para metade dos conselhos de administração.

Os três principais riscos

Existem dezenas de maneiras pelas quais hackers podem explorar uma API, mas a OWASP é a principal fonte de recursos para aqueles que desejam entender as maiores ameaças para sua organização. Sua lista Top 10 de Segurança de API OWASP 2023 detalha os seguintes três principais riscos de segurança:

  1. Autorização de Nível de Objeto Quebrada (BOLA, na sigla em inglês): a API falha em verificar se um solicitante deve ter acesso a um objeto. Isso pode levar ao roubo, modificação ou exclusão de dados. Os atacantes precisam apenas estar cientes de que o problema existe - não são necessários hacks de código ou senhas roubadas para explorar o BOLA.
  2. Autenticação Quebrada: Proteções de autenticação ausentes e/ou mal implementadas. A autenticação da API pode ser "complexa e confusa" para muitos desenvolvedores, que podem ter concepções equivocadas sobre como implementá-la, alerta a OWASP. O próprio mecanismo de autenticação também está exposto a qualquer pessoa, tornando-se um alvo atraente. Os pontos finais da API responsáveis pela autenticação devem ser tratados de forma diferente dos demais, com proteção aprimorada. E qualquer mecanismo de autenticação usado deve ser adequado ao vetor de ataque relevante.
  3. Autorização de Nível de Propriedade de Objeto Quebrada (BOPLA, na sigla em inglês): Os atacantes podem ler ou alterar os valores das propriedades de objetos aos quais não deveriam ter acesso. Os pontos finais da API estão vulneráveis se expuserem as propriedades de um objeto consideradas sensíveis ("exposição excessiva de dados"); ou se permitirem que um usuário altere, adicione ou exclua o valor de uma propriedade de objeto sensível ("atribuição em massa"). O acesso não autorizado pode resultar na divulgação de dados a partes não autorizadas, perda de dados ou manipulação de dados.

Também é importante lembrar que essas vulnerabilidades não são mutuamente exclusivas. Alguns dos piores incidentes de violação de dados baseados em API foram causados por uma combinação de ataques, como BOLA e exposição excessiva de dados.

Como mitigar ameaças direcionadas a APIs

Dado o que está em jogo, é vital que você incorpore a segurança em qualquer estratégia de API desde o início. Isso significa entender onde estão todas as suas APIs e implementar ferramentas e técnicas para gerenciar a autenticação de ponto de extremidade, comunicação segura de rede, mitigar bugs comuns e lidar com a ameaça de bots maliciosos.

Aqui estão algumas medidas para começar:

  • Melhore a governança da API seguindo um modelo de desenvolvimento de aplicativo centrado na API, o que permitirá obter visibilidade e controle. Dessa forma, você deslocará a segurança para a esquerda para aplicar controles no início do ciclo de vida do desenvolvimento de software e automatizá-los no pipeline CI/CD.
  • Utilize ferramentas de descoberta de API para eliminar a quantidade de APIs não documentadas já existentes na organização e entender onde estão as APIs e se elas contêm vulnerabilidades.
  • Implante um gateway de API que aceite solicitações de clientes e as direcione para os serviços de backend corretos. Essa ferramenta de gerenciamento ajudará a autenticar, controlar, monitorar e proteger o tráfego da API.
  • Adicione um firewall de aplicação web (WAF) para aprimorar a segurança do seu gateway, bloqueando tráfego malicioso, incluindo tentativas de DDoS e exploração.
  • Criptografe todos os dados (por exemplo, via TLS) que trafegam pelas APIs, para que não possam ser interceptados em ataques de "man-in-the-middle".
  • Utilize o OAuth para controlar o acesso à API a recursos, como sites, sem expor as credenciais do usuário.
  • Aplique limites de taxa para restringir com que frequência sua API pode ser chamada. Isso irá mitigar a ameaça de ataques de DDoS e outros picos indesejados.
  • Use uma ferramenta de monitoramento para registrar todos os eventos de segurança e identificar atividades suspeitas.
  • Considere uma abordagem de confiança zero, que pressupõe que nenhum usuário, recurso ou ativo dentro do perímetro pode ser confiável. Em vez disso, você precisará exigir prova de autenticação e autorização para cada operação.

A transformação digital é o combustível que impulsiona o crescimento sustentável para as empresas modernas. Isso coloca as APIs no centro de qualquer novo projeto de desenvolvimento. Elas devem ser rigorosamente documentadas, desenvolvidas com princípios de segurança desde o design e protegidas em produção com uma abordagem em várias camadas.