影に潜んでいるAPIの脅威に光をあてる
2024年3月に発表されたState of the Internet (SOTI)レポートでは、Akamaiの独自のデータ分析によって明らかになったAPI攻撃の傾向や、脅威の緩和、APIに関連する最新のセキュリティコンプライアンスなどを取り上げています。
発行10周年を迎えたAkamai State of the Internet (SOTI) レポートでは、独自のデータ分析に基づきサイバーセキュリティの脅威に関する洞察を示してきました。Web攻撃の脅威は常に変化を続けてきましたが、今回のレポートでは、より詳細に攻撃の変化を把握するため、これまで「Webアプリケーション攻撃およびAPI攻撃」として纏めていたデータから、APIへの攻撃を切り出して分析を加えました。
APIセキュリティでは、セキュリティに関する包括的な可視性が求められます。モバイルアプリ、IoT、サプライチェーンやビジネス間連携、マイクロサービス化などによってAPIの利用が加速しています。その裏側で、例えばゾンビAPIやシャドウAPIといった、管理されていないAPIなどの盲点が生じています。それを防ぐには、すべてのAPIを探索して可視化し、サイバーリスクを管理するとりくみが必要です。
このSOTIレポートでは、APIを狙う従来型の攻撃とAPIに特有の攻撃の両方に焦点をあてています。また、脅威を軽減するためのベストプラクティスや、APIに関連するコンプライアンスの動向についても触れています。
このブログ記事では、レポートで取り上げたGlobalの分析データから、特別に日本の企業、組織向けの攻撃のみを切り出した分析データを示し、洞察を加えて解説します。
SOTIレポートで取り上げている主な洞察
- Akamaiが観測した2023年1月から12月(1年間)のWeb攻撃総数の29%が、APIを標的にしており、APIがサイバー犯罪者の重点を置く攻撃対象となっています。
- 実際のAPIへの攻撃では、よく知られた、ローカルファイルインクルージョン (LFI)、SQL インジェクション (SQLi)、クロスサイトスクリプティング (XSS)などの手法が頻繁に観測されています。これらのリスクの一部は、2023版のOWASP API Security Top 10ではランク外となりましたが、引き続き主要な攻撃ベクトルとして着目する必要があります。
- APIの認証・認可や過度なデータ露出などのビジネスロジックの脆弱性や欠陥はその内容がサービスによって異なるため、APIごとの平時のふるまいのベースラインのプロファイルなしにアノーマリなAPIアクティビティを検出することが困難です。アノーマリなAPIアクティビティを監視するソリューションを持たない組織は、データスクレイピング(認可されたAPIアクセスを用いて、ゆっくりとデータをスクレイピングする新しいデータ侵害)などのランタイム攻撃のリスクにさらされています。
- APIは、デジタル化する社会の基盤を形成し、ビジネス変革の中心に位置しているため、業界のトレンドと関連するユースケース(ロイヤルティ詐欺、不正利用、認可攻撃、カーディング攻撃など)を理解することが重要です。
- 企業や組織は、GDPRや、PCI-DSS 4.0 などの最新の規制にそってシステムの再設計が必要となる事態を回避するために、コンプライアンス要件と新たな法律について早期に検討する必要があります。
攻撃の標的となっているAPI
顧客やビジネスパートナーに提供されるAPIは、重要で価値のある情報へのゲートウェイになりつつあります。多くの組織にとってのセキュリティ上の課題は、API独特のセキュリティを踏まえたプログラミングスキルの不足と、APIインフラの包括的な利用実態の把握不足です。ガバナンスの欠如などの理由で、包括的なAPIインベントリが把握できていない組織ではアタックサーフェス(攻撃対象領域)の把握が困難になっています。
Akamai の調査では、2023年1月から12月の期間、GlobalではWeb攻撃全体の29%がAPIを標的としていることがわかりました。日本の企業、組織に対してもWeb攻撃全体の23.4%(全体のおよそ1/4)をAPIへの攻撃が占めており、図1に示すように着実に増加傾向を示していることから、決して見過ごすことのできない脅威となっています。
また、攻撃者がどのように企業の API をターゲットにしているのかや、攻撃者が頻繁に使用する戦術を調査することで、焦点を当てるべき防御領域が明らかになる可能性があります。
APIを狙った攻撃ベクトルのGlobal分析から、WAF (Web Application Firewall) でリアルタイムに検知が可能な従来の攻撃手法と、特別な予防策の検討が必要なAPI に特有の攻撃手法両方のリスクにさらされていることが明らかになりました。これは、日本への攻撃においても同様です。図2で示したのは、Web攻撃全体に占めるAPI攻撃が占める割合の高い攻撃ベクトルを順に並べたグラフです。
ひときわ高い割合を示した ”Data Harvesting” は、標的となるシステムの構成や、API通信の弱点を探ろうとする攻撃です。脆弱性に関する情報を収集するほか、本来アクセスできるべきではない情報へのアクセスを取得する目的で行われます。続く ”Active Session” は、セッション中にリクエストが繰り返されるなどの不審なふるまい、”WAT” (Web Attack Tool) は、悪意のある目的で利用される可能性のある脆弱性検査ツールからのアクセス、”HTTP” (HTTP Protocol攻撃) は、機密データの読み取りやクライアントやサーバーのなりすましなど、悪意のある目的でさまざまなプロトコルの脆弱性の悪用を試みる攻撃をそれぞれ示しています。
5位以下では、SSRF(サーバーサイドリクエストフォージェリー), LFI(ローカル・ファイル・インクルージョン), SQLインジェクションなどの通常のWebアプリケーション攻撃と同様の攻撃ベクトルが並び、約12%〜21%の割合を示しています。このことから、API保護に関して、これらの攻撃ベクトルへの対策も引き続き重要であることがわかります。
業界別に見てみると、図3で示すように、日本の製造業へのWeb攻撃全体に占めるAPI攻撃の割合が、56.9%と突出して多いのが特徴と言えます。
続いて、日本でAPI攻撃の割合の高い業界としては、ゲーム業界、ビジネスサービス、ハイテク、コマースが挙げられます。
APIの悪用とセキュリティ上の課題
現在、企業や組織が直面している APIに特有のリスクは、ポスチャの課題とランタイムの課題に大別されます。
1. ポスチャの課題は、企業やサービスごとに異なるAPIの使用や実装上の欠陥に起因しています。具体的な欠陥をタイムリーにアラートで示唆できれば、セキュリティチームが攻撃者に悪用される前に優先度の高い脆弱性を特定して修正するのに役立ちます。最も一般的なポスチャの課題は次のとおりです。
- シャドウ API エンドポイント(管理されていないAPI)
- 認可されていないリソースへのアクセス
- URL 内に含まれるセンシティブなデータ
- 緩い CORS ポリシー
- 過剰なクライアントエラー
2. ランタイムの課題は、アクセスブロックなどの緊急の対策が必要な、いま起きている脅威 です。しかし、以下で挙げたような試みは、通常「認可されたAPIアクセス」を悪用して行われ、明示的な攻撃のアラートと対照的に微妙なニュアンスを持つことがよくあるため、特別なしくみによってリスクのあるアクセスを見分ける必要があります。
- 認可されていないリソースへのアクセスの試行
- 異常な JSON プロパティ
- パスパラメーターファジングの試行
- あり得ないタイムトラベル
- データスクレイピング
これらのAPI特有の課題を検討する際には、利用しているセキュリティソリューションが、API特有のリスクと、それを悪用した攻撃を予防できているか、次にあげる3点について確認が必要です。
- 可視性: すべてのAPI を包括的に可視化し、APIに特化したリスクの発生を予防または保護するためのプロセスと技術的なしくみを持っていますか? APIは様々なビジネス上戦略で用いられているほか、モバイルアプリやIoTなどのシステムや商品に組み込まれて事業者に納入される場合も多いため、セキュリティ上の監査の目が行き届かないことも大きな課題です。
- 脆弱性: API の開発は、ベストプラクティスに従っていますか? OWASPで指摘されている、最も起きやすいコーディングの不備の問題を漏れなく発見できていますか?加えて、頻繁に更新されるAPIに潜む脆弱性を継続的にチェックできていますか?
- ビジネスロジックの悪用: APIアクセスの正常性を示すベースラインのプロファイリングはできていますか?それに基づくアノーマリアクセスの検知はできていますか?
全体的な目標としては、脅威を迅速に軽減するために、プロセスを確立し、調査を実施するための可視性と能力を備えることです。このブログではいくつかの指針を示しただけですが、フルレポート版のSOTI Security Reportには、脅威への対処策の方法論や、業界別のケーススタディも含まれています。
APIに関する可視性を向上する
APIに関する開発において、“セキュリティバイデザイン” に基づきプロセスを確立するには、全てのAPIが保護されている状態を常に可視化し、問題点をフィードバックできるしくみが必要です。管理目標の基準は次のとおりです。
- ディスカバリー — 組織内のAPIのインベントリを可視化します。
- リスク監査 — 検出された各APIのリスクの状況を可視化します。
- ふるまい検知 — 正常な使用状態を元にアノーマリな不正利用を可視化し、各APIに対するアクティブな脅威を把握します。
- 調査と 脅威ハンティング — エキスパートによる脅威ハンティングによって、APIアセット内に潜む脅威を発見、可視化します。
このようなAPI管理のための可視化と開発チームへのフィードバックループが確立すれば、大きなメリットが得られます。図4は、ある企業におけるAPIセキュリティ対策の進捗とアラート数の推移を示したものです。
1 月と 2 月に、専用の監視システムを導入し、シャドウ API の発見と、新たに可視化されたAPIの脆弱性が排除された結果、ポスチャアラートは大きく減少しました。その後APIアセットに変更が加えられた際には、ポスチャアラートが時によって急増するといった様子もみて取れます。この例を見ると、頻繁に更新されるというAPIの特性を念頭におくと、スナップショット的な脆弱性検査と比較して、継続的な監視とタイムリーなアラートがより有効であることがわかります。
APIを攻撃から守るには?
ここで例として取り上げた企業では、次の5つのステップを辿ることで、全てのAPIが保護されていることを確認できている状態に辿り着きました。
Step1: 影に潜んでいたAPIと脅威に光をあてる
Step2: 整理整頓(棚卸し)
Step3: API ポスチャの強靭化(Hardening)
Step4: 脅威の検出と対処(レスポンス)の強化
Step5: プロアクティブな脅威ハンティングを活用する
全てのAPIが保護されている状態を維持するためのソリューションについて、検出、調査、および脅威を軽減する能力に優れているかを評価する必要があります。
次にレッドチーム(セキュリティを検証する目的の独立チーム)が、APIの認証・認可と、データの漏えい、JSON プロパティなどの脆弱なポイントの残存の有無やスクレイピングなどのランタイムの脅威に対して、十分な備えができているかをテストします。この検証は、攻撃の影響軽減するプロセスが機能しているかを確認するために、パープルチーム演習(攻撃の攻め手と守り手双方による演習)として実施します。
フルレポート版に含まれているユースケース(ロイヤルティ詐欺やカーディング攻撃など)は、これらのテストの計画を立てるのに、最適なテンプレートとなるでしょう。
より詳細な情報
SOTI フルレポート版には、Globalの傾向分析情報とともに、アジア太平洋および日本 (APJ)、ヨーロッパ、中東、アフリカ(EMEA) の各地域別のAPI攻撃の傾向分析が含まれています。また、最新の脅威やその他の洞察の詳細については、セキュリティリサーチハブをご覧ください。