0

クライアント サイトの 1 つでセキュリティを強化することを検討しています。支払いプロバイダーが設定されていないため、機密性の高い口座振替情報は mySql サーバー上にある必要があります。この口座引落し情報は、経理部門のユーザーが判読できる必要があります。

テストサーバーは次のように設定されています。

  1. 現在、メイン サイトは wordpress ブログに置かれています。
  2. お客様は、EV SSL 証明書を使用して HTTPS 暗号化フォームに記入します。
  3. データはワードプレスのデータベースとは別のデータベースに保存されます。
  4. 口座振替の詳細は現在プレーンテキストとして保存されています

パート 4 が気になるところですが、現時点では問題ありません。テスト サーバー上でのみです。

4

2 に答える 2

1

これは、このデータをどこまで保護する必要があるかによって異なるため、答えるのは非常に困難です。

最初のステップは、誰かがデータベースのダンプを取得した場合に備えて、mysql に保存されているすべての詳細を明らかに暗号化することです。

このソリューションは優れていますが、誰かがアプリケーション サーバーから復号化キーを取得した場合、いずれにせよデータベースのダンプを復号化できるという脆弱性が生じます。

ここから考慮すべき多くの解決策があります。いくつかの調査で適切なものを見つけることができるはずですが、頭に浮かぶ1つの方法は次のとおりです。

公開/秘密鍵暗号化アルゴリズムを使用して、アプリケーション サーバー上のデータを暗号化できます。公開鍵は、アプリケーション サーバー上に存在するストレージ用の情報を暗号化するためにのみ使用できます。それがハッキングされた場合、彼らができる唯一のことは、データベースにデータを追加することだけです =/. この場合の秘密鍵は、人間がこの情報を見る必要があるたびに入力する必要があるパスワードになります。

これには、データが表示されるまで完全に暗号化されて移動するため、データに対して機械処理を行うことができないという明らかな欠点があります。

(そして、誰かがアプリケーションサーバーにアクセスして、キーを一時的に保存する必要があるセッションファイル/memcache を単にダンプするという脆弱性がまだあります)

正直なところ、最初に行うことは、データベース全体を何らかの方法で暗号化することです。それだけで、まともな保護層が追加されます。ほとんどの場合、データベースのダンプは、サーバーのファイル システムにアクセスするよりも簡単です。

于 2013-03-04T01:39:06.967 に答える
0

銀行口座の詳細やクレジット カードの詳細、またはその両方について話しているのですか?

クレジット カードの詳細を保存すると、PCI 要件を満たすことが付随することに注意してください。

また、機密情報を保存する予定がある場合は、決して暗号化せずに保存しないでください。

ご不明な点がございましたら、お知らせください。

ファビオ @fcerullo

于 2013-03-04T13:40:25.903 に答える