web-dev-qa-db-ja.com

データテンパリングに対してmysqlを保護しますか?

タイトルに記載されているように、データテンパリングからmysqlを保護するにはどうすればよいですか?私は解決策をインターネットで探していましたが、私のニーズを満たすものが見つかりませんでした。

私の問題を説明しましょう。テーブルに機密情報があり、ハッカーが私のデータベースにアクセスできれば、データを簡単に変更できると仮定します。

値をハッシュしてチェックサムを使用できるソリューションがいくつかあることは知っていますが、それはハッカーが再生成して操作することもできます。

データを暗号化するだけでは十分ではありません。これは、ハッカーがアクセスできるサーバー上にキーが存在する必要があるためです。

ここで、ハッカーが私のcpanelアカウント、サーバー(ソースコード)、およびデータベースにアクセスできると仮定します。データが改ざんされていないことを確認するにはどうすればよいですか?

ハッカーがアクセス制限のあるランダムな人物であるか、アクセスの多いインサイダーであるかに関係なく、データの整合性を確保したいと考えています。

Mysqlでブロックチェーンのような堅実なことをすることはおそらく可能ですか?

1
pabloBar

一般に、特に攻撃者がアプリケーションコードにアクセスできるシナリオを見ている場合は、データに変更がないことを完全に確認することはできません。その場合、彼らはおそらくあなたのアプリケーションが行うことは何でもすることができます、そしてあなたは彼らが一度行われたかどうかを知ることができません。

ただし、システムへのアクセスの保護に取り組み、システムへの予期しないアクセスを監視している場合は、何かが変更された場合にかなり良いアイデアを得ることができます。

たとえば、制限付きの特権ユーザーでアプリケーションサーバーのみがデータベースサーバーに接続できる場合、誰かがデータベースの内容を編集できるリスクをすぐに減らすことができます-彼らが関与しない何らかの方法でコードを取得した場合(おそらく古いバックアップファイルから)アプリケーションサーバーを危険にさらしても、データに対して何でもできるようにするには、アプリケーションサーバーを危険にさらす必要があります。

オフライン監査などを実装することもできます。毎日の監査ログを読み取り専用システムとデータベースシステムに保存し、定期的に比較します。誰かが両方のコピーを危険にさらす可能性がある場合は、おそらくより大きな問題が発生しています。

さらに広範なレベルに進むと、データへのアクセスが非常に制限されたデバイスを使用でき、すべてのアクセスがログに記録されます。銀行システムはこのアプローチを採用することがありますが、最大規模のeコマースサイト以外に実装するにはコストがかかりすぎる可能性があります。

0
Matthew