Comments
Description
Transcript
Web サイトの脆弱性の簡易検出ツールの開発
Web サイトの脆弱性の簡易検出ツールの開発 ~Web サーバのアクセスログを解析して脆弱性検出を簡易に行うツール「iLogScanner」~ 株式会社ラック 佐久間 吉則、遠藤 哲生 井上 真理英、鮱名 泰孝 概要 近年、Web サイトを狙った攻撃は、Web アプリケーションの脆弱性を突く攻撃に変化 してきており、一般の Web サイト管理者は、脆弱性対策を行う動機付けとして、自社運 営の Web サイトがどれほどの脅威を受けているかを確認する必要がある。 Web アプリケーションが受けている攻撃について、Web サイト管理者が容易に状況を 把握できる手段として、Web サイトが利用している Web サーバのアクセスログを解析し、 攻撃の有無を確認することができる簡易ツールを開発した。 1. 利用している Web サーバのアクセスログを 背景 近年 Web サイトを狙った攻撃は、OS な 解析することで、そのサイトへの攻撃痕跡 どの製品ソフトウェアの脆弱性を突く攻撃 を確認でき、一部の痕跡に関してはその攻 から、Web アプリケーションの脆弱性を突 撃が成功した可能性を確認できる簡易ツー く攻撃に変化してきている。 ルを開発する。 一般の Web サイト管理者は、そうした攻 撃の対策を行うため、自社運営の Web サイ 3. 開発報告 (1) システム概要 トがどれほどの脅威を受けているのか、状 況を確認する必要がある。また、状況確認 本プロジェクトでは、Web サイトの脆弱 だけではなく、インターネットに公開して 性の簡易検出ツール(以下、 「当ツール」と いる Web サイトの危険性を認知してもらう いう)として、利用者環境上で Web サーバ ことで、Web サイト管理者や経営者に対し のアクセスログを解析し、Web アプリケー て警告を発し、対策を講じるきっかけとな ションへの攻撃の有無を利用者へレポート る事も期待される。 するツールを開発した。利用者の環境でツ ールを実行することで、利用者の Web サー 2. バのアクセスログを外部に送信せずに解析 目的 Web アプリケーションに対してどれほど を行うことが可能である。 の攻撃を受けているのか、Web サイト管理 システム概念図を図1に示す。 者が容易に状況を把握できる手段を提供し 利用者は解析を希望する Web サーバのア ていく必要がある。そこで、Web サイトが クセスログファイルを用意し、Web ブラウ 1/5 ザから検出ツール提供用の Web ページ 用者環境へダウンロードして実行する形態 (HTML)へ接続する(図 1-①,②)。 検出ツ である(図 1-③)。 検出ツールは利用者が ールは独立行政法人 情報処理推進機構(以 指定したアクセスログファイルを解析対象 下 IPA と記す)のウェブサイトに配置し、 として解析処理を実行し、解析結果を印刷 利用者の Web ブラウザからの要求に従い利 可能な形態で提供する(図 1-④,⑤)。 図 1.システム概念図 当ツールの機能構成を図 2 に示す。 (2) 機能構成 HTML コンテンツと当ツールを配置する 当ツールが実行可能な動作環境を表 1 に IPA の検出ツール提供サイトを使用し、ア 示す。 プリケーションは、Java Applet(アプレッ 表 1.実行可能な動作環境 OS: ト)によって実装される。 Microsoft Windows XP Professional SP2 Web ブラウザ: JRE: Internet Explorer 7.0 Sun Java Runtime Environment 5.0 以上(JRE 5.0 系を推奨) 2/5 図 2.機能構成 (3) プログラムへの電子署名 (4) アクセスログ解析機能 Java Applet は、Web ページの一部とし 指定されたアクセスログファイルに対し、 て自動的に読み込まれて動作するため、ダ 検出対象カラムにある文字列中から各シグ ウンロード元サーバ以外との通信ができず、 ネチャとのマッチングを行い、特定の脆弱 実行するクライアントマシンのローカルリ 性を突いた攻撃の有無を調査する。また、 ソースやデバイスにアクセスできない等の 結果を利用者へレポートする。アクセスロ セキュリティ機能による動作制限が課せら グ中に攻撃の痕跡が見つかった場合、攻撃 れている。この動作制限は、提供する Java が成功した可能性の高いものついての判定 Applet に 電 子 署 名 し 、 利 用 者 が Java を行う。 Applet 実行時に許諾することにより、外す 当ツールで解析が可能なログの種類は以 下の 2 種類である。 ことが可能である。 当ツールは、Java Applet によって実装 ・IIS5.0/6.0 の W3C 拡張ログファイルタ され、実行するクライアントマシンのロー イプ ・Apache1.3 系、Apache2.0 系、Apache2.2 カルリソースへアクセスする必要がある。 系の common タイプ その為、当ツールでは電子署名を行ってい また、検出対象とする脆弱性を表 2 に示 る。 す。 3/5 以下の項目を設定し、[解析開始…]ボタンを 表 2.検出対象脆弱性 No クリックすると、解析を開始する。 検出対象脆弱性名 ・アクセスログファイルの種類 SQL インジェクション 1 ・解析対象アクセスログファイル ・結果ファイル出力先ディレクトリ 解析に使用するシグネチャには、弊社の ジャパンセキュリティオペレーションセン ② ター(JSOC)のアナリストが、Web アプ アクセスログ解析実行 図 4 に解析実行中画面を示す。 リケーション攻撃の中で検出頻度の高い文 字列を中心にリストアップしたものを使用 している。 Web アプリケーションの脆弱性は他にも 多数存在するが、今回は SQL インジェクシ ョンのみを検出対象としている。 (5) ユーザインターフェイス 当ツールの実際の画面を図 3~6 に示し、処 理の流れを説明する。 図 4.解析実行中画面 ① 解析対象ログファイルの設定 解析実行中画面には全体解析進捗度と 1 図 3 にツール実行画面を示す。 ファイル毎の解析進捗度、検出対象脆弱性 毎の攻撃痕跡検出数が表示される。攻撃痕 跡の検出数は攻撃を検出する度、更新する。 解析中であっても、中止ボタンを押すこと によって処理を中断することができる。 解析終了、または解析を中止した場合、 指定された出力先に解析結果レポートファ イルを保存する。また、攻撃の痕跡が検出 された場合は解析結果を詳細ログファイル に出力し保存する。 ③ 解析結果 図 5 に、解析結果画面を示す。 図 3.ツール実行画面 4/5 レポートファイルには解析結果サマリ情 報が記載される。また、攻撃の痕跡が検出 された場合のみ、解析結果の詳細を記載し たログファイルが出力される。 4. ツールによる効果 当ツールを用いることで、一般の Web サ イト管理者は Web アプリケーションへの攻 撃の有無や、潜む脆弱性を比較的簡単に確 認する事が可能である。 図 5.解析結果画面 また、当ツールを通しインターネットに 一つの脆弱性項目に対し、攻撃があった 公開している Web サイトの危険性を認知し と思われる件数、攻撃が成功した可能性の てもらうことは、Web サイト管理者や経営 高い件数をそれぞれ表示する。また、解析 者に対して警告を発し、対策を講じるきっ 結果レポートファイル名と解析結果ログフ かけとなる等、啓蒙活動としての効果が期 ァイル名も同様に表示する。 ④ 待できる。 出力ファイル 5. 当ツールでは解析終了後、利用者によっ 今後の課題 現段階で、当ツールの検出対象としてい て指定されたディレクトリに以下のファイ る脆弱性は SQL インジェクションのみであ ルを出力する。 る。しかし、Web アプリケーションの脆弱 ・解析結果レポートファイル 性は他にも多数存在する。今後は、検出対 ・解析結果ログファイル 象脆弱性を追加し、複数の脆弱性について の攻撃を検出可能にする必要がある。 図 6 に、解析結果レポートファイルを示 また、ツールが利用者環境で実行される す。 ことを考慮すると、マルチプラットフォー ムへの対応が今後の課題である。 -以上- 図 6.解析結果レポート画面 5/5