大手IT企業であるGMOグループを襲ったサイバー攻撃のニュースは、Webサイトを運営する多くの企業や担当者に大きな衝撃を与えました。
この一件をきっかけに、「WAF(ワフ)」というセキュリティ用語を耳にするようになった方も多いのではないでしょうか。
- 「名前は聞いたことがあるけれど、普通のファイアウォールと何が違うの?」
- 「自社のサイトにも導入が必要なのだろうか?」
結論から言うと、WAFは現代のWebサイト運営において「目に見えない裏口からの侵入を防ぐ防犯カメラ&センサー」のような必須の仕組みです。
本記事では、WAFの基本的な仕組みから、従来のファイアウォールとの決定的な違い、なぜ今WAFが必要とされているのかまで、専門知識がない方にも噛み砕いて解説します。
ご自身のWebサイト(ブログ)のセキュリティ対策に不安を感じている方は、ぜひ最後までご覧ください。
GMOニュースで話題の「WAF」とは?ファイアウォールとの決定的な違い

先日から何かとニュースやSNSで話題になり続けている、GMOインターネットグループを襲ったサイバー攻撃事件。
実は私自身、GMOインターネットグループが提供するお名前.comで、過去にドメインを取得(レンタル契約)していたことがあります。
メインの契約はすでに解除しているのですが、当時「無料キャンペーン」でセットで付いてきたドメインの契約期間が残っており、完全にアカウントを削除しきれていない状況が続いています。
もともとはドメインの更新だけをしたかったのに、少し分かりづらい画面設計でレンタルサーバー契約を勧められ、うっかり間違えてサーバーまで契約してしまった際についてきた無料ドメインでした。
その対応があまりに不親切だと感じてしまい、「お名前.comはもう使わない」と決め、解約できるものはすべて解除して今に至ります。
現在このブログのドメインはXserverで新たに契約したものなので、ひとまずは安心しているのですが……今回のGMOの一件は、正直「他人事ではないな」と感じさせられました。
直接関係はないとはいえ、ECサイトでスマホを購入しようとしたら「安全上の理由」とだけ告げられて勝手にキャンセルされたこともありました。
一方、SNSでフォロワーから突然「セキュリティは何を使っている?」「WAFも設定していないのにVPSを悪く言うなんてけしからん」といった意味不明な絡みをされたりもしましたからね。(この一件で体調を崩してしまい、今もまだ万全とは言えない状況が続いています……)
私個人の苦いエピソードはさておき、今回のGMOの一件で世間が混乱しているのは間違いありません。
それもそのはず。ニュースでは「VPS」「WAF」「PHP」といった、普段あまり耳にしない専門用語が次々と飛び交っているのですから、ITに詳しくない方からすればチンプンカンプンですよね。
そこで当ブログでは、これらのキーワードの中でも特に重要なVPS・WAF・PHPについて、初心者の方にも分かりやすく解説していきたいと考え、この記事を執筆することにしました。
※「VPSとはどういうものか?」「GMOへのサイバー攻撃事件の全容」については別途記事でまとめていますので、気になる方はぜひあわせてご覧ください!
『関連記事』
- GMOを襲ったサイバー攻撃の理由は?背景と個人でできる対策を徹底解説!(GMOへのサイバー攻撃の全容)
- VPSはなぜ必要?レンタルサーバーとの違いとGMOサイバー攻撃の裏側(主にVPSについての解説)
WAFとは何?何故セキュリティに必要なの?

