web-dev-qa-db-ja.com

DBアクセスのみを挿入すると、追加のセキュリティが提供されますか

公開されているWebノードが侵害された場合、攻撃者がすべてのデータにアクセスできるという懸念があります。外部ユーザーから入力されたデータは、内部ユーザーだけがアクセスする必要があるだけです。

Webノードに挿入アクセスのみを与え、内部に面したノードからの読み取り/書き込みアクセスのみを許可する場合、追加のセキュリティは提供されますか?

関連するアイデアは、メッセージングを使用して、すべてのDB変更を処理するWebノードから内部ノードに書き込みメッセージを渡すことです。

私の直感は、これらはどちらもWebノード違反でのデータ漏洩を軽減するだろうと私に言っています。見落としていることはありますか?

10
user3282193

短い答えは「はい」です。これらの外部ユーザーが入力している情報を攻撃者が取得することをより困難にするため、追加のセキュリティが提供されます。

長い答えは、集中攻撃者は次のことができるということです。

  1. 侵害されたWebノードを使用して、外部ユーザーを彼のサーバーにハイジャックするか、マルウェアを挿入します。おそらく、ページソースにアクセスできるため、Webインターフェースにほとんど違いがありません。
  2. 侵害されたWebノードを使用して、外部ユーザーが入力した将来のデータをキャプチャし、このデータをサーバーに転送してキャプチャします。これにより、データベースの一部を長期間複製します
  3. 時間の経過とともにWebノードから内部ネットワークにトラバースします。たとえば、データベースインターフェイスまたはWebノードに公開するその他のインターフェイスにある新しいセキュリティホールを通過します。
15
calloc_org

絶対に!ただし、用語は挿入のみuserになります。引き続き同じDBを使用します。

ほとんどのデータベースサーバーには、OSのアクセス制御とは独立した内部的にアクセス制御の概念があります。

基本的に、挿入のみのユーザーはINSERT特権のみを持ち、次に挿入する必要がある特定のテーブルに対してのみ特権を持ちます。

これはSQLi攻撃の範囲をかなり制限します。

参照: 別のユーザーデータベースにセキュリティ上の利点は何ですか?

7
Bryan Field