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

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

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

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

工具目录

分类

查看所有分类
Loading categories
nosqli — NoSQL注入CLI工具,用于发现使用MongoDB的易受攻击网站。 | Kitploit
工具/GitHubGitHub/charlie-belmer/nosqli
漏洞扫描器Web应用程序漏洞利用Web安全渗透测试
GitHubcharlie-belmer/nosqli

nosqli

NoSQL注入CLI工具,用于发现使用MongoDB的易受攻击网站。

查看仓库网站
414444年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

NoSQL注入器 Tweet

标题图片 一个快速的NoSQL扫描器和注入器。用于发现易受NoSQL注入攻击的网站,特别是MongoDB。

关于Nosqli

我想要一个更好的NoSQL注入工具,它应该易于使用、完全基于命令行并且可配置。为此,我开始开发nosqli——一个用Go编写的简单NoSQL注入工具。

它的目标是快速、准确且高度可用,并拥有易于理解的命令行界面。

特性

Nosqli目前支持Mongodb的NoSQL注入检测。它运行以下测试:

  • 基于错误注入 - 注入各种字符和有效载荷,在响应中搜索已知的Mongo错误
  • 布尔盲注入 - 使用真/假有效载荷注入参数,尝试判断是否存在注入
  • 时间注入 - 尝试在服务器中注入时间延迟,以测量响应。

安装

下载最新二进制版本适用于您的操作系统,并将其安装在您的PATH中,或者从本地文件夹运行。

路线图

我计划添加数据提取功能。如果您希望看到其他功能或配置选项,请提交拉取请求或问题!

使用nosqli

它应该是自文档化的,只需运行命令并阅读帮助文件即可。

root@kitploit:~
$ nosqli
NoSQLInjector is a CLI tool for testing Datastores that 
do not depend on SQL as a query language. 

nosqli aims to be a simple automation tool for identifying and exploiting 
NoSQL Injection vectors.

Usage:
  nosqli [command]

Available Commands:
  help        Help about any command
  scan        Scan endpoint for NoSQL Injection vectors
  version     Prints the current version

Flags:
      --config string       config file (default is $HOME/.nosqli.yaml)
  -d, --data string         Specify default post data (should not include any injection strings)
  -h, --help                help for nosqli
  -p, --proxy string        Proxy requests through this proxy URL. Defaults to HTTP_PROXY environment variable.
  -r, --request string      Load in a request from a file, such as a request generated in Burp or ZAP.
  -t, --target string       target url eg. http://site.com/page?arg=1
  -u, --user-agent string   Specify a user agent

Use "nosqli [command] --help" for more information about a command.

$ nosqli scan -t http://localhost:4000/user/lookup?username=test
Running Error based scan...
Running Boolean based scan...
Found Error based NoSQL Injection:
  URL: http://localhost:4000/user/lookup?=&username=test
  param: username
  Injection: username='

您可以使用我的易受攻击的Node.js应用程序或其他NoSQL注入实验室来测试该工具。

在选择目标URL时,请确保所有可测试的参数都出现在URL中。例如,假设一个站点在/user/lookup处有一个带搜索表单的页面。在字段中输入一些数据后,URL会变为/user/lookup?username=。如果您只扫描/user/lookup,工具将找不到可能的注入。要正确扫描,请确保使用包含所有参数的完整URL(在本例中为/user/lookup?username=)。

从源码构建

如果您更喜欢从源码构建,或者没有适用于您平台的编译二进制文件,您可以通过克隆仓库、安装依赖并手动构建项目来实现。这需要较新的Go版本以及正确的GOPATH环境变量。

root@kitploit:~
$ git clone https://github.com/Charlie-belmer/nosqli
$ cd nosqli
$ go get -u -d ./...
$ go install
$ nosqli -h

运行测试

包含一个不错的测试套件。可以通过从根目录运行go test来执行单元测试以及简单的注入覆盖:

root@kitploit:~
go test ./...

还提供了集成测试,针对本地运行的已知易受攻击的应用程序运行注入。要使用集成测试,请安装并运行易受攻击的Node.js Mongo注入应用以及我的易受攻击的PHP实验室分支,该分支来自digininja。记得浏览到每个站点并重置数据库!然后传入集成测试标志:

root@kitploit:~
go test ./... -args -integrations=true

如果找不到任一环境,集成测试将被某个测试用例禁用,以加快测试运行速度。

贡献

欢迎贡献!请提交拉取请求或提出问题进行讨论。

贡献者许可

除非您另有说明,否则即视为您向nosqli项目授予无限制、非排他性的权利,以重复使用、修改和重新许可您贡献的代码。该项目将始终以开源形式提供,但这一点很重要,因为无法重新许可代码曾给其他自由软件项目(如KDE和NASM)带来毁灭性问题。如果您希望为自己的贡献指定特殊的许可条件,请在提交时说明。

下载工具