paint-brush
O papel dos bots em ataques de APIpor@venkateshsundar
577 leituras
577 leituras

O papel dos bots em ataques de API

por Venkatesh Sundar6m2023/05/09
Read on Terminal Reader

Muito longo; Para ler

As APIs são os blocos de construção dos aplicativos modernos e impulsionam modelos empresariais combináveis e plataformas digitais. Atualmente, o número total de APIs públicas e privadas em uso globalmente é estimado em cerca de 200 milhões. Por design, eles oferecem acesso rápido e fácil a dados, recursos e funcionalidades; não há como os invasores sentirem falta deles.
featured image - O papel dos bots em ataques de API
Venkatesh Sundar HackerNoon profile picture
0-item

As APIs são os blocos de construção dos aplicativos modernos e impulsionam modelos empresariais combináveis e plataformas digitais. À medida que mais organizações percebem a importância da integração de APIs, o uso de APIs dispara.


Atualmente, o número total de APIs públicas e privadas em uso globalmente é estimado em cerca de 200 milhões . Como as APIs são tão importantes por design, elas oferecem acesso rápido e fácil a dados, recursos e funcionalidades; não há como os invasores sentirem falta deles. E os bots são ferramentas-chave no arsenal dos atacantes, eles estão aproveitando os bots para orquestrar ataques de bots de API.


O que exatamente são ataques de bot de API? Como os agentes de ameaças usam bots para atacar APIs ? Como você protege suas APIs de bots? Continue lendo para descobrir.


API Bot Attacks

Vamos primeiro entender os fundamentos dos bots antes de nos aprofundarmos no que são os ataques de bots de API.


Bots são programas autônomos usados para comunicação entre máquinas. Eles podem ser programados para executar funções e realizar solicitações da web sem intervenção humana. Ele envia o tráfego HTTP de um endereço IP para um sistema. Botnets são uma coleção de bots que trabalham juntos e podem aproveitar vários endereços IP. O tamanho dos botnets varia de algumas centenas a vários milhares de endereços IP.


Em um ataque de bot, agentes mal-intencionados utilizam bots para manipular, fraudar ou interromper um site, aplicativo, usuário final ou API de destino. Os ataques de bot foram inicialmente usados para alvos de spam. Mas hoje eles se tornaram muito mais sofisticados e podem realizar ataques complexos que imitam de perto o comportamento humano.


Quando esses programas automatizados são aproveitados para atacar APIs especificamente ou quando os invasores utilizam bots para aumentar a escala, o impacto e a sofisticação dos ataques de API, trata-se de um ataque de bot de API.


Por que os bots são usados contra APIs?

Exposição programática de dados, recursos e lógica de negócios:

Os bots têm sido usados em ataques cibernéticos há muito tempo. Mas por que é motivo de preocupação quando eles são usados contra APIs? É porque as APIs são projetadas para conectar diversos aplicativos, fornecer acesso programático a dados, recursos etc. e permitir fácil integração e compartilhamento por vários clientes. Por sua própria natureza, eles expõem funcionalidades e lógica de negócios de alto valor e tornam os recursos detectáveis. Assim, aumentam o risco de exposição a informações sensíveis.


Falta de visibilidade:

As APIs são alvos atraentes para ataques de bot porque as organizações não têm visibilidade das APIs em todo o ciclo de vida. E o fato de trabalharem nos bastidores não ajuda muito. Quando você não sabe que existem APIs em sua arquitetura, como você as examinará, gerenciará e protegerá? Isso deixa você com várias APIs vulneráveis, shadow, zombie, rogue e mal configuradas. Como resultado, eles geralmente são menos seguros do que os endpoints tradicionais e aumentam seus riscos exponencialmente.


Você tem uma receita para o desastre quando adiciona bots a essa mistura. As organizações podem não saber quais APIs existem, quem as está usando, a quais recursos elas têm acesso e qual lógica de negócios elas expõem. Mas os agentes de ameaças usam bots para mapear a arquitetura de TI da organização e bisbilhotar pontos fracos nas APIs. Na verdade, os bots tornam o processo rápido, fácil e ágil para os invasores.


Os bots de hoje são furtivos:

Os bots também são usados para ataques de API porque podem ser extremamente furtivos e evitar a detecção por ferramentas de segurança tradicionais. Na verdade, os bots mais sofisticados de hoje também podem evitar a detecção por ferramentas de segurança mais avançadas.


Por exemplo, você pode ter ajustado temporariamente suas regras de autenticação de API para congelar uma conta após três tentativas de login malsucedidas. Os bots simplesmente mudarão para outro endereço IP após duas tentativas fracassadas em um ataque de preenchimento de credenciais. Usando automação inteligente, eles fazem tudo isso sem intervenção humana, tomando decisões em movimento com base nas regras com as quais são programados e no aprendizado ao longo do tempo.


Bots são usados como cortinas de fumaça para outros ataques:

