diff --git a/README.md b/README.md index 472f02e..3a4a753 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,14 @@
-

mongoaudit

+

mongoaudit

Build Status + Code Health Code Climate Issue Count

-

mongoaudit is a CLI tool for auditing MongoDB servers, detecting poor security settings and performing automated penetration testing.

+

:sparkles: mongoaudit is a CLI tool for auditing MongoDB servers, detecting poor security settings and performing automated penetration testing. :sparkles:

-

Install

+

1-line install

```bash curl https://mongoaud.it/install | sh @@ -15,13 +16,19 @@ curl https://mongoaud.it/install | sh works on Mac OS X, GNU/Linux and Bash for Windows 10 +Then run `mongoaudit` command and voilà! :boom: +

Introduction

-MongoDB’s original designers paid much more attention to performance, scalability and ease of use than to security. It is widely known that there are quite a few holes in its default configuration settings. This fact, combined with abundant lazy system adiministrators and developers, has led to what the press has called the _[MongoDB apocalypse](http://thenextweb.com/insider/2017/01/08/mongodb-ransomware-exists-people-bad-security/)_. +

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

+ +

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

-
- mongoaudit screenshot - Yes, that's material design on a console line interface. -
+

This is how the actual app looks like:

+ +

+ mongoaudit screenshot +
Yep, that's material design on a console line interface. :smirk: +

Supported tests

@@ -34,8 +41,8 @@ MongoDB’s original designers paid much more attention to performance, scalabil * Authentication is enabled * SCRAM-SHA-1 authentication method is enabled * Server-side Javascript is forbidden -* Roles granted to the provided user only permit CRUD operations -* The provided user has permissions over a single database +* Roles granted to the user only permit CRUD operations * +* The user has permissions over a single database * * Security bug CVE-2015-7882 * Security bug CVE-2015-2705 * Security bug CVE-2014-8964 @@ -49,12 +56,21 @@ MongoDB’s original designers paid much more attention to performance, scalabil * Security bug CVE-2013-2132 +_Tests marked with an asterisk (`*`) require valid authentication credentials._ + + +

How can I better 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](https://medium.com/mongoaudit) :newspaper:. +

Contributing

-We're happy you want to contribute! You can help us in different ways: +We're happy you want to contribute! :tada: 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 +* 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: @@ -70,13 +86,13 @@ Make your suggested changes, `git push` and then submit a pull request.

License

mongoaudit is released under the [MIT License](https://github.com/stampery/mongoaudit/blob/master/LICENSE). -

Disclaimer

+

Disclaimer :warning:

"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 is 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! +* Don't be evil! :trollface:

Suport and trademarks

This software is not supported or endorsed in any way by MongoDB Inc., Compose Inc., ObjectsLab Corporation nor other products or services providers it interoperates with. It neither tries to mimic or replace any software originally conceived by the owners of those products and services. In the same manner, any third party's trademark or intellectual property that may appear in this software must be understood as a strictly illustrative reference to the service provider it represents, and is never used in any way that may lead to confusion, so no abuse is intended. diff --git a/src/picmagic.py b/src/picmagic.py index e442170..4054ff4 100644 --- a/src/picmagic.py +++ b/src/picmagic.py @@ -18,7 +18,7 @@ def read(path, align='left'): def line_process(line): return urwid.AttrMap(urwid.Text(map(pixel_process, line), wrap='clip', align=align), 'pic') - base_path = sys._MEIPASS if hasattr(sys, '_MEIPASS') else os.path.abspath(".") + base_path = getattr(sys, '_MEIPASS', os.path.abspath(".")) with open(os.path.join(base_path, 'rsc/' + path), 'r') as file_to_read: bytes_read = file_to_read.read() diff --git a/src/widgets.py b/src/widgets.py index 0c862d0..c6bf046 100644 --- a/src/widgets.py +++ b/src/widgets.py @@ -179,7 +179,7 @@ def __init__(self, content, field_labels, btn_label, callbacks): [content, input_fields, error_row]), footer=footer) urwid.WidgetWrap.__init__(self, card) - def next(self, _button=None): + def next(self): self.callbacks['next'](form=self, **(self.get_field_values())) def get_field_values(self):