Недавно вымогатели взломали некоторые незащищенные установки MongoDB и вынесли данные для выкупа. Здесь мы увидим, что такое MongoDB , и рассмотрим некоторые шаги, которые вы можете предпринять для защиты и защиты базы данных MongoDB. Для начала, вот краткое введение в MongoDB.
Содержание
- Что такое MongoDB
- Ransomware атакует данные MongoDB
- Как MongoDB Ransomware красться в
- Безопасность MongoDB
- Действия по защите данных MongoDB
- Как узнать, взломана ли ваша установка MongoDB
Что такое MongoDB
MongoDB – это база данных с открытым исходным кодом, в которой хранятся данные с использованием гибкой модели данных документа. MongoDB отличается от традиционных баз данных, которые создаются с использованием таблиц и строк, тогда как MongoDB использует архитектуру коллекций и документов.
Следуя динамической схеме, MongoDB позволяет документам в коллекции иметь разные поля и структуры. База данных использует формат хранения документов и обмена данными, называемый BSON, который обеспечивает двоичное представление JSON-подобных документов. Это делает интеграцию данных для определенных типов приложений быстрее и проще.
Ransomware атакует данные MongoDB
Недавно Виктор Геверс, исследователь безопасности, написал в Твиттере, что существует ряд атак Ransomware на плохо защищенные установки MongoDB. Атаки начались в декабре прошлого года, около Рождества 2016 года, и с тех пор заразили тысячи серверов MongoDB.
Первоначально Виктор обнаружил 200 объектов MongoDB, которые были атакованы и удержаны с целью получения выкупа. Однако вскоре инфицированные установки взлетели до 2000 БД, как сообщил другой исследователь безопасности, основатель Shodan Джон Мазерли, и к концу 1-й недели 2017 года число скомпрометированных систем превысило 27 000.
Требуется выкуп
Первоначальные сообщения предполагали, что злоумышленники требовали 0,2 биткойна (около 184 долларов США) в качестве выкупа, который был оплачен 22 жертвами. В настоящее время злоумышленники увеличили сумму выкупа и теперь требуют 1 биткойн (около 906 долларов США).
Со времени раскрытия исследователи безопасности выявили более 15 хакеров, вовлеченных в захват серверов MongoDB. Среди них злоумышленник, использующий дескриптор электронной почты kraken0 , скомпрометировал более 15 482 серверов MongoDB и требует 1 биткойн для возврата потерянных данных.
До настоящего времени количество угнанных серверов MongoDB выросло более чем на 28 000, так как все больше хакеров делают то же самое – получают доступ, копируют и удаляют плохо настроенные базы данных для Ransom. Кроме того, к ней присоединилась группа Kraken, которая ранее занималась дистрибуцией Windows Ransomware.
Как MongoDB Ransomware красться в
Серверы MongoDB, которые доступны через Интернет без пароля, были хакерами. Следовательно, администраторы серверов, которые решили запускать свои серверы без пароля и использовали имена пользователей по умолчанию , были легко обнаружены хакерами.
Что еще хуже, есть случаи, когда один и тот же сервер повторно взламывали различные хакерские группы , которые заменяли существующие примечания с требованием выкупа на свои собственные, что лишало жертв возможности узнать, платят ли они даже право преступник, не говоря уже о том, могут ли их данные быть восстановлены. Таким образом, нет уверенности в том, что какие-либо украденные данные будут возвращены. Следовательно, даже если вы заплатили выкуп, ваши данные могут все еще исчезнуть.
Безопасность MongoDB
Администраторы сервера должны обязательно назначить надежный пароль и имя пользователя для доступа к базе данных. Компаниям, использующим установку MongoDB по умолчанию, также рекомендуется обновить свое программное обеспечение , настроить проверку подлинности и заблокировать порт 27017 , на который больше всего напали хакеры.
Действия по защите данных MongoDB
- Принудительное управление доступом и аутентификация
Начните с включения контроля доступа к вашему серверу и укажите механизм аутентификации. Аутентификация требует, чтобы все пользователи предоставили действительные учетные данные, прежде чем они смогут подключиться к серверу.
Последний выпуск MongoDB 3.4 позволяет настроить проверку подлинности для незащищенной системы без простоев.
- Настройка контроля доступа на основе ролей
Вместо того, чтобы предоставлять полный доступ к набору пользователей, создайте роли, которые определяют точный доступ к набору потребностей пользователей. Следуйте принципу наименьших привилегий. Затем создайте пользователей и назначьте им только те роли, которые им необходимы для выполнения их операций.
- Шифрование сообщений
Зашифрованные данные трудно интерпретировать, и не многие хакеры могут успешно их расшифровать. Настройте MongoDB для использования TLS/SSL для всех входящих и исходящих соединений.Используйте TLS/SSL для шифрования связи между компонентами mongod и mongos клиента MongoDB, а также между всеми приложениями и MongoDB.
Используя MongoDB Enterprise 3.2, встроенное ядро хранилища WiredTiger для шифрования в состоянии покоя можно настроить для шифрования данных на уровне хранилища. Если вы не используете шифрование WiredTiger в состоянии покоя, данные MongoDB должны быть зашифрованы на каждом хосте с использованием файловой системы, устройства или физического шифрования.
- Ограничить воздействие на сеть
Для ограничения воздействия на сеть убедитесь, что MongoDB работает в доверенной сетевой среде. Администраторы должны разрешать только доверенным клиентам доступ к сетевым интерфейсам и портам, на которых доступны экземпляры MongoDB.
- Сделайте резервную копию ваших данных
MongoDB Cloud Manager и MongoDB Ops Manager обеспечивают непрерывное резервное копирование с восстановлением на определенный момент времени, и пользователи могут включать оповещения в Cloud Manager для обнаружения, если их развертывание доступно в Интернете.
- Аудит системной активности
Системы аудита периодически будут информировать вас о любых нерегулярных изменениях в вашей базе данных. Отслеживание доступа к базам данных конфигурации и данных. MongoDB Enterprise включает средство аудита системы, которое может записывать системные события в экземпляре MongoDB.
- Запустите MongoDB с выделенным пользователем
Запустите процессы MongoDB с выделенной учетной записью пользователя операционной системы. Убедитесь, что у учетной записи есть разрешения на доступ к данным, но нет ненужных разрешений.
- Запустите MongoDB с параметрами безопасной настройки
MongoDB поддерживает выполнение кода JavaScript для определенных операций на стороне сервера: mapReduce, group и $ where. Если вы не используете эти операции, отключите сценарии на стороне сервера с помощью параметра –noscripting в командной строке.
Используйте только проводной протокол MongoDB в производственных развертываниях. Оставьте входную проверку включенной. MongoDB включает проверку входных данных по умолчанию с помощью параметра wireObjectCheck. Это гарантирует, что все документы, хранящиеся в экземпляре mongod, являются действительными BSON.
- Запросите техническое руководство по внедрению системы безопасности (где применимо)
Техническое руководство по внедрению безопасности (STIG) содержит рекомендации по безопасности для развертываний в Министерстве обороны США. MongoDB Inc. предоставляет STIG по запросу для ситуаций, когда это необходимо. Вы можете запросить копию для получения дополнительной информации.
- Подумайте о соответствии стандартам безопасности
Для приложений, требующих соответствия HIPAA или PCI-DSS, обратитесь к Справочной архитектуре безопасности MongoDB здесь , чтобы узнать больше о том, как вы можете использовать ключевые возможности безопасности для создания совместимой инфраструктуры приложений.
Как узнать, взломана ли ваша установка MongoDB
- Проверьте ваши базы данных и коллекции. Хакеры обычно удаляют базы данных и коллекции и заменяют их новыми, требуя выкуп за оригинал
- Если контроль доступа включен, выполните аудит системных журналов, чтобы обнаружить попытки несанкционированного доступа или подозрительные действия. Ищите команды, которые удалили ваши данные, изменили пользователей или создали запись о требовании выкупа.
Обратите внимание, что нет никаких гарантий, что ваши данные будут возвращены даже после того, как вы заплатили выкуп. Следовательно, после атаки вашим первым приоритетом должна быть защита ваших кластеров, чтобы предотвратить дальнейший несанкционированный доступ.
Если вы делаете резервные копии, то во время восстановления самой последней версии вы можете оценить, какие данные могли измениться с момента последнего резервного копирования и времени атаки. Для получения дополнительной информации вы можете посетить mongodb.com .