最近、ランサムウェアが一部の安全でない MongoDB インストールを攻撃し、データを身代金として保持しました。ここでご紹介するのは、モンゴDBそして、そのデータベースをセキュリティで保護するために実行できるいくつかの手順を検討します。
MongoDBとは
MongoDB は、柔軟なドキュメント データ モデルを使用してデータを保存するオープン ソース データベースです。 MongoDB は、テーブルと行を使用して構築される従来のデータベースとは異なり、コレクションとドキュメントのアーキテクチャを使用します。
MongoDB では、動的なスキーマ設計に従って、コレクション内のドキュメントに異なるフィールドと構造を持たせることができます。データベースは、JSON のようなドキュメントのバイナリ表現を提供する BSON と呼ばれるドキュメント ストレージおよびデータ交換形式を使用します。これにより、特定の種類のアプリケーションのデータ統合がより迅速かつ簡単になります。
読む:Windows 11 に MongoDB をインストールする方法
ランサムウェアは MongoDB データを攻撃します
一連のことがあったランサムウェア攻撃セキュリティが不十分な MongoDB インストールの場合。
数年前、セキュリティ専門家の Victor Gevers は、攻撃を受けて身代金を要求された 200 の MongoDB インストールを発見しました。しかし、別のセキュリティ研究者の報告によれば、感染したインストールはすぐに 2000 DB にまで急増しました。初段創設者はジョン・マザリー氏。その後、最初の報告では、攻撃者が次のことを要求していることが示唆されました。ビットコイン身代金として。
より多くのハッカーが同様のことを行っており、身代金のために不適切に設定されたデータベースにアクセスし、コピーし、削除しています。
MongoDB ランサムウェアはどのようにして侵入するのか
パスワードなしでインターネット経由でアクセスできる MongoDB サーバーがハッカーの標的になっています。したがって、サーバーを実行することを選択したサーバー管理者は、パスワードなしでそして雇用されたデフォルトのユーザー名ハッカーによって簡単に発見されました。
さらに悪いことに、同じサーバーが別のハッカーグループによって再ハッキングされた既存の身代金メモを自分のものに置き換えているため、被害者は自分のデータが回復できるかどうかはおろか、自分が正しい犯罪者にお金を支払っているのかさえ知ることができなくなっています。したがって、盗まれたデータが返されるかどうかはわかりません。したがって、たとえ身代金を支払ったとしても、データは依然として失われている可能性があります。
MongoDBのセキュリティ
サーバー管理者は必ず強力なパスワードおよびデータベースにアクセスするためのユーザー名。 MongoDB のデフォルトのインストールを使用している企業も、次のことをお勧めします。ソフトウェアをアップデートする、認証を設定し、ポート 27017 をロックダウンするハッカーに最も狙われている場所です。
MongoDB データを保護する手順
- アクセス制御と認証を強制する
まずサーバーのアクセス制御を有効にし、認証メカニズムを指定します。認証では、すべてのユーザーがサーバーに接続する前に有効な資格情報を提供する必要があります。
最新のモンゴDB 3.4このリリースでは、ダウンタイムを発生させることなく、保護されていないシステムへの認証を構成できるようになります。
- 役割ベースのアクセス制御のセットアップ
一連のユーザーに完全なアクセスを提供するのではなく、一連のユーザーのニーズに合わせた正確なアクセスを定義するロールを作成します。最小特権の原則に従います。次に、ユーザーを作成し、操作を実行するために必要なロールのみをユーザーに割り当てます。
- 通信の暗号化
暗号化されたデータは解釈が難しく、それをうまく復号化できるハッカーは多くありません。すべての受信接続と送信接続に TLS/SSL を使用するように MongoDB を構成します。 TLS/SSL を使用して、MongoDB クライアントの Mongod コンポーネントと Mongos コンポーネントの間、およびすべてのアプリケーションと 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 は、特定のサーバー側操作 (mapReduce、group、$where) の JavaScript コードの実行をサポートします。これらの操作を使用しない場合は、次のコマンドを使用してサーバー側のスクリプトを無効にします。--noscripting
コマンドラインのオプション。
運用環境では MongoDB ワイヤ プロトコルのみを使用してください。入力検証を有効にしておきます。 MongoDB は、wireObjectCheck 設定を通じてデフォルトで入力検証を有効にします。これにより、mongod インスタンスによって保存されたすべてのドキュメントが有効な BSON であることが保証されます。
- セキュリティ技術導入ガイドをリクエストする (該当する場合)
セキュリティ技術導入ガイド (STIG) には、米国国防総省内での展開のためのセキュリティ ガイドラインが含まれています。 MongoDB Inc. は、要求に応じて、必要な状況に応じて STIG を提供します。詳細については、コピーをリクエストしてください。
- セキュリティ基準への準拠を考慮する
HIPAA または PCI-DSS 準拠を必要とするアプリケーションについては、MongoDB セキュリティ リファレンス アーキテクチャを参照してください。ここ主要なセキュリティ機能を使用して、準拠したアプリケーション インフラストラクチャを構築する方法について詳しく学習します。
MongoDB インストールがハッキングされているかどうかを確認する方法
- データベースとコレクションを確認します。ハッカーは通常、データベースとコレクションを削除し、新しいものと置き換える一方で、元のデータベースとコレクションの身代金を要求します。
- アクセス制御が有効になっている場合は、システム ログを監査して、不正なアクセスの試みや不審なアクティビティを見つけます。データを削除したり、ユーザーを変更したり、身代金要求レコードを作成したりするコマンドを探します。
身代金を支払った後でも、データが返される保証はないことに注意してください。したがって、攻撃後は、さらなる不正アクセスを防ぐためにクラスターを保護することが最優先事項となります。
MongoDB データベースを保護するにはどうすればよいですか?
この記事では、MongoDB データベースを保護するために実行できるいくつかのことと、そのヒントとテクニックのいくつかについて説明します。たとえば、アクセス制御と認証の強制、役割ベースのアクセス制御の構成、通信の暗号化、ネットワーク公開の制限の設定などを行うことができます。これらとは別に、常にデータをバックアップできるように、データを継続的にバックアップすることをお勧めします。安全側です。
MongoDB は安全なデータベースですか?
はい、MongoDB は、ほぼあらゆる目的に使用できる安全なデータベースです。これは、Apache、DynamoDB、Redis などに代わる優れた代替品です。セキュリティについて言えば、これを使用してプロジェクトの作業を完了できます。ユーザーにとってセキュリティを確保するには、いくつかのセキュリティ対策が必要です。
バックアップを作成した場合、最新バージョンを復元するときに、最新のバックアップと攻撃時との間にどのようなデータが変更されたかを評価できます。詳細については、こちらをご覧くださいモンゴデータベース.com。