診断ツールでデータベースの健全性を保つ
データベースの脆弱性評価ツールを積極的に活用することによって、セキュリティ上どのような効果が狙えるのか、いくつか例を挙げて紹介します。
狙いその1:内部の人為的ミス・不正行為に備える
●権限チェック
データベース脆弱性評価ツールでは、データベースに登録されているすべてのユーザーアカウントがどのようなアクセス権限を所持しているのかをチェックできます。それにより、一般ユーザーアカウントが必要以上に高い権限を持っていたり、データベース管理者がデータ操作をしてはならないテーブルの更新権限を持っていたりといった問題を洗い出すことができます。
●認証処理
パスワード設定に関するよくある脆弱性問題として「デフォルトパスワードをそのまま運用している」というものがあります。脆弱性評価ツールでは、このようなアカウントが登録されたままとなっている状況を見つけ出したり、データベース利用者が容易に推測できるようなパスワードを設定していないかどうかまで確認が可能です。また、長期間パスワードを更新していない利用者の洗い出し、パスワードの入力ミスを繰り返した場合のログイン、ロック設定、パスワード設定時の強度チェック(最小文字数、文字タイプの組み合わせ、使用禁止ワードなどのチェック)など、アカウントの状況を日々の運用の中で継続して行うことができます。
パスワードのセキュリティで見落としがちな点としては、データベースアカウントの認証情報(ID/パスワード)の秘匿性があります。利用者によるID/パスワードの直接入力で認証する場合の通信はHTTPSなどで暗号化されていても、データベースインスタンス間を連携させるデータベースリンクのパケット内ではデータベースアカウントの認証情報がプレーンテキストのままであることです。このような問題は、データベースの設定次第で通信自体は暗号化処理をしなくても、認証文字列を暗号文字列として送るといったことが可能です。脆弱性評価ツールであれば、このような見落としがちな脆弱性までチェックすることができます。
●データベースインスタンスの検出
会社内には、しっかりと管理されている基幹データベース以外に、監査部門もしくはセキュリティ 監督部門が認識しきれていないデータベースインスタンスが存在していることが往々にしてあります。例えば、ある営業部門が利便性のために自分たちの部署が必要とする顧客リストや契約内容の複製データを、部門で構築したデータベースインスタンスに格納しているような状況です。
こうしたローカルデータベースはMySQLやPostgreSQLなどのオープンソースデータベースを利用しているケースが多かったり、中にはOracleなどのライセンスが必要なデータベースを正規のライセンスなしに使用してしまっていることもないとはいいきれません。基幹にあるデータベースのセキュリティ管理は万全であったとしても、このようなローカルインスタンスのデータベースから重要なデータが漏えいしてしまう危険性があります。
脆弱性評価ツールが持つデータベース検出機能を使うことによって、セキュリティ部門のコントロール外のデータベースインスタンスを見つけ出し、その用途や保持しているデータの内容をしっかりと把握し、セキュリティのコントロール下に置くことができます。
狙いその2:バックドアからの侵入に備える
●最新セキュリティパッチの適用
データベースのバグや、バグを踏み台にした脆弱性といったものが日々新たに見つかり、データベースベンダから最新のセキュリティパッチがリリースされています。データベース管理者はベンダからの情報を常にチェックして、新たなパッチのリリースがあったときは、そのバグの内容と影響および対処方法を調査し、対応策の検討が必要になります。しかし、このようなバグの内容把握と、社内にあるデータベースインスタンスへの影響範囲を洗い出すことは多くの工数を必要とします。
脆弱性評価ツールには、データベースベンダから最新のセキュリティパッチがリリースされたタイミングで、そのパッチの適用状況をチェックする機能があり、あたかもウイルスチェックソフトのシグネチャ定義のように最新のチェックモジュールとしてオンラインで更新される仕組みが実装されています。これにより、社内に複数存在しているデータベースインスタンスの中からパッチ適用が必要となる対象のインスタンスをピックアップし、パッチ情報と併せて管理者に通知メールを自動送信するといった運用が可能になり、データベース管理者の工数削減と対応漏れのリスクをなくせます。
●不必要なプロシージャやサービスは無効にする
データベースには、非常に柔軟な処理を行うことができるプロシージャやサービスといった機能があります。これらはプログラム開発においてはとても役に立つ機能ですが、その柔軟性があだとなり、ときにはセキュリティ上の脅威となる両刃の剣といえます。
正しいコールの仕方さえしていれば何ら問題を引き起こさないプロシージャも、ある特殊なコールの仕方をしたときにバッファーオーバーフローを引き起こし、攻撃の踏み台にされることもあります。脆弱性評価ツールは、こうした危険性を抱えたプロシージャやサービスがどのようにコンフィグレーションされているかをすべて洗い出し、最適なアドバイスを管理者に提供します。
●図3 脅威となり得るプロシージャの例:xp_cmdshell(SQL Server、Sybase)上記の例では、Cドライブのファイルのリストを作成しているだけだが、データベースユーザーアカウントの権限設定が適切になされていない場合には、権限の範囲内においてファイル削除などのコマンドが実行できてしまう。
2/3 |
Index | |
診断ツールでデータベースの健全性を保つ | |
Page 1 データベースの脆弱性評価とは? |
|
Page 2 狙いその1:内部の人為的ミス・不正行為に備える 狙いその2:バックドアからの侵入に備える |
|
Page 3 狙いその3:すべての人に安心感を 脆弱性評価ツールの効果的な活用を |
ここがポイント! DBセキュリティの実装 |
- Oracleライセンス「SE2」検証 CPUスレッド数制限はどんな仕組みで制御されるのか (2017/7/26)
データベース管理システムの運用でトラブルが発生したらどうするか。DBサポートスペシャリストが現場目線の解決Tipsをお届けします。今回は、Oracle SE2の「CPUスレッド数制限」がどんな仕組みで行われるのかを検証します - ドメイン参加後、SQL Serverが起動しなくなった (2017/7/24)
本連載では、「SQL Server」で発生するトラブルを「どんな方法で」「どのように」解決していくか、正しい対処のためのノウハウを紹介します。今回は、「ドメイン参加後にSQL Serverが起動しなくなった場合の対処方法」を解説します - さらに高度なSQL実行計画の取得」のために理解しておくべきこと (2017/7/21)
日本オラクルのデータベーススペシャリストが「DBAがすぐ実践できる即効テクニック」を紹介する本連載。今回は「より高度なSQL実行計画を取得するために、理解しておいてほしいこと」を解説します - データベースセキュリティが「各種ガイドライン」に記載され始めている事実 (2017/7/20)
本連載では、「データベースセキュリティに必要な対策」を学び、DBMSでの「具体的な実装方法」や「Tips」などを紹介していきます。今回は、「各種ガイドラインが示すコンプライアンス要件に、データベースのセキュリティはどのように記載されているのか」を解説します
|
|