【概要】
SQL Serverセキュリティセミナーに参加しましたのでレポートいたします。
セミナーは以下のように2部構成になっていました。また、第1部の終わりには参加者が4人一組でグループを作り、「SQL Serverのセキュリティ対策に必要な情報は?」
という題目でブレーンストーミングがありました。
諸事情により私は第1部のみの参加とさせていただきましたが、第1部のみの参加でも私にとっては非常に有益でした。
第1部
事例から学ぶSQL Serverセキュリティ〜DBセキュリティ研究所編〜
講師:河端 善博 氏(PASSJ理事・セキュリティ分科会ボードリーダー)
-ブレーンストーミング-SQL
Serverのセキュリティ対策に必要な情報は?
第2部
SQL Serverセキュリティのポイントと推奨事項
講師:小野寺 匠 氏(マイクロソフトアジアリミテッド セキュリティレスポンスチーム)
【会場の状況】
SQL Serverのセキュリティ情報に関しては、データベース開発・運用関係者に関心を持っている方が多いため、本セミナーの参加者は満席であろうと思っていましたが、いくつか空席が見られました。
感染被害が続いているコンピューターウイルスBlaster ワームへ対策を施しているため、 「参加したいが、それどころではない」という方がいらっしゃったのかもしれません。
【参加のきっかけ】
SQL Serverマガジン(翔泳社)を購読するようになり、データベースとアプリケーションのセキュリティに興味をもちました。 セキュリティといいますと私自身「すごくお堅いこと」というイメージがあったのですが、SQL
Serverマガジンの中で連載されている「ケーススタディで学ぶDBセキュリティ研究所」の記事が面白く、非常にわかりやすいかったため、PASSJでセキュリティに関するセミナー開催の機会があれば参加したいと以前から思っていました。
【要旨】
「事例から学ぶSQL Serverセキュリティ〜DBセキュリティ研究所編〜」(講師:河端 善博 氏)
・Slammer事件の分析
-F/Wでも防げなかった
-ウイルス対策ソフトでも防げなかった
-MSDEが入っていることを知らない
-修正プログラムを入れられない
-修正プログラムがわかりにくい
対策として、「修正プログラムおよびSPの適用」「修正プログラムを適用する体制作り」の重要性を説明してくださいました。
また、おろそかにしがちなSPを適用できない場合の対応についても考えておく必要もあります。適用できない理由としては、予算、人員、関連システムの都合および運用面などがありますが、回避する方法を事前に用意しておくことが大事であることを改めて実感しました。
・T-SQLプログラムの問題点の分析
-プログラムの問題点
事例として、T-SQL内のシングルクォートや%の扱いについて
-不正クエリで改ざん・盗聴・侵入
-ツール別のセキュリティ効果
-問題点のクローズアップ
-データの再処理時の注意
-データベース構造を秘密にする
対策として
-パラメータクエリの活用
アドホッククエリを避ける
-特殊文字のエスケープ
IN,オブジェクト名,LIKEなど
-必要以上の権限を与えない
万が一に備えてアクセス権を制限
【所感】
SQL Serverに限らず、データベース構造を秘密にするということは、非常に難しい課題であると感じました。
システム開発会社から漏洩したり、システム担当者やデータベース管理者が退社や転職してしまい、ある日突然、攻撃者に代わってしまう可能性もあります。また、システム担当のフリをして、開発元に問い合わせたりする事例などもあるようです。
データの改ざんを防ぐための方法として、T-SQLプログラミングの「'」(シングルクォート)の扱い方を適切に行うことは基本ですが、システムのカットオーバまでの期間が短く、技術者の育成のための時間を十分にかけられない企業が多い中、
実際には、このようなソースは、世の中にたくさんあるのではないかと感じています。
問題が起きないように事前に対策を練っておくことはもちろんですが、問題がおきたときに企業として説明責任を果たせるかどうかであると感じました。
このような事例がある中で、説明責任を果たせなければ企業に対する信頼感は一瞬にして吹き飛んでしまいます。技術的に解決すべき課題と組織的に解決すべき課題、どちらの対策が欠けてもならないことがわかりました。
最後に本セミナーに参加させていただき、講師の方々とPASSJのスタッフのみなさまにお礼を申し上げます。次回も参加させていただきたいと思います。
|