
Durchsuchen und Herunterladen öffentlicher Exploits aus der Vulners-Datenbank — online oder vollständig offline über einen lokalen SQLite-FTS5-Index.
Öffentliche Exploits aus der Vulners-Datenbank suchen und herunterladen — online oder vollständig offline aus einem lokalen Index.
API-Schlüssel erhalten · Vulners-Suche · Changelog · Architektur · Sicherheitsrichtlinie

--update-Aufruf erstellt einen lokalen SQLite-FTS5-Index des
gesamten Exploit-Korpus; jede spätere Suche ist eine lokale Abfrage.wordpress 4.7, CVE-2024-3094 und ms17-010
werden wörtlich abgeglichen, während ein bewusster Volltextausdruck weiterhin die volle FTS5-Syntax erhält.--mirror schreibt jeden Exploit-Text in eine eigene Datei.Getsploit benötigt Python 3.11 oder neuer.
$ pipx install getsploit
$ uv tool install getsploit
$ python -m pip install getsploit
Erstelle einen Schlüssel in deinem Vulners-Konto und gib ihn dann über die Umgebung an:
$ export VULNERS_API_KEY="your-key" # pragma: allowlist secret
$env:VULNERS_API_KEY = "your-key" # pragma: allowlist secret
getsploit --set-key speichert einen Schlüssel über eine versteckte Bestätigungsaufforderung in einer privaten
Datei im Getsploit-Homeverzeichnis. Die Umgebungsvariable hat Vorrang vor dieser Datei und ist die bessere Wahl
für die Automatisierung. Es gibt keine --api-key-Option: Ein Schlüssel, der über die Befehlszeile übergeben
wird, landet in der Shell-Historie und in der Prozessliste.
Online-Suche und --update benötigen einen Schlüssel. --local und --status nicht.
$ getsploit CVE-2024-3094
$ getsploit "wordpress 4.7 remote code execution" --count 25
Die Abfrage erreicht Vulners unverändert, sodass ihre Lucene-Syntax wie dokumentiert funktioniert:
$ getsploit 'title:wordpress AND description:"code execution"'
--count über 100 wird transparent paginiert; eine einzelne API-Antwort enthält nie mehr als 100 Dokumente.
$ getsploit --update # Archiv herunterladen und FTS5-Index erstellen
$ getsploit --status # wo es ist, wie groß, wie viele Dokumente
$ getsploit --local wordpress 4.7
Gewöhnliche Suchwörter werden wörtlich abgeglichen, sodass Bezeichner und Versionsnummern wie eingegeben
funktionieren: wordpress 4.7, CVE-2024-3094, ms17-010. Eine Abfrage, die Spaltenfilter, boolesche
Operatoren, Anführungszeichen, Klammern, * oder ^ verwendet, wird als
SQLite-FTS5-Ausdruck behandelt und meldet bei fehlerhafter Syntax einen
eigenen Fehler:
$ getsploit --local 'title:eternalblue AND NOT description:metasploit'
Durchsuchbare Spalten sind id, title, published, description und source_data. Die alte
Schreibweise sourceData: wird weiterhin akzeptiert.
$ getsploit --mirror wordpress 4.7
$ getsploit --local --mirror eternalblue
Die Dateien landen in einem aus der Abfrage abgeleiteten Verzeichnis, eine Datei pro Exploit, erstellt ohne dem Folgen von Symlinks und ohne jemals etwas zu überschreiben, das bereits existiert.
[!WARNING] Gespiegelte Dateien sind nicht vertrauenswürdiger Code von Drittanbietern. Lies sie, bevor du sie ausführst.
$ getsploit --format json CVE-2024-3094
$ getsploit --format jsonl wordpress | jq -r .id
$ getsploit wordpress > results.tsv # umgeleitete Ausgabe ist tabulatorgetrennt
--json bleibt ein Alias für --format json.
$ getsploit --color always query | less -R
$ getsploit --color never query
Die Farbausgabe ist standardmäßig auf auto gesetzt. Ein breites Terminal erhält eine Tabelle, ein schmales
gestapelte Datensätze, und ein umgeleiteter Stream erhält tabulatorgetrennte Werte — dieselben Daten in allen
drei Fällen.
Führe getsploit --help aus, um die vollständige Optionsliste zu erhalten.
| Speicherort | ~/.getsploit/getsploit.db oder $GETSPLOIT_HOME |
| Format | SQLite mit einem FTS5-Index für externe Inhalte |
| Tokenizer | unicode61 remove_diacritics 2 |
| Größe | ungefähr 1,7 GB für den vollständigen Korpus |
| Update | atomar: Die neue Datenbank ersetzt die alte in einem einzigen Vorgang |