イベントチケットをネット販売するサービスを開始したB社。システム設計に際し、セキュリティ対策の一貫としてウェブアプリケーションファイアウォール(以下、WAF)の導入を検討し、「SiteGuard」を採用した。検討の経緯や導入・運用のエピソードについて、製品選定及び導入・運用の担当者に話を聞いた。

セキュアなECサイト構築のために

B社は、現在、約4万人の会員に対して、様々なイベントのチケットをインターネット経由で販売している。実際のアクティブユーザーは約4~5,000人程度ということであるが、ウェブシステムのセキュリティには万全を期する必要がある。
「決済方法は、当社独自の電子マネーと言いますか、サーバー管理型のプリベイド決済の仕組みで、会員の方には事前に一定額をお支払頂く形をとっており、現在クレジットカード決済の仕組みも導入を進めています。」
と担当者は語る。本システムでは、インフラからアプリケーションまでの全てを新規に自社で構築した。アプリケーション開発に関しては、 開発スピードやプロジェクト内での技術スタッフ確保の理由から、PHPを採用。

システム設計にあたりWAFの利用を検討することとなるが、その経緯に関して担当者は次のように説明した。
「セキュリティ動向には日々気をつけており、今はファイアウォールやIPSだけでは最新の脅威に対応できないと考えていました。アプリケーションへの攻撃は80番ポートを抜けてしまいますから。ニュース等で過去の被害事例は知っていましたし、当社が実際に 攻撃を受けたこともありました。今回のシステムでは電子マネーや個人情報といった非常に重要なデータを扱いますので、設計の早い段階からWAFの利用を考えていました。」

プログラムテストを入念に行っても、SQL文の全部の調査やプログラムロジックのすべてのレビュー等は物理的に困難であり、作業を行えたとしてもどこかで漏れが出てしまう可能性を払拭できない。プログラムの改修が頻繁に行われるような状況では、最初にセキュリティ監査をやったとしても、その後の改修の段階では漏れが出てしまう可能性も十分に考えられる。
「最初のセキュリティ監査は当然実施するにしても、最悪WAFのようなもので防げるのであれば、仮にチェックが抜けても補完できます。また費用面の問題もあります。最初のセキュリティ監査では予算が取れても、追加改修の度に予算を取ることは難しいですからね。」

信頼できるシグネチャを採用したソフトウェア型のWAF

主要なWAF製品がそれほど多く存在しない現時点では、ネットや雑誌の情報収集や、メーカや代理店に問い合わせする等して、容易にいくつかのWAF製品を掌握することができる。それらの製品群から採用製品を選定するポイントに関して、担当者は次のように説明した。
「WAFにはアプライアンス製品が多いと思いますが、あまりこだわりはありませんでした。アプライアンスといっても中身はソフトですし。SiteGuardはシグネチャ型のWAF製品であるということが大きなポイントですね。セキュリティベンダのラックさんが協力しているという点も(笑)。処理能力に関しても、SiteGuardがソフトウェアということもあり、ハードウェア増強や並列で分散させればどうにでもなると思っていたので、あまり気にはしてなかったですね。もちろん、価格面もあります。製品・機器費用だけでなくオプションや保守費など考慮しました。」
過去に別のWAF製品を導入した経験を持つ担当者は、経験による培われた厳しい選定基準で「SiteGuard」を選択する。

手間を煩わせない導入と運用