前置きが長くなりましたが、早速「WAF(ワフ)」について解説していきたいと思います。
WAF(Web Application Firewall)とは、WebサイトやWebアプリケーションをサイバー攻撃から守るための「通信の中身(データ)をチェックするセキュリティフィルター」のことです。
このような説明を聞くと、通信を監視・制御するシステムとしておなじみの「ファイアウォール」と何が違うの?と思われるかもしれません。
- ファイアウォール(入口の警備員):IPアドレスなどを確認し、「許可された人物(通信)か」をチェックする
- WAF(手荷物検査場):データの中身を直接チェックし、「危険なプログラム(荷物)を持っていないか」を確認する
このようにWAFは、正当な利用者を装って持ち込まれる悪意あるコードを水際でブロックしてくれる、いわば「手荷物検査のプロ」なのです。
つまりWAFは、単に通信の経路や相手先を調べるだけでなく、送受信されるデータそのものをチェックして危険分子を排除してくれる「頼れる存在」というわけです。
WAFが防いでくれる代表的なサイバー攻撃とは?

前の章で「WAFは通信の中身(データ)を調べる手荷物検査員のようなもの」とお伝えしました。
では、攻撃者は一体どんな「危険物」をデータの中に隠して持ち込もうとしているのでしょうか?
Webサイトを狙うサイバー攻撃にはさまざまな種類がありますが、ここではWAFが特に威力を発揮する代表的な3つの攻撃手法を、分かりやすい例えとともにご紹介します。
1. SQLインジェクション(データベースからの情報漏洩)

SQLインジェクションとは、お問い合わせフォームやログイン画面、Webサイトの検索窓など、私たちが文字を入力して送信するあらゆる入力フォームに対して、命令文(コード)を書き込んでデータベース(裏金庫)を不正に操作し、個人情報などの貴重な情報を盗み取る攻撃を指します。
これだけを聞くと、「なんだか巷でよく耳にするフィッシング詐欺と似ているな」という印象を受けるかもしれません。
フィッシング詐欺とは、攻撃者が公式サイトにそっくりな『偽サイト』を作り、そこにユーザーを誘導して入力させた個人情報を直接盗み取る手法です。
一方、SQLインジェクションは仕組みが全く異なります。
フィッシング詐欺のように偽サイトを作って誘導する必要は一切ありません。
本物の公式サイトに設置された入力フォームを経由し、裏で管理されているデータベースに対して直接不正操作を仕掛けてデータを盗み出すため、サイト側が無防備だとユーザー側では何一つ対応できず、個人情報を盗まれてしまいます。
だからこそ、WAFによってデータベースの情報を盗み出すような怪しいコード(命令文)がないかをチェックし、水際でブロックする必要があるのです。
2. クロスサイトスクリプティング(XSS)

SNSやブログのコメント欄など、さまざまな交流用の掲示板がWebサイトで機能していますが、こうした掲示板に対して罠コードを仕込み、訪問者の情報を盗み取る攻撃が「クロスサイトスクリプティング(XSS)」です。
あくまで大まかなニュアンスですが、「野良猫を保護・捕獲するために、仕掛けた餌に釣られてやってきた猫が、気づかずに籠に入った瞬間に扉が閉まる罠」のようなイメージで捉えると分かりやすいかもしれません。
つまり、攻撃者は掲示板に「罠コード(餌)」を設置しておき、何も知らずにそのページを訪れたユーザー(猫)のブラウザ上で、自動的に悪意あるプログラム(罠)を動かして情報を盗み出すのです。
ユーザーは全く何も悪いことをしていないのに、自動で発動する罠によって大切な個人情報が盗まれるのは、非常に腹立たしく極めて悪質な攻撃ですよね。
WAFは、掲示板などに書き込まれるデータの中に危険な罠コードが含まれていないかを常に監視し、怪しい通信を見つけ次第、即座に遮断して未然に防いでくれています。
3. OSコマンドインジェクション(サーバーの乗っ取り)

