Soluções

API Security Testing para REST e GraphQL com agente autônomo

Teste de segurança de APIs REST e GraphQL com um agente autônomo que modela a matriz de autorização e deduz BOLA/IDOR, broken auth e falhas de lógica.

API security testing que encontra o bug que o scanner não vê

APIs REST e GraphQL concentram a lógica de negócio moderna, e os bugs que mais pagam raramente são injeção clássica. São falhas de autorização em nível de objeto (BOLA/IDOR), broken authentication, mass assignment e quebras de lógica de negócio: a metade "de cima" do OWASP API Security Top 10. Um scanner de template não enxerga essa classe porque ela não tem assinatura fixa, depende de entender quem pode fazer o quê em cada endpoint. O EVERSEC RAGE ataca exatamente essa camada com um agente autônomo que modela o alvo e deduz o bug, em vez de só disparar payloads.

Como o agente modela a matriz de autorização

O fluxo começa reconstruindo a superfície da API: schema OpenAPI/Swagger, introspection de GraphQL, endpoints, parâmetros e tokens. Sobre esse modelo, o agente enumera a matriz de autorização inteira (cada papel × cada objeto × cada ação) em vez de amostrar. Para BOLA/IDOR isso significa verificar sistematicamente se o usuário A alcança o recurso do usuário B, e provar quando alcança.

Para broken auth e falhas de fluxo, o agente vai além do teste ponto-a-ponto: ele aprende a máquina de estados do fluxo crítico (login, refresh de token, autorização de compra) e roda model-checking contra ela. Cada contraexemplo é um bypass de autenticação ou de workflow deduzido, não um chute. Quando um bypass exige um input específico, o resolvedor de restrições calcula o payload exato. Mass assignment e over-posting entram pela comparação entre o que o schema aceita e o que a regra de negócio deveria permitir.

Autônomo vs. scanner de template vs. pentest manual

Capacidade EVERSEC RAGE (autônomo) Scanner DAST / template Pentest manual
BOLA/IDOR multi-conta Matriz enumerada, prova de acesso cruzado Raro (sem noção de dono do objeto) Sim, mas amostrado por tempo
Lógica de negócio / máquina de estados Aprende e faz model-check Não Forte (criatividade humana)
Mass assignment Schema vs. regra de negócio Parcial Sim
Falso-positivo Firewall de 10 gates + confiança recomputada Alto Baixo (revisão humana)
Prova de impacto Alcança dado real, PoC em vídeo Não Sim
Escala / repetição Alta, contínua Alta Baixa (caro)

O firewall determinístico é o diferencial de qualidade: nenhum achado vira report sem passar por 10 gates, AutoReject e confiança recomputada, o juiz é código, não a IA. A severidade é derivada da evidência (CVSS 4.0), não escolhida, e cada finding aceito carrega prova de impacto gravada em vídeo, com contenção declarada (o agente alcança e visualiza o dado, nunca escreve, apaga ou degrada serviço).

Quando usar cada um

  • Scanner de template: primeira camada barata e contínua para CVEs conhecidos e misconfigs com assinatura. Mantenha-o.
  • Pentest manual: insubstituível para contexto de negócio único, escopos pequenos e sensíveis, e compliance que exige um humano no laço.
  • EVERSEC RAGE: quando você precisa varrer muita superfície de API repetidamente atrás da classe de bug de autorização e lógica, com falso-positivo filtrado e impacto provado. Ele cobre o vão entre o scanner e o pentester, não os substitui.

Roda como SaaS gerenciado

100% SaaS, com workers isolados em pods gVisor por tenant, firewall de egress e Postgres com FORCE-RLS; escopo fail-closed (autorização determinística, fora do modelo). BYO-key: você traz sua própria chave de LLM (ou usa o roteador multi-provedor), sem custo de inferência embutido. Integra HackerOne, Bugcrowd e Intigriti, mas nunca auto-submete: aprovação humana é obrigatória.

Se você mantém um programa com muitos endpoints REST/GraphQL e suspeita que o IDOR está escondido no meio deles, conecte um alvo em escopo e deixe o agente modelar a matriz de autorização, o firewall te devolve só o que sobrevive à prova.

Perguntas frequentes

O EVERSEC RAGE testa GraphQL além de REST?
Sim. O recon reconstrói a superfície via schema OpenAPI/Swagger para REST e via introspection para GraphQL, mapeando queries, mutations, tipos e resolvers. A matriz de autorização é enumerada da mesma forma nos dois casos, o que permite caçar BOLA/IDOR e broken auth em endpoints REST e em campos GraphQL.
Como ele evita falso-positivo em findings de IDOR/BOLA?
Todo achado passa por um firewall determinístico (10 gates mais AutoReject e confiança recomputada) antes de virar report. O juiz é código, não o modelo de IA. Um IDOR só sobrevive se houver prova estruturada de acesso cruzado a um recurso de outro usuário; na dúvida, o padrão é matar o finding.
Ele substitui meu scanner DAST ou meu pentester?
Não. É uma categoria diferente: autônomo, entre o scanner de template e o humano. O scanner cobre CVEs e misconfigs com assinatura; o pentester traz criatividade e contexto de negócio. O agente cobre o vão: varrer muita superfície de API repetidamente atrás de bugs de autorização e lógica, com FP filtrado.
Como o agente prova impacto sem causar dano?
Ele alcança e visualiza o dado real para demonstrar consequência, mas com contenção declarada: nunca escreve, edita, apaga nem degrada serviço, e nunca autentica com o que leu. A prova é gravada em vídeo (PoC reproduzível) e a severidade é derivada da evidência em CVSS 4.0. O report nunca é auto-submetido: aprovação humana é obrigatória (zero auto-submit).
Onde a plataforma roda?
É SaaS, 100% gerenciado. Os workers rodam isolados em pods gVisor por tenant, com firewall de egress e Postgres sob FORCE-RLS, e o escopo é fail-closed, com autorização determinística fora do modelo. Você usa sua própria chave de LLM (BYO-key) ou o roteador multi-provedor, sem custo de inferência embutido.