APIの普及とともに攻撃対象領域が広がる

APIの急速な成長に伴い、企業に重大なセキュリティリスクが生じている

アプリケーションプログラミングインターフェイス(API)は、さまざまなソフトウェア間の相互作用を可能にし、定義するコンピューティングインターフェイスです。多くの日常的なタスクがAPIのおかげで成り立っています。たとえば、ソーシャルプラットフォームでのメディアの共有、オンライン支払いの処理、Webサイト分析データの集計などがそうです。クラウドコンピューティングにより、企業はAPIを使用してグローバルインフラストラクチャをより簡単にデプロイできます。

現在、ソフトウェアの大半がAPIであるかAPIを使用しており、過去4~5年でAPIは飛躍的に増加しています。たとえば、API開発のコラボレーションプラットフォームであるPostmanでは、APIフォルダー数が2016年の50万未満から 2021年に入る頃には3500万近くまで急増しました。

APIの人気は急騰していますが、関連するセキュリティ対策は遅れています。門戸が広く開放されてしまっている状態の今、さまざまな種類の重大な脆弱性が表面化しています。Gartnerによると、セキュリティ対策が追いつかないまま爆発的に増加しているAPIは、セキュリティにおける過去最大の脆弱性になると予想されています。

APIの台頭によってAPI優先の開発が行われるようになる

API増加の主因の1つは、2013年から普及し始めたマイクロサービスの急増です。マイクロサービスアーキテクチャは、APIを通じてやり取りする小規模の個別アプリケーションを構築します。この方法を使えば、複雑なタスクを細分化し、各パーツを個別に構築・保守することができます。

マイクロサービスアーキテクチャの世界市場は、2018年に20億7000万ドルと評価され、2026年には80億7000万ドル(2019年~2026年の年平均成長率は18.6%)に達すると予想されています。マイクロサービスは、柔軟性、短期間の開発サイクル、優れた拡張性により、広く採用されています。

たとえば、Netflixは需要に対応するために、一元化されたモノリシックデータセンターからクラウドベースのマイクロサービスアーキテクチャに移行しました。その結果、開発者がコンテンツを特定の地域に合わせてカスタマイズできるようになるなど、顧客体験を継続的に向上させるための自由度をかなり高めました。

私たちが暮らすAPI優先の世界をもたらした傾向を分析すると、脆弱性がどこにあるのかのヒントを与えてくれます。API はどこにでもあり、APIは増加し続けています。それに伴い、リスクも増加し続けています。

API - 新しい巨大なセキュリティの脆弱性

API関連の開発とアクティビティがさかんに行われるようになっても、アプリケーションのセキュリティにつながるわけではありません。Gartnerによれば、ウェブ対応アプリケーションの90%において、露出したAPIの攻撃対象領域はユーザーインターフェイス(UI)より広くなっています。Gartnerの予想では、これまで頻度の低い攻撃ベクトルであったAPIの悪用が、2022年には最も頻度の高い攻撃ベクトルになります。

APIの脆弱性は、さまざまな領域でみつけることができます。たとえば、エンドポイント(デバイス、サーバー、仮想環境など)、データ漏えい、サービス拒否 (DoS)、認証エラー、セキュリティシステムの設定ミスなどです。どんな組織でも、数千のAPIが関わる資産が大規模な攻撃対象となることを考えると、1つの企業でもAPIの脆弱性が非常に広範な範囲にわたって影響を与える可能性があることがわかります。

その例として、データの破壊、資金の盗難、生産性の喪失、知的財産の盗難、個人および財務データの窃盗、詐欺、業務の中断、破損したデータとシステムの復元や削除にかかるコストなどを挙げることができます。APIの侵害に伴う風評被害は、信頼の喪失にもつながる可能性があり、これは重大なセキュリティイベントでもよく起こることです。

企業側が強力なセキュリティ対策を講じていたにもかかわらずAPI攻撃を受けたといったケースは、ニュースでも大きく報じられ、世間の注目を集めています。Facebookの例では、サイトの「View As」機能の弱点を攻撃されて5000万件のアカウントが露出し、FacebookがAPI対応の動画アップロード機能を作成した後に、ハッカーがアカウントアクセストークンを盗む事態に発展しました。

Uberでも露出がありました。APIリクエスト中のユーザー汎用一意識別子(UUID)が露出してAPI応答トークンが漏えいし、アカウント乗っ取りに利用されかねない事態になったのです。攻撃者は、被害者の場所を突き止めて先回りし、無賃乗車することさえできました。

FacebookとUberのケースは、「ユーザー認証の不備」を利用するAPI攻撃として知られています。認証が正しく実装されていないと、認証トークンの安全性が損なわれ、ユーザーIDの盗難につながるその他の欠陥を招きます。

新型コロナウィルス感染症がらみで在宅勤務が増えたことにより、家庭用IPアドレスの使用が大幅に増加しました。このため、悪意のあるAPI呼び出しを正当なものから分離することが極めて重要になっています。クレデンシャルスタッフィングやスパムボットネット攻撃は、ハッキングされたサーバー、ワークステーション、さらにはIoTデバイスなど、最大1万もの個別IPを使う場合があります。

API攻撃を阻止するには、適切な戦略 + 適切なネットワークが必要です