これまで紹介した2つの攻撃は、掲示板やSNS、公式サイトの入力フォームなどを通じて「個人情報やデータを盗み出す」攻撃でした。
これらの攻撃は、ユーザーのコメントや入力事項によって頻繁に処理されるため、攻撃側も罠を仕掛けて個人情報を盗みやすい(=ヒットを狙いやすい)という特徴があります。
一方、OSコマンドインジェクション(サーバーの乗っ取り)というのは、その名の通り、サーバーの土台となるOSそのものへ悪質なコマンド(コード・命令文)を送り込み、サーバーごとごっそり乗っ取ってしまおうという攻撃を指します。
ただし、掲示板のコメントや問い合わせフォームとは異なり、プログラム上でOSを直接動かすような処理は滅多に行われません。
そのため、攻撃者にとっても一網打尽にできるように見えて、実は罠を仕掛けても不発に終わるリスク(空振り)が高くなります。
これを野球に例えるならば、前者の2つの攻撃がバットを短く持ってコツコツシングルヒットを狙うスタイルであるのに対して、OSコマンドインジェクションはバットを長く持ってホームラン狙いで大振りするようなものと捉えると何となく分かるかもしれません。
基本的にはそれほど頻繁に成功する攻撃とは言えませんが、万が一にもヒットしたらホームラン級の致命的な被害が出てしまう攻撃だけに、WAFはこうしたサーバーの奥底へ向けられた悪質なコマンドも見逃さず、水際でしっかりとガードしてくれているのです。
なぜ従来のファイアウォールでは防げないのか?

野球で例えた「より確実にヒットを狙う攻撃」も、「三振のリスクを高めてでもホームランを狙う一撃必殺級の攻撃」も、悪意あるコード(命令文)を使って仕掛けられるタチの悪いサイバー攻撃です。
これらはすべて、問い合わせフォームなど『誰でも使える正規の入り口』から入ってくるため、ファイアウォールのように「通信の入り口」をどんなに厳しくチェックしていても、堂々と正門をくぐり抜けてしまいます。
だからこそ、データの中に隠された悪質なコードを見抜き、データベースやサーバーへの侵入を防ぐ「手荷物検査(WAF)」が、私たちのサイトや個人情報を守るうえで必要不可欠となるのです。
ファイアウォールだけでは防ぎきれない、データの中に潜む悪質なコードによる「3つの攻撃」から大切なサイトを守るためにも、WAFによるセキュリティ対策をしっかり設定していきましょう。
【実践】ConoHa WINGでWAFを設定する方法と誤検知(エラー)の対処法

ここまでWAFの仕組みや重要性について解説してきましたが、「じゃあ実際、自分のサイトではどうやって設定すればいいの?」と思われた方も多いのではないでしょうか。
多くのレンタルサーバーではWAFが標準搭載されています。
ここでは、当ブログでも利用している「ConoHa WING」を例に、実際のWAF設定手順と、運用するうえで知っておくべき「誤検知エラー」の対処法を分かりやすく解説します。
ConoHa WINGでのWAF設定方法(ワンクリックで完了!)

ConoHa WINGでのWAF設定は驚くほど簡単で、コントロールパネル(サイト管理)のメニュー上からWAFの設定スイッチをONにするだけで完了します。
詳しい手順は以下のとおりです。
- ConoHa WINGのコントロールパネルにログイン
- 左メニューの「サイト管理」 → 「サイトセキュリティ」を開く
- 上部タグの「WAF」を選択
- 利用設定を「ON」に切り替える
たったこれだけの操作で、先ほどご紹介した「優秀な手荷物検査員(WAF)」があなたのサイトの前に常駐し、24時間体制で悪質なコードを監視・ブロックしてくれるようになります。
WAFを導入すると起きる「誤検知(403エラー)」とは?

