ソフトウェア・ブリッジ
Oracle Database Firewallをインストールするサーバには、最低3つのポートが必要だ。1つは管理用のポートとして使用するが、残り2つのポートで1つのネットワーク・ブリッジを構成する。ブリッジの設定はインストールの際に自動的に構成されるが、このブリッジ上が流れるすべてのネットワークトラフィックがOracle Database Firewallによって監視され、ポリシーの設定に応じてブロックされる。これはインライン方式という構成になる。アプリケーションとデータベース間に直列に配置されるイメージとなり2つのポートは、アプリケーション、データベースのそれぞれに接続される。

ブロッキングを行う際には、必ずインラインの方式が必要になるが、モニタリングのみの使用も可能である。その場合は、以下のようスイッチと並列に配置する。

この場合は、スイッチのSPANポート(ミラーリングポート)に接続し、そのポート経由でネットワークトラフィックに流れるすべてのSQLを受信し記録する。1つのブリッジでは1つのサブネットに対応しており、Oracle Database Firewallでは最大8ポートまでサポートしているので、複数の異なるサブネットを1台で対応することが可能である。
さて、気になるOracle Database Firewallのトランザクションへの影響だが、ブロッキング用途であるインライン方式で1SQLあたりマイクロ秒の値程度のオーバーヘッド、モニタリング用途であるアウトオブバンド方式だとオーバーヘッドはない。ブロッキング、モニタリングを両立しても20万SQL/秒というハイパフォーマンスを実現している。
正確な検知の重要性
SQLをBlockする、Passさせるという処理を行うには当然正確に検知して判断する必要がある。IDSやIPSといったネットワークの侵入検知システム、WAF (Web Application Firewall)等 検知して動作するシステムは、その検知の精度がもっとも重要であるが、Database Firewallについても同様である。
例えば、1秒あたり3000SQL発生した場合、1日 260万SQLが生成される。
0.001%をフォールスポジティブ(誤検知)すると、7,800件/月のアラートが発生することになり、0.00001%をフォールスネガティブ(検出漏れ)すると、26件/月の不正アクセスの可能性がある。
誤検知のアラートが月 7,800件ではとても運用が回らず、人為的なミスから本当のアラートが見逃されてしまう可能性が出てくる。つまり、いかにこのフォールスポジティブとフォールスネガティブの比率を下げるか、検知の正確性が使い勝手の差となることは周知の事実である。
この記事は参考になりましたか?
- oracletechアーカイブス!連載記事一覧
-
- データベース・セキュリティの実装 第4回 最前線の防御を可能にするOracle Datab...
- データベース・セキュリティの実装 第3回 データベースの暗号化とパフォーマンスの両立
- データベース・セキュリティの実装 第2回 ログの取得と監査設計のポイント
- この記事の著者
-
oracletech.jp編集部(オラクルテックジェイピーヘンシュウブ)
oracletech.jpは、オラクル・データベースと関連製品をお使いいただいている皆様、開発に携わっているエンジニアの皆様、オラクル製品を販売いただいている皆様すべてにとって有益な情報源となることを目指しています。エンタープライズ系ITを中心に、製品情報や技術情報からテクノロジー・トレンド、キャンペーンやイベント/セミナー情報まで多岐にわたります。日本オラクルの社員だけでなく...
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です
この記事は参考になりましたか?
この記事をシェア