Skip to content
KitploitKITPLOIT
OutilsBlog
Log in
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
git-vuln-finder — Détection de vulnérabilités logicielles potentielles à partir des messages de commit git | Kitploit
Outils/GitHubGitHub/cve-search/git-vuln-finder
OSINT (Renseignement de Sources Ouvertes)Analyse des VulnérabilitésAnalyse de Code
GitHubcve-search/git-vuln-finder

git-vuln-finder

Détection de vulnérabilités logicielles potentielles à partir des messages de commit git

Voir le dépôtSite web
426589il y a 2 ansVé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

git-vuln-finder

git-vuln-finder logo

Workflow

Trouver les potentielles vulnérabilités logicielles à partir des messages de commit git. Le format de sortie est un JSON avec le commit associé qui pourrait contenir un correctif concernant une vulnérabilité logicielle. La recherche est basée sur un ensemble d'expressions régulières portant uniquement sur les messages de commit. Si des identifiants CVE sont présents, ils sont ajoutés automatiquement dans la sortie. L'entrée peut être n'importe quel dépôt git ou une source d'archive GH.

Prérequis

  • jq (sudo apt install jq)
  • Python Poetry

Installation

Utilisation comme bibliothèque

git-vuln-finder peut être installé avec poetry. Si vous n'avez pas poetry installé, vous pouvez exécuter la commande suivante curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python.

$ poetry install
$ poetry shell
$ git-vuln-finder -h

Vous pouvez aussi utiliser pip. Il suffit alors de l'importer :

Python 3.8.0 (default, Dec 11 2019, 21:43:13)
[GCC 9.2.1 20191008] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from git_vuln_finder import find
>>> all_potential_vulnerabilities, all_cve_found, found = find("~/git/curl")

>>> [commit for commit, summary in all_potential_vulnerabilities.items() if summary['state'] == 'cve-assigned']
['9069838b30fb3b48af0123e39f664cea683254a5', 'facb0e4662415b5f28163e853dc6742ac5fafb3d',
... snap ...
 '8a75dbeb2305297640453029b7905ef51b87e8dd', '1dc43de0dccc2ea7da6dddb7b98f8d7dcf323914', '192c4f788d48f82c03e9cef40013f34370e90737', '2eb8dcf26cb37f09cffe26909a646e702dbcab66', 'fa1ae0abcde5df8d0b3283299e3f246bedf7692c', 'c11c30a8c8d727dcf5634fa0cc6ee0b4b77ddc3d', '75ca568fa1c19de4c5358fed246686de8467c238', 'a20daf90e358c1476a325ea665d533f7a27e3364', '042cc1f69ec0878f542667cb684378869f859911']

 >>> print(json.dumps(all_potential_vulnerabilities['9069838b30fb3b48af0123e39f664cea683254a5'], sort_keys=True, indent=4, separators=(",", ": ")))
 {
     "author": "Daniel Stenberg",
     "author-email": "[email protected]",
     "authored_date": 1567544372,
     "branches": [
         "master"
     ],
     "commit-id": "9069838b30fb3b48af0123e39f664cea683254a5",
     "committed_date": 1568009674,
     "cve": [
         "CVE-2019-5481",
         "CVE-2019-5481"
     ],
     "language": "en",
     "message": "security:read_data fix bad realloc()\n\n... that could end up a double-free\n\nCVE-2019-5481\nBug: https://curl.haxx.se/docs/CVE-2019-5481.html\n",
     "origin": "https://github.com/curl/curl.git",
     "origin-github-api": "https://api.github.com/repos///github.com/curl/curl/commits/9069838b30fb3b48af0123e39f664cea683254a5",
     "pattern-matches": [
         "double-free"
     ],
     "pattern-selected": "(?i)(double[-| ]free|buffer overflow|double free|race[-| ]condition)",
     "state": "cve-assigned",
     "stats": {
         "deletions": 4,
         "files": 1,
         "insertions": 2,
         "lines": 6
     },
     "summary": "security:read_data fix bad realloc()",
     "tags": []
 }

Utilisation comme outil en ligne de commande

$ git clone https://github.com/cve-search/git-vuln-finder.git
$ cd https://github.com/cve-search/git-vuln-finder.git
$ pip install .
$ git-vuln-finder --help

Vous pouvez aussi utiliser pip. pipx installe les scripts (disponibles à l'échelle du système) fournis par les paquets Python dans des environnements virtuels séparés pour les isoler de votre système et les uns des autres.

Utilisation

usage: git-vuln-finder [-h] [-v] [-r R] [-o O] [-s S] [-p P] [-c] [-t] [-gh GH]

Finding potential software vulnerabilities from git commit messages.

optional arguments:
  -h, --help  show this help message and exit
  -v          increase output verbosity
  -r R        git repository to analyse
  -o O        Output format: [json]
  -s S        State of the commit found
  -p P        Matching pattern to use: [vulnpatterns, cryptopatterns, cpatterns] - the pattern 'all' is used to match all the patterns at once.
  -c          output only a list of the CVE pattern found in commit messages (disable by default)
  -t          Include tags matching a specific commit
  -gh GH      special option for gharchive, pass a file containing a PushEvent in JSON format

More info: https://github.com/cve-search/git-vuln-finder

Modèles

git-vuln-finder est livré avec 3 modèles par défaut qui peuvent être sélectionnés pour trouver les potentielles vulnérabilités décrites dans les messages de commit, tels que :

  • vulnpatterns est un modèle de vulnérabilité générique ciblant particulièrement les applications web et les messages de commit de sécurité génériques. Basé sur un article académique.
  • cryptopatterns est un modèle de vulnérabilité pour les erreurs cryptographiques mentionnées dans les messages de commit.
  • cpatterns est un ensemble de modèles de vulnérabilité standard pour les langages de type C/C++.

Un exemple de sortie partielle du dépôt git Curl

Télécharger l’outil