WAFを設定してブログを運用していると、たまに以下のようなトラブルが発生することがあります。
- WordPressで記事を保存しようとしたら「403 Forbidden」というエラー画面が出た
- テーマのカスタマイズやプラグインの設定変更が保存できない
「えっ、自分のサイトに入れなくなった!?」「サイバー攻撃を受けた!?」と焦ってしまうかもしれませんね。
実は私も過去に、WordPressで扱う画像の読み込み速度を改善しようと『Converter for Media』というプラグインを導入し、画像(JPEGなど)をWebP形式に変換して容量を軽くしようとしたことがありました。
今でこそ無事に導入できて軽量化に成功していますが、当時は初めて設定しようとした際に「403 Forbidden」のエラーが出て設定変更ができず、かなり焦りまくった苦い記憶があります……。
でも、皆さんご安心ください!
WAFの「ON/OFF」を切り替えるのは、イメージとして「家の玄関の鍵を開け閉めするようなもの」です。
普段は防犯のためにしっかり鍵をかけておきますが、大きな家具(新しいプラグイン)を部屋の中に運び込む作業の時だけ、一時的に鍵を開けてあげる必要があるわけです。
プラグインの導入などで「誤検知(403エラー)」が出てしまった場合は、一時的にWAFをOFFにして設定を行い、作業が完了したら速やかに設定をONに戻してあげるだけで問題ありません。
WAFは自身で導入した安全なプラグインであっても、超生真面目に「怪しい通信かも!」とブロックしてしまう習性があります。
あまり難しく考えず、「エラーが出たら一時的にON/OFFしてあげればいいんだな」と理解しておけば大丈夫ですよ。
ただし、設定をOFFにした場合は「必ずONに戻すこと」だけは絶対に忘れないでください。
鍵を開けっ放しにしておくと、無防備な状態でサイバー攻撃の餌食になってしまいます。
WAFのONへの戻し忘れ(鍵の閉め忘れ)には十分注意しましょうね!
誤検知(エラー)が起きたときの対処法

最後に、もしWordPressの編集作業中にエラーが出て保存できなくなった場合の対処法を2つご紹介しておきます。
パターンA:ConoHa WINGの管理画面で「除外設定」をする(おすすめ)
上の画像のように、WAFの管理画面にはブロックされたエラーのログが表示されます。
このログから「除外設定」を行うことで、それが攻撃ではなく正常な作業であることをWAFに認識させてあげることができます。
設定方法は実にシンプルで、以下の通り行えばOKです。
- ConoHa WINGの「サイトセキュリティ」 →「WAF」を開く
- 下部にある「ログ」の一覧を確認する
- エラーが起きた日時のログを探し、左側にある「除外」ボタンを押す
これだけで、「この操作は攻撃ではなく正常な作業だよ」とWAFに教えてあげることができ、次からはエラーを出さずに保存できるようになります。
パターンB:作業中だけ一時的にWAFを「OFF」にする
先ほどご紹介した通り、もうひとつの手っ取り早い方法として「作業中だけWAFを一時的にOFFにする」という対処法もあります。
設定スイッチを切り替えるだけでエラーは解除されますので、除外設定がうまくいかない場合はぜひ試してみてください。
ただし何度も言いますが、ずっとOFFにしたままだと無防備な状態に戻ってしまうため、作業完了後に必ず「ON」に戻すことだけは忘れないように注意してくださいね!
必要となる作業時は「除外設定」や「一時的なOFF」で上手に対処し、普段はしっかりWAFをONにして悪質なサイバー攻撃をブロックする。
このメリハリを意識して、安全にWebサイトを運用していきましょう!
まとめ
WAF(Web Application Firewall)は、従来のファイアウォールでは防ぎきれない「データの中に潜む悪質なコード」を水際でブロックしてくれる、Webサイト運用に欠かせないセキュリティです。
データベースの不正操作や掲示板の罠、サーバーの乗っ取りといった脅威から、あなたの大切なサイトや訪問者の個人情報を24時間体制で守り抜いてくれます。
作業中に「403エラー(誤検知)」が出たとしても焦る必要はありません。
玄関の鍵を開け閉めするように、除外設定や一時的なON/OFFで上手に対処していけば大丈夫です。
大切なサイトと読者の信頼を守るためにも、まずはご自身のレンタルサーバーでWAF設定が「ON」になっているか、今すぐ確認してみましょう!



コメント