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

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

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

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

APIの人気は急騰していますが、関連するセキュリティ対策は遅れています。門戸が広く開放されてしまっている現在では、さまざまな種類の大きな脆弱性が浮上しています。Gartnerの調査によると、セキュリティ対策が追いつかないまま、爆発的な増加を遂げているAPIは、過去最大のセキュリティ上の脆弱性になると予測されています。

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

API増加の主因の1つは、2013年に普及し始めたマイクロサービスの急増です。マイクロサービス型のアーキテクチャは、APIを使用して相互に通信する小さな個別のアプリケーションを開発します。この方法を使用すれば、複雑なタスクは小さなパートに細分化され、各パートは独立して開発/維持されます。

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

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

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

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

API 関連の開発とアクティビティが普及しても、安全なアプリケーションの増加につながるわけではありません。Gartnerに調査よると、2021年までに、ウェブ対応アプリケーションの90%は、ユーザーインターフェイス (UI) ではなく、公開された APIで攻撃対象領域が広くなります。Gartnerは、APIの悪用が2022年までに、頻度の低い攻撃ベクトルから最も頻度の高い攻撃ベクトルに移行すると予測しています。

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

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

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

Uberでも、データの漏えいがありました。APIリクエストのユーザーのUUID(universally unique idenifier)を使って、API応答でトークンがリークされ、それがアカウントの乗っ取りに使われました。攻撃者はその後、被害者の場所を追跡し、無賃乗車することさえできました。

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

新型コロナウィルスの影響で在宅勤務が増加したことにより、家庭用のIPアドレスの使用が増加しました。このため、悪意のあるAPI呼び出しを正当なものと分離することがさらに重要になっています。クレデンシャルスタッフィングやスパムボットネット攻撃は、ハッキングされたサーバー、ワークステーション、さらにはIoTデバイスで構成された最大10,000にものぼるIPを使用することがあります

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

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

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

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

つまり、API セキュリティのためにブロックリスト中心のWAFに依存するだけでは、組織は脆弱になります。API脅威対策では、API シールドのような既知の動作のみを許可し、他のすべてのものを拒否する「ポジティブセキュリティ」モデルを使用することで、これらのリスクを回避できます。

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

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

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

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

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

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

  • 耐障害性: 複数のエッジネットワークロケーションが API セキュリティツールをホストできる場合、個別のシステム停止が及ぼすリスクは少なくなります。
  • 遅延の減少: 複数のAPIセキュリティツールが同じエッジネットワークロケーション内で動作する場合、トラフィックが異なる場所間を行き来する必要がありません。
  • 脅威インテリジェンス: エッジネットワークに十分なカバー力がある場合、多数のAPIに対する攻撃を分析し、このインテリジェンスを利用して、他のネットワークをより適切に保護できます。
  • 簡単なロギング: 単一のネットワークを使用して、単一の管理画面で操作することで、開発者は信頼できる情報を一つのソースから得ることができます。

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

APIセキュリティを深く掘り下げてみましょう。2020年版のGartnerのWAFマジッククアドラント で、さらなるAPIの脆弱性対策の詳細についてご覧ください。

この記事は、現代のテック企業の意思決定者に影響を与える最新のトレンドとトピックをお届けするシリーズの一部です。