キヤノンMJ/サイバーセキュリティ情報局

ウェブサイトを保護する「WAF」と次世代型ソリューション「WAAP」はどこが違うのか

  • この記事をはてなブックマークに追加
  • 本文印刷

本記事はキヤノンマーケティングジャパンが提供する「サイバーセキュリティ情報局」に掲載された「WAFだけでは防ぎきれない?Webサイト防御の次世代型ソリューションWAAPとは?」を再編集したものです。

 日常生活やビジネスで必要不可欠な存在となっているインターネット。その利便性を高めるために、ウェブアプリケーション、ウェブサイト間でAPI連携するケースが増えている。この記事では、ウェブアプリケーション、ウェブサイトを保護するためのソリューションであるWAFと次世代型のWAAPについて、それぞれの機能と違いを解説する。

WAFとは?

 日常生活やビジネスにおいてインターネットは必要不可欠になっており、SNSや動画視聴、オンラインバンキングをはじめとした利便性の高いウェブアプリケーションが数多く提供されている。そうしたウェブアプリケーションをサイバー攻撃から保護するのがWAFだ。

 WAFは「Web Application Firewall」の頭文字からなる略称であり、ウェブアプリケーションの防御を目的とするファイアウォールである。ハードウェア、あるいはソフトウェアとして導入することで、SQLインジェクションXSS(クロスサイトスクリプティング)ブルートフォース攻撃といったウェブアプリケーションの脆弱性を狙った攻撃を検知し防御する役割を果たす。

WAFは主に、ウェブサイト、アプリケーションが格納されるサーバーの手前に設置され、事前に定義されたシグネチャと呼ばれるルールにより、外部からの不正なリクエストやレスポンスをフィルタリングすることで悪意のある攻撃から防御する。先述のように、日常生活やビジネスにおいてウェブサイトの重要性が高まっている中で、WAFはウェブサイトのセキュリティ対策に欠かせない存在となっている。

WAFとは?ウェブサイトのサイバー攻撃を防ぐ決定打となり得るのか?
https://eset-info.canon-its.jp/malware_info/special/detail/220208.html

狙われるAPI連携とWAFの限界

 ウェブサイトの防御策として重要な役割を担うWAFだが、API連携を狙った攻撃への対処は難しいという現実がある。APIとは「Application Programming Interface」の略であり、ウェブサイトやアプリ間でデータや機能の連携をするために用いられる、インターフェースあるいはプロトコルのことだ。

 例えば、登録済みのSNSアカウントを使用して、別のサービスにログインする、といった際にAPIの仕組みが用いられる。あるいは、あるウェブサイトで提供しているデータベース上の情報を別のウェブサイトで表示する、といった際にも使われる。天気予報など外部の情報を一部加工して表示しているようなウェブページでは、こうしたAPI連携が行われている可能性が高い。

 APIを使ってアプリケーション同士を連携することで、事業者はユーザーにとって便利なサービスを提供することが容易になった。しかし、スムーズな連携が可能となる一方で、APIによる連携部分はサイバー攻撃の対象ともなりやすい。なぜ攻撃者がAPIを狙うのか。その理由を以下に挙げていく。

1. オープンアーキテクチャという特性

 APIは当初、オープンアーキテクチャとして発展した。オープンアーキテクチャとは仕様を公開することで、開発を促進するアーキテクチャのこと。一時期、「APIエコノミー」という言葉で経済圏のように例えられることもあった。このオープンアーキテクチャという特性は相互連携がスムーズになる一方で、仕様が公開されることからAPIの仕様を攻撃者も把握できてしまうため、セキュリティリスクを抱えやすいという側面もある。

2. 複雑で多様な仕様の存在

 APIは提供事業者ごとに複雑で、多くの仕様が存在している。そのため、API利用側では網羅的にチェックを実施できないのが現状だ。その結果、一部のAPIの脆弱性が残されたままになる可能性は少なくない。攻撃者はこうしたAPIの多様性やチェックの不備を突いて攻撃してくる。

