セキュリティに関するインシデントが年々多様化し、深刻化しているのは周知の通り。今やホームページの改ざんやマルウェア感染など対象はシステムだけではなく、企業の情報や個人の財産などにも広がっている。特に2013年ではネットバンキングを介した不正送金の被害が急増している。
日本IBM ソフトウェア事業本部システムzソフトウェア 久貝貴子氏は「多段的な攻撃、新しい脅威に対抗するためには包括的な枠組みが必要です」と述べ、IBMのセキュリティ・フレームワークを示した。セキュリティとプライバシーのための基礎を設計、システム全体のセキュリティ状況を可視化、X-Forceによる脅威の研究などを挙げつつ、特徴的なのは着目する要素を「ひと」、「データ」、「アプリケーション」、「インフラストラクチャー」の4つに分類しているところ。そしてそれぞれにIBMが提供する製品ポートフォリオが構成されている。
今回のテーマは内部犯行。外部からの攻撃に比べて、内部犯行は身内の不正なので防ぐことだけではなく気づくことも難しい。しかしデータ流出の検知に利用できる情報、つまり情報の出口として監視できるところはある。
例えば内部の人間がデータを外部のWebサイトへアップロード、チャットのファイル転送機能で外部に転送、メールにデータを添付する場合ならネットワーク監視装置の通信ログがある。メールに限ればメール監視ソフトによる送受信履歴がある。印刷して持ち出す場合ならプリントサーバーの履歴、USBメモリにデータをコピーして持ち出すなら端末制御ソフトによる外部記憶装置接続ログや端末操作ログがある。さらにサーバーへの不正アクセスならファイルサーバーやデータベースセキュリティソフトのサーバーアクセスログ……といった具合だ。
最近よく指摘されているのは身内の良心をあてにしないということ。不正ができないような仕組み、してもすぐ検知できるような仕組みをシステムで実現するということの重要性だ。
データ流出の脅威として想定できるのは、例えばバックアップテープの盗難、不正バックアップで取得したデータの流出、不正取得したアカウントでデータ読み取り、アクセス権限の不正な変更、職務権限で取得したデータの流出など。これらは行動監視や媒体の根絶(USBメモリー禁止、印刷禁止など)を除き、システム(System z)で対応可能だと久貝氏は言う。ポイントを5つ挙げ、それぞれに具体的な対策を挙げる。
セキュリティ定義の強化
セキュリティ管理ソフトウェアに「RACF(Resource Access Control Facility)」がある。しかし正しく使わなければ宝の持ち腐れ。正しく定義されずに誰もが重要データにアクセス可能となっていたり、逆にパラメーターの変更ミスで本番業務に支障が生じたケースもある。
RACF定義の正当性確認に役立つのがIBM Security zSecure Admin(以下、Admin)とIBM Security zSecure Audit(以下、Audit)だ。AdminはRACF定義の矛盾や冗長性などのレポート、未使用のRACF定義などレポートを出力する。Auditは既存のデータセットとRACF定義の比較レポート、世代別のRACFパラメーターの比較レポートなどを出力する。
セキュリティ監査、アラート
監査ログは取得していても分析が追いつかないということがある。後から分析して判明するのでは遅いこともある。理想としては不正が起きたらすぐにアラートを出せるようにすることだ。
Auditには一般監査やセキュリティ標準確認などのレポートほか、レポートをカスタマイズするためのカスタマイズパネルが提供されている。特定の時間、資源、ユーザーなどでレポートを作成できる。さらにAuditだけではなく、IBM Security zSecure Alert(以下、Alert)と Qradar SIEMを組み合わせることで詳細分析やアラートを生成することが可能。
ユーザー識別とパスワード運用
IDとパスワードが盗まれ、重要なデータが漏えいしたというのはよく聞く話。現実には重要なデータにアクセスできるアカウントが複数の管理者で使い回されている現場も意外とある。それだと誰が不正を行ったのか後で判別できなくなる。アカウントは複数の人間で共有せず、パスワードや権限の変更には特に注意して監視する必要がある。
ここに有効なのがAlert、zSecure Command Verifier、Auditだ。Alertでは短期間の大量ログイン試行、パスワード変更などの異常行動をリアルタイムに通知できる。zSecure Command Verifierはパスワードやルールの変更コマンド自体を禁止、一般ユーザーに特権を付与することを禁止するなど、不審な操作そのものを制限できる。Auditは資源へのアクセス状況を常時把握して不正ユーザーを検出する。
データのアクセス制御
企業のデータアクセスに関しては、それぞれのユーザーにそれぞれの業務に応じたアクセス権を設定する必要がある。例えばA支店の社員がほかの支店データにアクセスする必要がないならアクセスできないようにしておくべき。
RACFとDB2 for z/OS v8を組み合わせればMulti Level Security(MLS)により、行単位のアクセス制御が可能となり、必要なデータだけアクセスできるようになる。データベース側で制限するのでアプリケーションやプログラムに変更を施す必要はない。同様の機能はDB2 10のRCAC (Row and Column Access Control)でも実現可能。プログラムあるいはデータベース分割で実装するよりも確実だ。
データの暗号化
万が一、データの盗難がおきても暗号化で読めない状態にしてあれば不正利用を防ぐには有効だ。暗号化は手間や性能を懸念して忌避されることもあるが、アクセス制御と暗号化を同時に実装していれば不正バックアップや不正アクセスから守る有効な手段となる。
具体策としてInfoSphere Guardium Data Encryption for DB2 and IMS Databasesが示された。これはDB2の行レベルとIMSのセグメントレベルでデータの暗号化を行う。アプリケーションの変更が不要なだけではなく、System zの暗号化ハードウェアを使用するため高速に処理できる。
セキュリティ対策はアプリケーションで実装しようとすると手間やリスクを増やしてしまいかねない。データベースやOSの機能で実現するほうが確実かつシンプルにできそうだ。System zには標準でセキュリティ対策に有効な機能があるので、宝の持ち腐れとならないように有効活用できるようにしよう。