Cyber security

Mongoaudit – An Audit and Pentesting Tool for MongoDB Databases

Databases typically store sensitive data or data that is important for the company. Mongoaudit helps to audit several technical aspects of running a MongoDB instance and get it properly secured.

Usage and Audience

Mongoaudit is commonly used for Application security or Database security

Target users for this tool are pentesters, security professionals, and system administrators.

Installation

Clone this repository and run the setup:

> git clone https://github.com/stampery/mongoaudit.git
> cd mongoaudit
> python setup.py install
> mongoaudit

Introduction

It is widely known that there are quite a few holes in MongoDB’s default configuration settings. This fact, combined with abundant lazy system administrators and developers, has led to what the press has called the MongoDB apocalypse.

Mongoaudit not only detects misconfigurations, known vulnerabilities, and bugs but also gives you advice on how to fix them, recommends best practices, and teaches you how to DevOp like a pro!

This is what the actual app looks like:


Yep, that’s the material design on a console line interface. (Powered by urwid)

Supported tests

  • MongoDB listens on a port different from the default one
  • The server only accepts connections from whitelisted hosts/networks
  • MongoDB HTTP status interface is not accessible on port 28017
  • MongoDB is not exposing its version number
  • MongoDB version is newer than 2.4
  • TLS/SSL encryption is enabled
  • Authentication is enabled
  • SCRAM-SHA-1 authentication method is enabled
  • Server-side Javascript is forbidden *
  • Roles granted to the user only permit CRUD operations *
  • The user has permission over a single database *
  • Security bug CVE-2015-7882
  • Security bug CVE-2015-2705
  • Security bug CVE-2014-8964
  • Security bug CVE-2015-1609
  • Security bug CVE-2014-3971
  • Security bug CVE-2014-2917
  • Security bug CVE-2013-4650
  • Security bug CVE-2013-3969
  • Security bug CVE-2012-6619
  • Security bug CVE-2013-1892
  • Security bug CVE-2013-2132

Tests marked with an asterisk (*) require valid authentication credentials.

How can I best secure my MongoDB?

Once you run any of the test suites provided by mongoaudit, it will offer you to receive a fully detailed report via email. This personalized report links to a series of useful guides on how to fix every specific issue and how to harden your MongoDB deployments.

For your convenience, we have also published the mongoaudit guides in our Medium publication.

Contributing

We’re happy you want to contribute! You can help us in different ways:

  • Open an issue with suggestions for improvements and errors you’re facing.
  • Fork this repository and submit a pull request.
  • Improve the documentation.

To submit a pull request, fork the mongoaudit repository and then clone your fork:

git clone git@github.com:<your-name>/mongoaudit.git

Make your suggested changes, git push and then submit a pull request.

Author and Maintainers

Maintainers

The mongoaudit project is maintained by:

Legal

License

mongoaudit is released under the [MIT License]

Disclaimer

"With great power comes great responsibility"
  • Never use this tool on servers you don’t own. Unauthorized access to strangers’ computer systems is a crime in many countries.
  • Please use this tool at your own risk. We will accept no liability for any loss or damage which you may incur no matter how caused.
  • Don’t be evil!

You can download mongoaudit tool here

Also Read:

The Hackingsage/Hacktronian – A Pentesting Tool for Linux and Android

BabySploit – Beginner Pentesting Toolkit/Framework Written in Python

GitDump : A Pentesting Tool

Febi

Recent Posts

Shadow-rs : Harnessing Rust’s Power For Kernel-Level Security Research

shadow-rs is a Windows kernel rootkit written in Rust, demonstrating advanced techniques for kernel manipulation…

2 weeks ago

ExecutePeFromPngViaLNK – Advanced Execution Of Embedded PE Files via PNG And LNK

Extract and execute a PE embedded within a PNG file using an LNK file. The…

3 weeks ago

Red Team Certification – A Comprehensive Guide To Advancing In Cybersecurity Operations

Embark on the journey of becoming a certified Red Team professional with our definitive guide.…

3 weeks ago

CVE-2024-5836 / CVE-2024-6778 : Chromium Sandbox Escape via Extension Exploits

This repository contains proof of concept exploits for CVE-2024-5836 and CVE-2024-6778, which are vulnerabilities within…

4 weeks ago

Rust BOFs – Unlocking New Potentials In Cobalt Strike

This took me like 4 days (+2 days for an update), but I got it…

4 weeks ago

MaLDAPtive – Pioneering LDAP SearchFilter Parsing And Security Framework

MaLDAPtive is a framework for LDAP SearchFilter parsing, obfuscation, deobfuscation and detection. Its foundation is…

4 weeks ago