3. サービス間の連携に利用

 APIはサービス間の連携に用いられることから、それらのサービスをダウンさせることで大きな被害を与えることが可能となる。そのため、DoSDDoS攻撃などで狙われやすい。APIがDDoS攻撃などによってダウンした場合、関連するサービスが軒並み影響を受ける可能性もある。実際、過去にはそのようなインシデントも発生している。

 このようにAPIには、オープンアーキテクチャである点やほかのサービスと連携されることに使われるといった、APIの特性に起因する潜在的な脆弱性が存在する。現在、APIは多くのウェブアプリケーションで活用されており、APIが攻撃を受けることでサービスの遅延・停止といった大きな被害につながりかねない。

 さらに、先述のようにAPIの仕様は提供事業者ごとに異なる傾向にあり、外部環境の変化に伴って仕様変更の可能性もあるため、WAFの特徴でもあるシグネチャでは効果的に防御できないケースも出てくる。こうした理由からAPIは狙われやすいのだ。では、実際にどのような被害が起こり得るのだろうか。

実際に起こったAPI関連のセキュリティインシデント

 過去にAPIを狙った攻撃として、2つの事例を以下に紹介する。

1. シングルサインオン用のAPIを狙った攻撃

 2021年6月、大手ソフトウェア会社のウェブアプリケーションが外部からの不正アクセスを受けた。ここで狙われたのはSSO(シングルサインオン)用のAPIだった。同社が提供する関連アプリケーションだけでなく、連携している他社アプリケーションも対象となった。ユーザーアカウントやSSOのアクセストークンが外部に流出した可能性があったという。その後、問題は解消され、ログなどからも不正に悪用された形跡がなかったことが判明している。

2. 大手SNSのAPIを狙った攻撃

2022年11月、大手SNSのAPIにおける脆弱性が悪用され、1700万件以上のユーザーデータが漏えいしてしまった。このユーザーデータには、メールアドレスや電話番号などの非公開情報も含まれる。これらのユーザーデータは後日、ハッカー向けの闇サイトで販売されていたことがわかっている。なお、すでに脆弱性は修正済みである。

Web改ざんはどのように行われるのか? その手口と対策
https://eset-info.canon-its.jp/malware_info/special/detail/210105.html

WAAPとは?

 WAAPとは「Web Application and API Protection」の略で、WAFが進化したサービスと考えるとわかりやすいかもしれない。2017年にガートナー社が提唱した、次世代型のウェブアプリケーションセキュリティソリューションの概念だ。

 先述のように、APIには潜在的な脆弱性がある場合もあり、それらを攻撃されることで連携するウェブアプリケーションにも被害が及びかねない。そのため、APIを含めてウェブアプリケーションやウェブサイトを包括的に保護する必要性に迫られている。

 WAAPが有する機能は、先に解説したWAFの機能に加え、APIの脆弱性や不正なボット、高度なDDoS攻撃といった、巧妙化していくサイバー攻撃の脅威に包括的な対応を可能にする。

1. APIの脆弱性

 WAAPではAPIの脆弱性を検出し、その脆弱性を狙う攻撃を防ぐことが可能だ。WAFがシグネチャで攻撃を検知するのに対し、WAAPはシグネチャでの検知に加えて、APIの挙動を分析して、通常の挙動と異なる場合にアラートを発出する。

2. 不正なボット

 WAAPでは、数あるボットのうち、不正なボットを識別してブロックする機能を備えている。具体的には、IPアドレス、ユーザーエージェントのブラックリストや、不正なアクセスパターンなどからボットのタイプを判別してブロックする。

3. DDoS攻撃

 DDoS攻撃は大規模なアクセスを発生させることで、ウェブアプリケーションやウェブサイトをダウン、あるいはサービス停止を狙う攻撃だ。UDPパケット(速度を重視した通信)を大量に送信する「UDPフラッド攻撃」や、送信元IPアドレスを偽装したリクエスト(SYNパケット)を大量に送信する「SYNフラッド攻撃」などが存在する。WAAPには、これらの攻撃からネットワーク帯域やサーバーリソースを保護する機能が搭載されている。

 複数のウェブアプリケーションでデータを共有・活用できるAPI連携。今後はより一層、API連携によるメリットを享受できるシーンが増えていく。その有用性を最大限活かしていくためにも、ウェブアプリケーション、ウェブサイト、そしてAPI連携の適切な保護が重要なポイントとなる。従来のWAFから進化したソリューションであるWAAPを導入して保護レベルを上げることも、選択肢のひとつとして検討するとよいだろう。

Web環境を守るために「今すぐ」取り組むべき3つの対策
https://eset-info.canon-its.jp/malware_info/special/detail/220809.html