導入・構築に関しては、大きな懸念もなくスムーズに作業が進められたと振り返る。
「 特に心配はありませんでした。メーカのエンジニアの方のサポートもありましたので。ただ、それほど質問することもなかったですね(笑)。インストール自体簡単でしたし、プロキシ的な使い方だったので、難しい設定もありませんでした。」
「SiteGuard」では一般的にプロキシ型とインライン型のいずれかの構成を選択することができる。この点の検討に関して、アドバイスをいただいた。
「要は、壊れた時に通信を継続させなければいけない。そういう意味では、どっちも一緒と考えています。プロキシ型にしておくと、拡張がしやすいのです。負荷分散装置の下に置いて、2台なら2台のバランシング、スペックが足りなくなれば3台に増やせばいいですから。ただ、インライン型でも考え方は同じかもしれません。SiteGuardがアプライアンスでなかった点も関係ありました。」
システム全体の構築スケジュール期間は約2ヶ月。「SiteGuard」に関しては、インストール・初動確認は1、2日で完了した。
「シグネチャ設定はデフォルトで推奨設定がありますが、中には無効のシグネチャもあったため、 一旦、全てを有効にして誤検知を洗い出しました。アプリケーションの通常系テストと絡め、1週間程度だったでしょうか。アラートメールで検知状況を確認し、必要に応じてチューニング、場合によってはアプリケーション側を修正しました。」
SQLインジェクション、ディレクトリトラバーサル等に関して知識を要する担当者は、独自にアプリケーション側の修正を行ったという。
「例えばアプリケーションでよく相対パス(../)が使われますが、1階層(../)は良しとしても、2階層(../../)は禁止にしようとか。絶対パスで書くことにしようとか。SQLに関しても、アプリケーション側でのSQLインジェクション対策など意識して開発しました。」
また、メールアドレスを引数として受け取る処理があるが、その中で顔文字をアカウント名に使っていると検知してしまうことが発覚。
「一般的なインターネットメールではアカウント名に記号が使われることは少ないと思いますが、携帯メールだと顔文字をアカウント名にすることが結構あるんですね。とはいえ、それをすべて見逃してしまっては攻撃を見逃すリスクがありますので、監視モードでアラートだけあげさせています。特定のアプリケーションだけ監視から除外するのも一つの手だったのですが、 数か所でメールアドレスを入力する箇所があったので、そのような対応をとりました。」

大きなチューニングが完了し安定稼働となった現在では、日々のアラートメールをチェックする運用を行っている。
「通常は1日20~30件くらいで、SQLインジェクション系が多い状況です。全部見ているわけではありませんが、量を気にしていますね。単一IPアドレスから大量に攻撃が来るような時が問題です。極端に一か所からの攻撃が多い場合は、ファイアウォールの設定変更で防ぐこともあります。」
「SiteGuard」に関しては運用レベルで大きな設定変更を行うことはほとんどないという。
「アプリケーションの追加改修をして、誤検知が発生した時くらいでしょうか。正直、あまり手間はかかっていません。シグネチャの細かい部分は自分達で はどうしようもないので、そこをお任せできる点が助かります。」

また、「SiteGuard」の運用経験者という立場から以下の貴重なアドバイスもいただいた。
「ウェブサーバーのアクセスログなどは注意が必要かもしれません。導入の仕方にもよりますが、当社はプロキシ構成で導入したため、ウェブサーバー側のログ(クライアントのソースIPアドレス)が変わってしまいます。当然のことではありますが、この点を考慮した設計が必要と思います。」


最後に、総括として「SiteGuard」の導入効果について話を伺った。
「安心していられますね。だからといって、何もしないでいいわけではありません。言い方は悪いですが、WAFを使っていることで、そこまで手間をかけてアプリケーションのチェックをしなくてもいい、ある程度は防御できている、という感覚があります。アプリケーションの開発、改修のコストも削減できました。設計から製造、テストというプロセスを考えた時、どうしてもテストに最も工数がかかります。パターンテストにはキリがありません。この点で、過去に 使用したことのある別のホワイトリスト型のWAF製品では、運用がかなり大変でした。アプリケーションの改修時は、その度にテストしなければならなかったのです。SiteGuardでは、アプリケーション改修時も設定変更をしなくて済むのは大きいかもしれないですね。
ネットワークの3種の神器ではないのですが、今後はファイアウォール、IPS、WAFが常識になると思っています。あとは、現在クレジットカード決済に関するつなぎ込みを進めているのですが、カードブランドからセキュリティ対策についての指摘があったんですね。その際、WAFが入っていると言うと、審査がすんなり通ったのです。逆に、WAFがないと通らない感じがしました。もともとは、審査があるからWAFを導入したわけではないのですが、結果的に役立ったということでしょうか。また、サイトをオープンしてから、各方面からセキュリティ対策に関するお問い合わせを頂くことがあったのですが、『一歩先の対策をしている』と言いやすい面もありました。」

導入事例Topへ


SiteGuardシリーズに関するお問い合わせはこちら044-201-4036受付時間 9:30-17:30 [ 土・日・祝日除く ]

メールでのお問い合わせはこちらお気軽にお問い合わせください。