Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
lava — LAVA : Ajout automatisé de vulnérabilités à grande échelle | Kitploit
Outils/GitHubGitHub/panda-re/lava
Analyse des VulnérabilitésFuzzingAnalyse de BinairesArticles et RechercheApprentissage et Éducation
GitHubpanda-re/lava

lava

LAVA : Ajout automatisé de vulnérabilités à grande échelle

Voir le dépôt
41765il y a 1 moisVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

LAVA : Ajout de vulnérabilités à grande échelle automatisé

Publish Lava Package and Container

Lava Tests

Évaluer et améliorer les outils de recherche de bogues est actuellement difficile en raison du manque de corpus de référence (c'est-à-dire des logiciels contenant des bogues connus avec des entrées déclencheuses). LAVA tente de résoudre ce problème en injectant automatiquement des bogues dans les logiciels. Chaque bogue LAVA est accompagné d'une entrée qui le déclenche, alors que les entrées normales ont très peu de chances de le faire. Ces vulnérabilités sont synthétiques mais, selon nous, toujours réalistes, dans le sens où elles sont intégrées profondément dans les programmes et déclenchées par des entrées réelles. Notre travail constitue la base d'une approche permettant de générer à la demande de grands corpus de vulnérabilités de référence, permettant une évaluation rigoureuse des outils et fournissant une cible de haute qualité pour les développeurs d'outils.

LAVA est le fruit d'une collaboration entre le MIT Lincoln Laboratory, NYU et la Northeastern University.

Démarrage rapide

Docker

La dernière version de la branche master de LAVA est automatiquement construite sous forme d'images Docker basées sur Ubuntu 22.04 et publiée sur Docker Hub. La plupart des utilisateurs voudront utiliser le conteneur lava qui contient PANDA et LAVA installés avec leurs dépendances d'exécution, mais sans artefacts de construction ni code source pour réduire la taille du conteneur.

Pour utiliser le conteneur lava, vous pouvez le récupérer depuis Docker Hub :

root@kitploit:~
$ docker pull pandare/lava

Ou le construire à partir de ce dépôt :

root@kitploit:~
$ DOCKER_BUILDKIT=1 docker build lava .

Ubuntu, Debian

Installation locale

Sur un système exécutant Ubuntu 22.04, vous devriez pouvoir simplement exécuter bash install.sh. Notez que ce script d'installation installera des paquets et apportera des modifications à votre système. Vous pouvez supprimer les binaires avec sudo apt-get remove lava.

Une fois l'installation du binaire terminée, vous pouvez installer localement en exécutant pip install python/.

REMARQUE : le paquet Python nécessite un fichier SQL généré lors de la compilation des binaires, placé dans python/src/pyroclastic/data/lava.sql. Sans ce fichier, le paquet Python ne fonctionnera pas correctement.

Installation standard

Vous pouvez également installer manuellement les dépendances de LAVA puis compiler à partir des sources. Téléchargez les paquets Debian situés dans les versions. Installez ensuite le paquet Python : pip install pyroclastic.

Dernières étapes

Utilisation de host.json

Ensuite, exécutez init_host pour générer un fichier host.json dans votre répertoire ~/.lava. Ce fichier est utilisé par LAVA pour stocker des paramètres spécifiques à votre machine. Vous pouvez modifier ces paramètres si nécessaire, mais les valeurs par défaut devraient fonctionner, voir vars.py.

Quelques valeurs à garder à l'esprit sont les suivantes :

  • pguser Il s'agit du nom de l'utilisateur de la base de données, actuellement par défaut postgres
  • host est le nom de la base de données Postgres SQL contenant tous les bogues LAVA. Actuellement, la valeur par défaut est database, mais si vous avez installé LAVA localement, vous devriez probablement la changer en localhost

REMARQUE : Vous avez également besoin de deux variables d'environnement pour la base de données Postgres SQL :

  • POSTGRES_PASS Il s'agit du mot de passe de l'utilisateur Postgres SQL
  • POSTGRES_USER Il s'agit du nom d'hôte de la base de données Postgres SQL

Configurations de projet

Les configurations de projet se trouvent dans le répertoire target_configs, où chaque configuration se trouve à target_configs/projectname/projectname.json. Les chemins spécifiés dans ces fichiers de configuration sont relatifs aux valeurs définies dans votre fichier host.json.

Configuration de la base de données Postgres SQL

Comme mentionné, vous devez créer un utilisateur Postgres SQL. Vous pouvez utiliser un script pour utiliser les variables d'environnement pour les opérations suivantes :

  • Créer l'utilisateur avec le nom d'utilisateur et le mot de passe fournis via les variables d'environnement.
  • Mettre à jour la base de données Postgres SQL sur l'hôte pour accepter le trafic provenant de sources externes (par exemple, le conteneur Docker LAVA)

Utilisation

Enfin, vous pouvez exécuter lava pour injecter réellement des bogues dans un programme. Fournissez simplement le nom d'un projet situé dans le répertoire target_configs, par exemple :

root@kitploit:~
lava -ak toy

Vous devriez maintenant avoir une copie buguée de toy !

Si vous souhaitez injecter des bogues dans une nouvelle cible, vous devrez probablement apporter quelques modifications. Consultez How-to-Lava pour obtenir des conseils.

Documentation

Consultez le dossier docs pour commencer.

Auteurs

LAVA est le résultat de plusieurs années de développement par de nombreuses personnes ; une liste partielle (par ordre alphabétique) des contributeurs figure ci-dessous :

  • 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
Télécharger l’outil