💉 Как провести аудит NoSQL на предмет уязвимостей?

SQL-инъекция – один из популярных методов атаки, но он применяется не только в SQL (реляционная база данных), но и в NoSQL (не-SQL или также известная как нереляционная база данных).

Знаете ли вы, что сегодня доступно более 100 баз данных NoSQL?

Спасибо сообществу разработчиков ПО с открытым исходным кодом.

О каком из них вы слышали?

Вероятно, MongoDB и Redis!

Да, они очень популярны.

NoSQL не новость;

Впервые он был представлен в 1998 году Карло Строцци.

Но в последнее время он приобрел большую популярность благодаря использованию в современных приложениях.

И почему бы нет.

Они быстрые и решают некоторые традиционные проблемы с реляционными базами данных.

Существуют различия между SQL и NoSQL.

Более подробно вы можете узнать тут:

Если вы используете базу данных NoSQL, такую как  например MongoDB, и не уверены, подходят ли они для продакшена – выявляйте уязвимости, неправильную конфигурацию и т. д.

Следующие инструменты могут помочь вам в их поиске.

NoSQLMap

NoSQLMap – это крошечная утилита с открытым исходным кодом, основанная на Python, способная проводить аудит на предмет неправильной конфигурации и автоматизировать атаки с использованием инъекций.

На данный момент он поддерживает следующие базы данных.

  • MongoDB
  • CouchDB
  • Redis
  • Cassandra

Для установки NoSQLMap вам понадобится модуль Git, Python и Setuptools, которые вы можете установить ниже на примере Ubuntu.

apt-get install python

apt-get install python-setuptools

После установки Python следуйте инструкциям по установке NoSQLMAP.

git clone https://github.com/codingo/NoSQLMap.git

python setup.py install

После этого вы можете запустить ./nosqlmap.py из клонированного каталога GIT:

_  _     ___  ___  _    __  __

| | |___/ __|/ _ | |  |  /  |__ _ _ __

| .` / _ __  (_) | |__| |/| / _` | '_ 

|_|____/___/_______|_|  |___,_| .__/

 v0.7 codingo@protonmail.com        |_|





1-Set options

2-NoSQL DB Access Attacks

3-NoSQL Web App attacks

4-Scan for Anonymous MongoDB Access

5-Change Platform (Current: MongoDB)

x-Exit

Select an option:

Вам необходимо установить цель, перейдя к варианту 1 перед тестированием.

Mongoaudit

Как можно догадаться по названию, он специфичен для MongoDB.

Mongoaudit хорош для выполнения пентеста, чтобы найти ошибки, неправильную конфигурацию и потенциальные риски.

Он проверяется на соответствие многим передовым практикам, включая следующие.

  • Работает ли MongoDB на порту по умолчанию и включен интерфейс HTTP

  • Защищена ли база с помощью TLS, аутентификации

  • Метод аутентификации

  • CRUD операции

Установить Mongoaudit очень просто.

Вы можете использовать команду pip.

pip install mongoaudit

После установки выполните команду mongoaudit, чтобы запустить сканирование.

Вам будет предложено выбрать уровень сканирования и ввести сведения о MongoDB.

Какой бы инструмент вы ни использовали для сканирования безопасности баз данных NoSQL, не забывайте нести ответственность.

Вы должны убедиться, что работаете со своим собственным экземпляром базы данных или авторизованы для запуска теста.

И ознакомьтесь с этой статьей, чтобы найти уязвимость SQL-инъекций в реляционной базе данных.



2020-10-05T09:52:32
Аудит ИБ