Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
lava — LAVA: Adição Automatizada de Vulnerabilidades em Grande Escala | Kitploit
Ferramentas/GitHubGitHub/panda-re/lava
Análise de VulnerabilidadesFuzzingAnálise de BináriosPapers e PesquisaAprendizado e Educação
GitHubpanda-re/lava

lava

LAVA: Adição Automatizada de Vulnerabilidades em Grande Escala

Ver Repositório
4176574há 1 diaRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

LAVA: Adição Automatizada de Vulnerabilidades em Larga Escala

Publish Lava Package and Container

Lava Tests

Avaliar e melhorar ferramentas de detecção de bugs é atualmente difícil devido à escassez de corpora de referência (ou seja, software que possui bugs conhecidos com entradas que os acionam). O LAVA tenta resolver esse problema ao injetar bugs automaticamente em software. Todo bug do LAVA é acompanhado por uma entrada que o aciona, enquanto entradas normais são extremamente improváveis de fazê-lo. Essas vulnerabilidades são sintéticas, mas, argumentamos, ainda realistas, no sentido de que estão embutidas profundamente nos programas e são acionadas por entradas reais. Nosso trabalho forma a base de uma abordagem para gerar grandes corpora de vulnerabilidades de referência sob demanda, possibilitando avaliação rigorosa de ferramentas e fornecendo um alvo de alta qualidade para desenvolvedores de ferramentas.

O LAVA é o produto de uma colaboração entre o MIT Lincoln Laboratory, a NYU e a Northeastern University.

Início Rápido

Docker

A versão mais recente do branch master do LAVA é automaticamente compilada como imagens docker baseadas no Ubuntu 22.04 e publicada no Docker Hub. A maioria dos usuários vai querer usar o contêiner lava, que tem o PANDA e o LAVA instalados junto com suas dependências de runtime, mas sem artefatos de build ou código-fonte para reduzir o tamanho do contêiner.

Para usar o contêiner lava, você pode baixá-lo do Docker Hub:

$ docker pull pandare/lava

Ou compilar a partir deste repositório:

$ DOCKER_BUILDKIT=1 docker build lava .

Ubuntu, Debian

Instalação Local

Em um sistema executando Ubuntu 22.04, você deve conseguir simplesmente executar bash install.sh. Observe que este script de instalação instalará pacotes e fará alterações no seu sistema. Você pode remover os binários usando sudo apt-get remove lava.

Depois de terminar de instalar o binário, você pode instalar localmente executando pip install ..

NOTA que o pacote Python requer um arquivo SQL gerado a partir da compilação dos binários que é colocado em python/src/pyroclastic/data/lava.sql. Sem esse arquivo, o pacote Python não funcionará corretamente.

Instalação regular

Alternativamente, você pode instalar manualmente as dependências do LAVA e então compilar a partir do código-fonte. Baixe os pacotes Debian localizados nas releases. Em seguida, instale o pacote python pip install pyroclastic.

Etapas finais

Utilizando host.json

Em seguida, execute init_host para gerar um host.json no seu diretório ~/.lava. Esse arquivo é usado pelo LAVA para armazenar configurações específicas da sua máquina. Você pode editar essas configurações conforme necessário, mas os valores padrão devem funcionar, veja vars.py.

Alguns valores a ter em mente são os seguintes:

  • pguser Este é o nome do usuário do banco de dados, atualmente o padrão é postgres
  • host é o nome do banco de dados Postgres SQL com todos os bugs do LAVA. Atualmente, o padrão é database, embora, se você instalou o LAVA localmente, provavelmente deve alterá-lo para localhost

NOTA: Você também precisa de duas variáveis de ambiente para o banco de dados Postgres SQL:

  • POSTGRES_PASS Esta é a senha para o usuário do Postgres SQL`
  • POSTGRES_USER Este é o hostname para o banco de dados Postgres SQL

Configurações de projeto

As configurações de projeto estão localizadas no diretório target_configs, onde cada configuração está localizada em target_configs/projectname/projectname.json. Os caminhos especificados dentro desses arquivos de configuração são relativos aos valores definidos no seu arquivo host.json.

Configurando o banco de dados postgres SQL

Como mencionado, você deve criar um usuário do Postgres SQL. Você pode usar um script para usar as variáveis de ambiente para o seguinte:

  • Criar o usuário com o nome de usuário e senha fornecidos a partir das variáveis de ambiente.
  • Atualizar o banco de dados Postgres SQL no host para aceitar tráfego de fontes externas (por exemplo, contêiner Docker do LAVA)

Uso

Por fim, você pode executar lava para realmente injetar bugs em um programa. Basta fornecer o nome de um projeto que esteja no diretório target_configs, por exemplo:

lava -ak toy

Agora você deve ter uma cópia com bugs do toy!

Se você quiser injetar bugs em um novo alvo, provavelmente precisará fazer algumas modificações. Consulte How-to-Lava para orientação.

Documentação

Confira a pasta docs para começar.

Autores

O LAVA é o resultado de vários anos de desenvolvimento por muitas pessoas; uma lista parcial (em ordem alfabética) de contribuidores está abaixo:

  • Andy Davis
  • Brendan Dolan-Gavitt
  • Andrew Fasano
  • Zhenghao Hu
  • Patrick Hulin
  • Amy Jiang
  • Engin Kirda
  • Tim Leek
  • Andrea Mambretti
  • Andrew Quijano
  • Wil Robertson
  • Aaron Sedlacek
  • Rahul Sridhar
  • Frederick Ulrich
  • Ryan Whelan
Baixar ferramenta