A análise estática enfrenta muitos desafios no tratamento de alertas, onde modelos probabilísticos e a ordenação de prioridades dos alertas são métodos chave para aliviar a carga manual do usuário. Esses modelos geralmente dependem do feedback do usuário para ordenar os alertas, melhorando assim a eficiência do processamento. No entanto, os métodos existentes frequentemente são limitados por baixa eficiência e capacidade insuficiente de generalização. Embora os métodos baseados em aprendizado tenham demonstrado certo potencial, eles geralmente vêm acompanhados de altos custos de treinamento e são limitados por estruturas de modelo predefinidas. Além disso, a integração de grandes modelos de linguagem (LLM) na análise estática ainda não explorou totalmente seu potencial, resultando em baixa precisão na identificação de vulnerabilidades. Para enfrentar esses problemas, este artigo propõe uma nova estrutura chamada BinLLM, que utiliza a capacidade de generalização dos LLM para aprimorar o desempenho do modelo probabilístico de alertas por meio do aprendizado de regras. Nossa abordagem introduz regras abstratas geradas pelos LLM no modelo probabilístico, combinando os caminhos de alerta e as instruções-chave da análise estática, fortalecendo a capacidade de inferência do modelo, melhorando efetivamente a taxa de identificação de vulnerabilidades reais e mitigando erros de generalização. Em uma avaliação experimental em um conjunto de programas C, o BinLLM reduziu o número de verificações necessárias para validação de alertas em 40,1 % e 9,4 % em comparação com dois métodos de referência avançados, Bingo e BayeSmith, refletindo plenamente o potencial da combinação de LLM e análise estática para melhorar o gerenciamento de alertas.
Keywords
análise estática; inferência bayesiana; grandes modelos de linguagem; classificação de alertas