Os ataques de bot de API costumam ser usados como distrações ou cortinas de fumaça por invasores que procuram orquestrar outros tipos de abuso de API. Por exemplo, os invasores podem aproveitar botnets para acionar milhares de alertas de segurança para acompanhamento das equipes de segurança. Mas a intenção deles é enumerar IDs enquanto as equipes de segurança investigam os alertas de segurança.


Atores de ameaças utilizam bots para atacar APIs porque oferecem velocidade, flexibilidade e agilidade inigualáveis no processo. Por exemplo, o preenchimento de credenciais ou os ataques de força bruta não podem ser feitos manualmente sem acionar as defesas de segurança. Mas os bots tornam a força bruta e o preenchimento de credenciais rápido, fácil e escalável.


Aqui está outro exemplo de como os bots ajudam os invasores a segmentar APIs. Os invasores podem enviar grandes volumes de solicitações de API para um endpoint sem autenticação e coletar grandes volumes de dados em um curto período de tempo.


As ferramentas tradicionais são ineficazes contra os bots modernos:

As ferramentas de segurança tradicionais são consideradas deficientes, mesmo com ataques regulares de bots. Mas eles são mais ineficazes para impedir ataques de bots de API porque não são projetados especificamente para APIs. Em primeiro lugar, as ferramentas tradicionais não conseguem distinguir efetivamente entre um bot e a atividade humana e entre as boas e as más atividades de bot. Isso limita severamente sua capacidade de proteger APIs contra ataques baseados em bots.


Em segundo lugar, com menos pistas que os bots deixam e menos detalhes que as APIs coletam, as ferramentas tradicionais não podem decidir efetivamente se uma chamada de API é maliciosa ou legítima. Essencialmente, os bots solicitam os mesmos dados que fariam com ataques de navegador.


A diferença é que os ataques de bots de API não fornecem informações sobre a versão do navegador, cookies usados, tipo de dispositivo etc., usados por ferramentas tradicionais para detectar a atividade de bots. Como os ataques de API são totalmente virtuais, os bots podem contornar os ataques, mover-se entre diferentes nuvens, alternar endereços IP, usar redes proxy e fazer muito mais para eliminar as defesas tradicionais.


Falhas de lógica de negócios:

Os desenvolvedores tendem a usar conjuntos de regras genéricos e deixar as APIs com configurações padrão sem considerar a lógica de negócios. Isso cria falhas de lógica de negócios que os bots podem aproveitar para causar estragos enquanto evitam a detecção por meio de solicitações de API aparentemente legítimas.


Ataques de bot em APIs são mais fáceis de montar:

Ataques de bot em APIs são muito mais fáceis e econômicos de orquestrar do que ataques de bot em aplicativos móveis e da web. Embora aplicativos diferentes precisem de abordagens e recursos de bot diferentes, os invasores podem usar a mesma infraestrutura e mecanismo de ataque para APIs diretas e da Web. Além disso, as APIs permitem que os invasores tenham acesso mais próximo à infraestrutura central de TI e aos ativos críticos.


Além disso, bots, botnets e kits de ferramentas de ataque estão prontamente disponíveis para aluguel e geralmente a preços baixos. Portanto, os invasores não precisam de muitos recursos ou conhecimento técnico profundo para montar ataques de bot de API.


De que maneiras os bots são usados em ataques de API?

  1. Reconhecimento: os invasores utilizam bots e botnets para descobrir endpoints de API vulneráveis, testar limites de detecção, mapear a superfície de ataque, etc.

  2. Ataques: Bots e botnets são usados para atacar APIs. Alguns ataques comuns de bots de API são preenchimento de credenciais, ataques de força bruta, ataques de raspagem de conteúdo, injeções, etc.

  3. Evasão: em ataques baseados em API, bots e botnets também são aproveitados pelos invasores para escapar das defesas de segurança por meio de seu comportamento furtivo ou criando distrações.


Mitigação de bots de API: 5 maneiras eficazes

  • Colete inteligência e crie uma linha de base para o comportamento normal dos bots em relação às suas APIs.
  • Monitore todas as solicitações de API recebidas para descobrir e interromper o comportamento anômalo logo no estágio de reconhecimento.
  • A ferramenta de segurança implantada deve ser capaz de permitir, bloquear, sinalizar ou desafiar o tráfego de entrada de forma inteligente, caso a caso, sem muita intervenção humana.
  • Aproveite a análise comportamental e de padrões, a validação do fluxo de trabalho e a impressão digital para diferenciar efetivamente entre a atividade de bot humana, boa e ruim.
  • Continue verificando, testando e monitorando suas APIs em busca de configurações incorretas, vulnerabilidades e falhas de lógica de negócios.
  • Reforce os controles de acesso e os mecanismos de autenticação com políticas de confiança zero.
  • Sempre personalize conjuntos de regras de API.