olimposec.com
Radar / Notícias / OS-2026-237
risco médioNOTÍCIA2026-08-18 · 2 min de leitura
0

Detector de vulnerabilidades em smart contracts baseado em IA pode ser enganado por um grafo idêntico

Resumo executivo

A análise do GNNSCVulDetector, um detector de vulnerabilidades em smart contracts baseado em redes neurais de grafo, encontra quatro falhas na etapa em que o código é convertido em grafo antes do treinamento, incluindo um ataque de evasão em que contratos estruturalmente diferentes geram grafos idênticos byte a byte. Os autores confirmam experimentalmente um caso em que um contrato totalmente explorável por reentrância é classificado como seguro porque a aresta que representa a chamada externa maliciosa nunca é construída.

Detectores de vulnerabilidade baseados em GNN (graph neural network) primeiro convertem o código-fonte de um smart contract em um grafo — nós representando variáveis, funções e chamadas, arestas representando relações entre eles — e só depois treinam um modelo sobre esse grafo. A tese central deste paper é que, se essa conversão inicial falha em capturar a semântica do código, nenhuma melhoria no modelo de aprendizado consegue compensar, porque o modelo nunca chega a 'ver' a informação relevante.

Os autores encontram quatro falhas concretas nessa camada de representação do GNNSCVulDetector. A mais grave, do ponto de vista de segurança ofensiva, é que contratos estruturalmente diferentes podem gerar grafos idênticos byte a byte — o que constitui, na prática, um ataque de evasão pronto: basta reescrever um contrato malicioso de forma a cair no mesmo grafo de um contrato benigno já conhecido pelo detector. As outras três falhas explicam por que isso acontece: a extração de grafo depende de uma whitelist fixa de 47 nomes de variáveis, com uma entrada duplicada, então qualquer variável com nome fora dessa lista degrada ou corrompe a representação; e o nó que representa o chamador externo em um ataque de reentrância — o elemento estrutural que literalmente define esse tipo de vulnerabilidade — está ausente até no exemplo mais canônico e citado da literatura.

Como prova de que isso não é só teórico, os autores demonstram um caso controlado em que um contrato de fato explorável por reentrância é classificado como seguro pelo detector, porque a aresta que ligaria a chamada externa ao efeito colateral vulnerável (C -> W, na notação do paper) simplesmente nunca é criada pela etapa de extração de grafo — o modelo nunca teve chance de aprender a detectar aquele padrão, porque ele nunca esteve representado nos dados de treino ou inferência.

O recado prático é duro para quem confia em ferramentas de auditoria de smart contract baseadas em ML: os números de acurácia publicados na literatura foram medidos sob condições que não expõem essas falhas, o que significa que a confiança real depositada nessas ferramentas pode estar superestimada. Os autores são honestos ao dizer que a prevalência desse problema em contratos do mundo real ainda é uma questão em aberto — mas a existência de um ataque de evasão determinístico e reproduzível já é motivo suficiente para tratar essa classe de ferramenta como uma camada a mais de defesa, nunca como a única.

Fonte ↗
0 comentários

Entre para comentar.

Nenhum comentário ainda — seja o primeiro.