Ищем открытые базы данных с помощью сервиса Shodan и аналитики Lampyre.
Перевод оригинальной статьи https://medium.com/@lampyre.io/how-to-find-open-databases-with-the-help-of-shodan-and-lampyre-1d6499003fb
Проблемы с тем, что в некоторых базах данных дефолтные конфигурации небезопасны не новость и широко обсуждается в Сети. Последние новости об утечках данных в American Express Индия и Voxox (крутилась на Амазонском Эластике) лишь доказали, что главная уязвимость системы — это человек.
В MongoDB, Elasticsearch, Cassandra и некоторых других СУБД авторизация по умолчанию отключена и каждый может не только получить содержание таблиц и записей и загрузить его, но также и изменить существующие данные как угодно .
Мы основываясь на недавней информации про доступные без авторизации MongoDB, которая приправлена острым соусом скандала из-за аккаунта с названием Kremlin во многих таких незакрытых базах, будем искать также открытые доступа к таким же MongoDB базам.
Итак,
1. Загрузите установочный пакет Lampyre с официального ресурса разработчика и установите, активировав бесплатную лицензию.
2. В окне List of Requests выберите Shodan Search. Во входных параметрах укажите MongoDB и поставьте период выборки к примеру с 23 по 30 сентября.
4. Нажмите Execute и наслаждайтесь скроллингом по списку полученных MongoDB.
Как бы ни было, этот результат не совсем то, что нам нужно. Shodan индексирует все сервисы, работающие в открытых сетях. Также запрос нам вернул информацию о структуре баз данных: список коллекций (это группа документов согласно концепции MongoDB, список доступных команд и других технические параметры. Эти данные доступны в колонке Data.
Это скриншот примера
Отдельные данные возможно могли измениться с момента индексации поисковиком Shodan, поэтому проверить возможность получения доступа к какой-либо базе данных и какова ее текущая структура мы можем через еще один запрос Explore DB: MongoDB. Данный запрос в режиме реального времени через цепочку VPN-серверов пробует соединиться с найденными MongoDB по IP-адресами, которые используются как входные параметры.
Чтобы сделать выполнение запроса и визуализацию результатов в более удобной форме, мы отправим информацию о найденных через Shodan не требующих аутентификации MongoDB на схему и выберем все принадлежащие им IP-адреса в окне Content, кликнув правой кнопкой мыши по любому из них (чтобы использовать их в качестве входных параметров) и выбрав Explore DB запрос в контекстном меню.
В результате, если в DB не требуется авторизация, получается ее текущая структура, список коллекций с количеством документов и их названий.
Что делать с данными каждый решает для себя сам.