Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
NoSQLMap — Автоматизированный инструмент для перечисления NoSQL баз данных и эксплуатации веб-приложений. | Kitploit
Инструменты/GitHubGitHub/codingo/nosqlmap
Сканеры уязвимостейЭксплуатацияЭксплуатация веб-приложенийСбор информацииТестирование на ПроникновениеБезопасность Баз Данных
GitHubcodingo/nosqlmap

NoSQLMap

Автоматизированный инструмент для перечисления NoSQL баз данных и эксплуатации веб-приложений.

Репозиторий
3.3k6266 месяцев назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

NoSQLMap

Python 2.6|2.7 License Twitter

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

Первоначально созданный @tcsstool, а теперь поддерживаемый @codingo_, NoSQLMap назван в честь популярного инструмента SQL-инъекций sqlmap Бернардо Дамеле и Мирослава Стампара. Его концепции основаны и расширяют отличную презентацию Мина Чоу на Defcon 21, "Abusing NoSQL Databases".

Демонстрация атаки на управление MongoDB с помощью NoSQLMap.

NoSQLMap MongoDB Management Attack Demo

Скриншоты

NoSQLMap

Краткое описание

Что такое NoSQL?

NoSQL (изначально означающее "не SQL", "не реляционная" или "не только SQL") база данных предоставляет механизм для хранения и извлечения данных, который моделируется иными способами, нежели табличные отношения, используемые в реляционных базах данных. Такие базы данных существовали с конца 1960-х годов, но не получили названия "NoSQL" до всплеска популярности в начале XXI века, вызванного потребностями компаний Web 2.0, таких как Facebook, Google и Amazon.com. Базы данных NoSQL всё чаще используются в больших данных и веб-приложениях реального времени. Системы NoSQL иногда называют "Not only SQL", чтобы подчеркнуть, что они могут поддерживать SQL-подобные языки запросов.

Поддержка СУБД

В настоящее время эксплойты инструмента ориентированы на MongoDB и CouchDB, но в будущих релизах планируется дополнительная поддержка других NoSQL-платформ, таких как Redis и Cassandra.

Зависимости

В системах на основе Debian или Red Hat сценарий setup.sh можно запустить от root для автоматической установки зависимостей NoSQLMap.

Зависимости различаются в зависимости от используемых функций:

  • Metasploit Framework,
  • Python с PyMongo,
  • httplib2,
  • и urllib.
  • Локальный экземпляр MongoDB по умолчанию для клонирования баз данных. Инструкции по установке смотрите здесь.

Также требуются некоторые другие библиотеки, которые обычно доступны в стандартной установке Python. Результаты могут отличаться, проверьте сценарий.

Установка

root@kitploit:~
python setup.py install

Альтернативно можно собрать Docker-образ, выполнив:

root@kitploit:~
docker build -t nosqlmap .

или использовать Docker-compose для запуска Nosqlmap:

root@kitploit:~
docker-compose build
docker-compose run nosqlmap

Инструкции по использованию

Начните с

root@kitploit:~
python NoSQLMap

NoSQLMap использует систему меню для построения атак. После запуска NoSQLMap вы увидите главное меню:

root@kitploit:~
1-Set options (do this first)
2-NoSQL DB Access Attacks
3-NoSQL Web App attacks
4-Scan for Anonymous MongoDB Access
x-Exit

Пояснение опций:

root@kitploit:~
1. Set target host/IP — целевой веб-сервер (например, www.google.com) или сервер MongoDB, который вы хотите атаковать.
2. Set web app port — TCP-порт веб-приложения, если целью является веб-приложение.
3. Set URI Path — часть URI, содержащая имя страницы и параметры, но НЕ имя хоста (например, /app/acct.php?acctid=102).
4. Set HTTP Request Method (GET/POST) — установите метод запроса GET или POST; на данный момент реализован только GET, но ведется работа над реализацией POST-запросов, экспортированных из Burp.
5. Set my local Mongo/Shell IP — используйте эту опцию при прямой атаке на экземпляр MongoDB, чтобы указать IP целевой установки Mongo для клонирования баз данных жертв или открытия Meterpreter-шеллов.
6. Set shell listener port — если вы открываете Meterpreter-шеллы, укажите порт.
7. Load options file — загрузить ранее сохранённый набор настроек для пунктов 1-6.
8. Load options from saved Burp request — разобрать запрос, сохранённый из Burp Suite, и заполнить параметры веб-приложения.
9. Save options file — сохранить настройки 1-6 для дальнейшего использования.
x. Back to main menu — используйте это, когда настройки установлены, чтобы начать атаки.

После настройки параметров вернитесь в главное меню и выберите "DB Access Attacks" или "Web App attacks" в зависимости от того, атакуете ли вы порт управления NoSQL или веб-приложение. Остальная часть инструмента основана на "мастере" и достаточно проста, но отправляйте письма на [email protected] или найдите меня в Twitter @codingo_, если у вас есть вопросы или предложения.

Уязвимые приложения

Этот репозиторий также включает намеренно уязвимое веб-приложение для тестирования NoSQLMap. Чтобы запустить это приложение, вам понадобится Docker. Затем выполните следующие команды из каталога /vuln_apps.

root@kitploit:~
docker-compose build && docker-compose up

После завершения вы сможете получить доступ к уязвимому приложению по адресу: https://127.0.0.1:8080/index.html

Скриптинг

CLI также можно использовать в скриптах. Вот пример скрипта, использующего NoSQLMap для обнаружения уязвимостей в vuln_apps:

root@kitploit:~
$ echo  "1. Account Lookup (acct.php)"
$ docker-compose run --remove-orphans nosqlmap \
    --attack 2 \
    --victim host.docker.internal \
    --webPort 8080 \
    --uri "/acct.php?acctid=test" \
    --httpMethod GET \
    --params 1 \
    --injectSize 4 \
    --injectFormat 2 \
    --doTimeAttack n

$ echo "2. User Data Lookup (userdata.php) - JavaScript Injection"
$ docker-compose run --remove-orphans nosqlmap \
    --attack 2 \
    --victim host.docker.internal \
    --webPort 8080 \
    --uri "/userdata.php?usersearch=test" \
    --httpMethod GET \
    --params 1 \
    --injectSize 4 \
    --injectFormat 2 \
    --doTimeAttack n

$ echo "3. Order Data Lookup (orderdata.php) - JavaScript Injection"
$ docker-compose run --remove-orphans nosqlmap \
    --attack 2 \
    --victim host.docker.internal \
    --webPort 8080 \
    --uri "/orderdata.php?ordersearch=test" \
    --httpMethod GET \
    --params 1 \
    --injectSize 4 \
    --injectFormat 2 \
    --doTimeAttack n
Скачать инструмент