API は、アプリケーションロジックや個人を特定できる情報 (PII) などの機密データを流出してしまうため、組織のインフラストラクチャおよびセキュリティ戦略にとって重要です。しかし、従来のWebアプリケーションのセキュリティ戦略のほとんどが「ネガティブセキュリティ」モデルに依存しており、API脅威のほとんどを阻止できない恐れがあります。

ポジティブセキュリティによるAPI防御

「ネガティブセキュリティ」モデルでは、既知または疑わしい脅威のブロックリストに含まれていない限り、すべてのリクエストはWebアプリケーションファイアウォール(WAF)を通過できてしまいます。このモデルでは、正当なAPI呼び出しがブロックされてしまう誤検知が発生する可能性や、標的型攻撃の一部を逃してしまう可能性もあります。しかし、WAFがAPIセキュリティにおいて重要な役割を果たすことも事実です。たとえば、スキーマ検証の数段階(例:エンドポイント、メソッド、およびパラメーター)を通過する認証トラフィックは、WAFが捕捉できるSQL攻撃をまだ運んでいる可能性があります。さらに、APIの中には、TLSやポーズスキーマ検証課題に適さないものもあります。スキーマが最新でない場合、またはAPIが断片化され、単一のスキーマに統合することが困難な場合は、WAFがギャップを埋めるのに役立ちます。

とはいえ、ブロックリスト中心のWAFに専ら依存したAPIセキュリティでは、組織は脆弱なままです。API脅威対策では、API Shieldのような「ポジティブセキュリティ」モデルを使うことで、こうしたリスクを回避できます。「ポジティブセキュリティ」は、既知の挙動のみを許可し、他のものすべてを識別して拒否するモデルです。

ポジティブモデルへの重要なステップの1つは、パスワードの再利用や共有に対して脆弱ではない、強力な認証と承認を導入することです。たとえば、TLSやOAuthなどです。許可と証明書共有の管理には時間がかかるため、開発者は許可プロセスをできるだけ簡素化するツールを優先する必要があります。

もちろん、デバイスから証明書を抽出し、別の場所で再利用することができないわけではありません。開発者には、API 呼び出し自体を検証する方法も必要です。スキーマの検証は、API リクエストの内容 (POST本文のURLとコンテンツの後にあるクエリーパラメータ) を、予想されるルールを含む規約(「スキーマ」)と照合することによってこれを行います。検証が失敗した場合、API 呼び出しはブロックされ、無効なリクエストまたは悪意のあるペイロードからオリジンは保護されます。

API 攻撃の阻止-ネットワークは個々のツールを強化

認証/承認と API 呼び出しの検証によるポジティブセキュリティは重要ですが、さらなるセキュリティ対策も必要です。たとえば、APIは帯域幅消費型攻撃、ブルートフォース攻撃、クレデンシャルスタッフィングに対して脆弱なままです。したがって、DDoS軽減やレート制限は、企業の全体的なセキュリティ体制において依然として必要なツールです。

新しいセキュリティツールを既存のものに加えると(例:DDoS軽減やレート制限など)、新たな課題が生じる場合があります。API 呼び出しが多くの異なるツールを通過していくと、監視とログ記録が煩雑になります。さらに、地理的に分散したデータセンター内のさまざまなツールにトラフィックを経由させると、遅延が増え、アプリケーションパフォーマンスが低下する可能性があります。

これらの理由から、APIセキュリティには、より大規模なエッジネットワークに統合される複数のセキュリティ機能を用いるのがベストです。エッジネットワークには次のような利点があります。

  • 耐障害性: 複数のエッジネットワークロケーションが API セキュリティツールをホストできる場合、個別のシステム停止が及ぼすリスクは少なくなります。

  • 遅延の減少: 複数のAPIセキュリティツールが同じエッジネットワークロケーション内で動作する場合、トラフィックが異なる場所間を行き来する必要がありません。

  • 脅威インテリジェンス: エッジネットワークに十分なカバー力がある場合、多数のAPIに対する攻撃を分析し、このインテリジェンスを利用して、他のネットワークをより適切に保護できます。

  • 簡単なロギング: 単一のネットワークを使用して、単一の管理画面で操作することで、開発者は信頼できる情報を一つのソースから得ることができます。

先進企業アーキテクチャ向けに構築されたCloudflareは、強力なクライアント証明書ベースのIDと厳格なスキーマベースの検証によって、APIのセキュリティ確保をシンプルにします。ビジネスに欠かせないWebアプリケーションを悪意のある攻撃から保護する、インテリジェントでスケーラブルなソリューションであり、既存インフラストラクチャを変更することなく利用できます。

この記事は、技術関連の意思決定者に影響を及ぼす最新のトレンドとトピックについてお伝えするシリーズの一環です。

記事の要点

この記事を読めば、以下が理解できます。

  • API使用の増加率

  • APIによって攻撃対象領域がいかに拡大するか

  • このリスクを阻止する戦略

  • 統合型プラットフォームのメリット

関連リソース


このトピックを深く掘りさげてみましょう。

「Gartner Magic Quadrant for Web Application and API Protection(WAAP)」レポートで、APIの脆弱性対策について学んでください。

Get the report

大人気のインターネット関連インサイトの要約を毎月お届けします。