tv-noise式記事では、Oracle9iのセキュリティ機能を中心に、データベースのセキュリティを強化するために役立つ情報を説明していく。企業情報、セキュアなシステム構築において重要な位置を占める、データベースのセキュリティ対策としての基本を学んでいただければ幸いです。 今回は、データベースソフトウェアとしてWindows、UNIXプラットフォームを問わず広く利用されているOracleデータベースについてのセキュリティ対策の手法とOracleデータベースが提供しているセキュリティ対策機能についてOracle9i(Oracle 9.2.0)をベースに説明していきます。 データベースのセキュリティ対策の重要性は、SQL Slammerで新たに注目されだした分野だが、基本的なセキュリティ対策の考え方は、Webサーバやメールサーバなどと同じように(意図した利用方法以外でサーバの無断使用をさせないようにする事)(不正アクセスを防ぐ)というところではないだろうか
例えば、多くのOracleデータベースサーバには、重要な顧客データやクレジットカード番号などがデータとして保存されている。このような場合、インターネットからの不正アクセスを完全に防いでいても、イントラネットからの不正アクセスに対しては、それほど有効な対策を打っていない場合が多いのではないだろうか。これは、Oracleデータベースに登録されているデータの内容にもよるが、Oracleデータベースへのアクセスが許可されたユーザーに対するアクセスコントロールや監査を含めたセキュリティ対策についても有効な対策を行う必要性が出てくるかもしれない。こういった機能については、Oracleデータベースが標準で提供しているいくつかの機能を利用することでセキュリティ対策を行うことができる。
システム開発の現場でも、いまはそれほどでもないと思われるが、以前は「決済情報や顧客情報は、やはりOracleデータベースを利用した方がいい」という会話がシステム開発会社の担当者から聞かされたりすることがあったと思う。そのような場合、商用データベースであるOracleデータベースに対する信頼性や過去の経験などが採用の大きな要因になっているかもしれない(決してほかの商用データベースやPostgreSQLのフリーソフトウェアに問題があるのではなく、担当者の経験のあるプラットフォームをデータベース製品として提案するのが多いというのが実際のところだろうか。皆さんいかがだろう)。 また、データベースシステムのセキュリティを向上させるためには、Oracleデータベースだけではなく、アプリケーションサーバ、さらに、アプリケーションサーバにつながっているWebサーバも含めたシステム全体の対策が必要になる。 図1 外部との間にファイアウォールを配置する一般的なシステム構成 また、攻撃手法としては、近年バッファオーバーフローという手法が一般的だ。この攻撃は、バッファと呼ばれるソフトウェアのデータ格納領域を想定量以上の大量のデータであふれさせ、誤動作させることを利用する手法である。侵入者は、事前にこのようなセキュリティホールを調べ、侵入を試みる。それによって、root権限の奪取などによるホームページの改ざんが可能になる。データベースシステムにおいては、データを取り出すアプリケーションサーバを攻撃して、データベースサーバから重要な情報を取り出すという攻撃が行われている。とすれば、最終的にデータベースへの不正アクセスを防ぐことがOracleデータベースサーバセキュリティの本質だろう。 通常、Oracleデータベースが導入されているシステムにファイアウォールを導入しているケースは、多いのではないだろうか。その場合、以下のようなネットワーク図が考えられる。 Oracleデータベースを導入しているシステムだけに限らず、ひと昔前は、よく「ファイアウォールを入れているからうちのOracle データベースは安全だよ」ということを社内の情報システム担当者から聞かされただろう。確かにファイアウォールを入れることで、許可されていないポートへの攻撃に対してセキュリティを高めることができる。 しかし、ファイアウォールの最大の課題は、「許可されたポートに対しては、自由にアクセスできる」ということだ。このことは、問題点ではないが、この部分を利用して、攻撃者は、セキュリティパッチなどが当たっていないセキュリティ上問題があるサーバに対して、先ほど説明したようなバッファオーバーフローという攻撃手法を利用して、攻撃を行う。 確保したメモリ領域(バッファ)を超えてデータが入力された場合に、データがあふれてプログラムが暴走してしまうこと。バッファオーバーランともいう。 バッファオーバーフロー攻撃とは、バッファに対して許容量を超えるデータを送り付けてシステムを機能停止にしたり、意図的にバッファをオーバーフローさせ、あふれ出たデータを実行させてしまう攻撃。 ***バッファオーバーフローは最も代表的なセキュリティ・ホールであり、昔からさまざまなOSやアプリケーションに多く存在している問題である。現在OSで見つかっているセキュリティ・ホールの半数以上はバッファオーバーフローによるものといわれている
|
|||||

- >
- コンピュータとインターネット
- >
- インターネット
- >
- ネットサービス



