
getsploit v3.0.1
Busca y descarga exploits públicos de la base de datos de Vulners — en línea, o totalmente sin conexión desde un índice local SQLite FTS5.
Getsploit
Busca y descarga exploits públicos de la base de datos de Vulners — en línea, o totalmente sin conexión desde un índice local.
Obtén una clave API · Búsqueda de Vulners · Registro de cambios · Arquitectura · Política de seguridad

Por qué Getsploit
- 🔎 Una consulta, todas las colecciones. Exploit-DB, Metasploit, Packet Storm, Zero Day Initiative, pruebas de concepto de GitHub y más, todo indexado por Vulners.
- 📴 Funciona sin conexión de red. Un solo
--updatecrea un índice FTS5 local de SQLite con todo el corpus de exploits; cualquier búsqueda posterior es una consulta local. - 🧠 Busca lo que escribiste.
wordpress 4.7,CVE-2024-3094yms17-010coinciden literalmente, mientras que una expresión de texto completo deliberada sigue usando toda la sintaxis de FTS5. - 📊 Progreso en el que puedes confiar. Cada etapa de una actualización informa cifras reales, y las dos etapas cuyo tamaño no se puede conocer lo dicen explícitamente en lugar de inventar un porcentaje.
- 🧾 Amigable con tuberías (pipes). JSON, JSON Lines y registros estables separados por tabulaciones cuando la salida se redirige. Ningún color ni decoración llega jamás a un formato de máquina.
- 💾 Conserva la fuente.
--mirrorescribe el cuerpo de cada exploit en su propio archivo. - 🔐 Cuidado con tus datos. La clave nunca es un argumento de línea de comandos, el archivo de clave se abre sin seguir enlaces simbólicos y el contenido descargado nunca se ejecuta.
- 🧪 Verificado. 100 % de cobertura de sentencias y ramas en Python 3.11 a 3.14, en Linux, macOS y Windows.
Instalación
Getsploit necesita Python 3.11 o superior.
$ pipx install getsploit
$ uv tool install getsploit
$ python -m pip install getsploit
Clave API
Crea una clave en tu cuenta de Vulners y luego expónla a través del entorno:
$ export VULNERS_API_KEY="your-key" # pragma: allowlist secret
$env:VULNERS_API_KEY = "your-key" # pragma: allowlist secret
getsploit --set-key guarda una clave mediante un aviso de confirmación que oculta la entrada, en un archivo
privado dentro del directorio de Getsploit. El entorno tiene prioridad sobre ese archivo y es
la mejor opción para la automatización. No existe la opción --api-key: una clave pasada por la
línea de comandos termina en el historial del shell y en la lista de procesos.
La búsqueda en línea y --update necesitan una clave. --local y --status no.
Uso
Búsqueda en línea
$ getsploit CVE-2024-3094
$ getsploit "wordpress 4.7 remote code execution" --count 25
La consulta llega a Vulners sin cambios, por lo que su sintaxis de Lucene funciona tal como está documentada:
$ getsploit 'title:wordpress AND description:"code execution"'
--count por encima de 100 se pagina de forma transparente; una sola respuesta de la API nunca contiene más
de 100 documentos.
Búsqueda sin conexión
$ getsploit --update # descarga el archivo y crea el índice FTS5
$ getsploit --status # dónde está, cuánto ocupa, cuántos documentos tiene
$ getsploit --local wordpress 4.7
Las palabras de búsqueda normales se comparan literalmente, por lo que los identificadores y números de versión funcionan tal
como se escriben: wordpress 4.7, CVE-2024-3094, ms17-010. Una consulta que usa filtros de columna,
operadores booleanos, comillas, paréntesis, * o ^ se trata como una
expresión FTS5 de SQLite y notifica su propio error
cuando está mal formada:
$ getsploit --local 'title:eternalblue AND NOT description:metasploit'
Las columnas en las que se puede buscar son id, title, published, description y source_data. La
grafía heredada sourceData: todavía se acepta.
Guardar fuentes de exploits
$ getsploit --mirror wordpress 4.7
$ getsploit --local --mirror eternalblue
Los archivos se guardan en un directorio derivado de la consulta, un archivo por exploit, creado sin seguir enlaces simbólicos y sin sobrescribir nunca nada que ya exista.
[!WARNING] Los archivos reflejados son código de terceros no confiable. Léelos antes de ejecutarlos.
Salida legible por máquina
$ getsploit --format json CVE-2024-3094
$ getsploit --format jsonl wordpress | jq -r .id
$ getsploit wordpress > results.tsv # la salida redirigida está separada por tabulaciones
--json sigue siendo un alias de --format json.
Control de terminal
$ getsploit --color always query | less -R
$ getsploit --color never query
El color predeterminado es auto. Una terminal ancha muestra una tabla, una estrecha muestra
registros apilados y una secuencia redirigida obtiene valores separados por tabulaciones: los mismos datos en los tres casos.
Ejecuta getsploit --help para ver la lista completa de opciones.
La base de datos local
| Ubicación | ~/.getsploit/getsploit.db, o $GETSPLOIT_HOME |
| Formato | SQLite con un índice FTS5 de contenido externo |
| Tokenizador | unicode61 remove_diacritics 2 |
| Tamaño | aproximadamente 1.7 GB para el corpus completo |
| Actualización | atómica: la nueva base de datos reemplaza a la anterior en una sola operación |