WAFなしで本当に大丈夫?攻撃者の視点で考えるセキュリティリスク

アプリケーションやサーバー側でしっかりとセキュリティ対策をしていれば、WAFを導入しなくても大丈夫だと感じている方は、是非読んでみてください。
みなさん、こんにちは
あつふみです。
今日は、私が最近強く感じているWAF(Web Application Firewall)の必要性についてお話します。
本ブログを読んでいる方の中には、
「すでにサーバーやアプリケーション側でセキュリティ対策を実施している」
「自身のサイトは(攻撃が来ていない)or(機密情報がない)のでWAFの必要性を感じない」
「コストの面でWAFの導入は見送っている」
という方もいらっしゃるかもしれません。
本ブログでは、そのような方々に向けて、改めてWAFの導入を検討するきっかけになればと思い書いていますので、ぜひ最後まで読んでみてください。
自社環境をセキュアにしていればWAFは不要?
アプリケーションやサーバーでしっかりセキュリティ対策をしていれば、WAFは本当に不要でしょうか。
確かに、WAFを導入しなくても最新の脆弱性対策やアクセス制御を実施することで、一定のセキュリティレベルを維持することは可能です。
しかし、どれだけ対策をしても攻撃を完全に防ぐことは難しく、むしろWAFがなければ大きなリスクを抱えることになってしまいます。
なぜならば、ゼロデイ攻撃のように未知の脆弱性を突かれるケースや、大量のリクエストを送るDDoS攻撃は、アプリケーションやサーバーの対策だけでは防ぎきれないからです。こうした攻撃が届くことで、サーバーのリソースが消費され、パフォーマンス低下やサービス停止の原因にもなります。
つまり、攻撃が直接アプリケーションやサーバーに届くこと自体が大きなリスク になると考えることができます。
攻撃が自社環境に届くことが問題
「攻撃が直接届いてしまうこと自体がリスク」というのをもう少し具体的に説明します。
攻撃者は、ターゲットの脆弱性を探るために探査通信というものを行います。例えば、以下のようなものが探査通信に該当します。
- ポートスキャン: 開いているポートを特定し、どのサービスが稼働しているかを調査する
- ディレクトリ・ファイル探索(Directory Traversal): 管理画面(/admin/)や設定ファイル(/config/)、バックアップファイル(/backup/)が公開されていないかを探る
- 脆弱性スキャン: OWASP ZAPなどのツールを使って特定のアプリケーションやサーバーに存在する脆弱性を特定する
- エラーメッセージ探査: エラーメッセージからシステムの内部情報(サーバーのOSやミドルウェアのバージョン)を取得する
この探査通信を受けることで、企業側も把握できていないセキュリティホールを見つけられ、そこを起点に攻撃されてしまいます。
ここで、「Source IP制限をしているから探査通信は問題ない」という環境もあるかもしれません。しかしその場合も、以下のリスクが存在します。
- サーバーリソースの無駄な消費: 不要なリクエストを処理することでCPUやメモリが浪費される
- DDoS攻撃による帯域の圧迫: 大量の攻撃が行われると、ネットワーク帯域が逼迫し、正規のユーザーにサービスを提供できなくなる
以上のことから、「攻撃が届くこと自体を防ぐ仕組み」が重要になると言えます。
WAFの必要性 〜攻撃を未然に防ぐために〜
これまでの話を踏まえると、アプリケーションやサーバーに攻撃が届かない仕組みを構築することは非常に重要であると言えます。
これを実現する手段のひとつとして、クラウドWAF を活用する方法があります。
クラウドWAFは、インターネット上のゲートウェイとして機能し、サイバー攻撃を検知・遮断するセキュリティサービス です。
従来のWAFはサーバーやネットワーク機器に組み込んで運用するのが一般的でしたが、クラウドWAFはクラウド上で提供されるため、導入が容易で、継続的に最新の脅威に対応できるという特徴があります。
また、クラウドWAFの多くはどのような攻撃を受けているか可視化することができます。自社環境の手前で攻撃をブロックしつつ、可視化された攻撃の傾向などを見ながら、セキュリティ対策を取れることもメリットになります。
ここまでの話をまとめたものが次のイメージです。
クラウドWAFを導入することで 攻撃の影響を最小限に抑え、安全な環境を維持できることがイメージできると思います。
機密情報なし=WAF不要ではない。シンプルなWebサイトでもWAFが必要な理由
「WAFの重要性は分かったけど、顧客情報のような機密情報を扱ってないし、シンプルなWebサイトだからWAFは不要では」という意見もあるかもしれせん。
しかしながら、そのような環境でもセキュリティリスクは存在します。例えば、以下のような攻撃が考えられます。
- 不正アクセスによるサーバー乗っ取り: 攻撃の踏み台として他の企業や組織への攻撃に悪用される
- サーバーのリソース悪用: 暗号資産のマイニングや、スパムメールの踏み台、クラウド環境においては過剰なCPU使用によるコスト増の危険
- Web改ざん攻撃: フィッシングページに改ざんされ、正規のユーザーを騙すサーバーとして利用される
このように機密情報が全くないサーバでも、そのサーバー自体を悪用される危険性があります。金銭的な損害だけでなく、企業の信用を失うリスク が存在していますので、どんな環境でもセキュアな環境にしておく必要があります。
実際に攻撃はきているのか
ここまでリスクの話をしましたが、「自分達の環境は攻撃を受けていないから大丈夫」と思っている方もいるかもしれません。
そんな方の参考情報として、弊社の検証環境への攻撃を少しお見せしたいと思います。
以下は弊社環境に対して、数週間の攻撃を可視化したものになります。
弊社環境には、顧客情報のような機密情報も無ければ、コンテンツを配信するだけのシンプルなWebサーバーしかありません。にもかかわらず、定期的にいろいろな国から攻撃が来ていることが分かるかと思います。
攻撃者としては、何かしら悪用できるサーバー等がないかを常に探していると予想できます。
ですので、テスト環境だから、開発環境だから大丈夫というわけではなく、どんな環境もセキュアにするという考えを持っておく必要があります。
まとめ
WAFの導入について迷っている方も多いかもしれませんが、実際にはどれだけアプリケーションやサーバー側で対策を実施しても、 攻撃を完全に防ぐことは不可能 です。「うちの環境は大丈夫」と思っている方も、一度 WAFの導入を検討してみてはいかがでしょうか?
なお、弊社ではクラウドWAF製品の取り扱いをしております。
PoC・構築・ヘルプデスクサポートなどのサービスメニューをご用意しておりますので、気になりましたらぜひお問い合わせください。
またブログもいくつか書いておりますので、検討する際にぜひご参考いただければと思います。