この記事は、2023年11月にBlack Hat MEAで行った講演に基づいています。年末を控え、APIセキュリティの状況を検証します。検証の理由は主に2つあります。第一の理由はここ数年と同じで、APIの利用が拡大していること。HTTPトラフィックの大半を占めています。第二の理由は、この拡大に伴ってAPIへの攻撃が増加していることで、おそらくこちらの方が重大でしょう。OWASPトップ10 APIリストの改訂版が発表されたにもかかわらず、API攻撃が相変わらず増加していることは、より大きな懸念材料だと言えるでしょう。そこで、この現象と根本原因を検証し、APIエコシステムの強化に欠かせない解決策を考察しましょう。
APIはここ数年の間に、既存テクノロジー上に構築し、より統合された動的なアプリケーションを作成するための最強ツールになりました。動的なソフトウェアアプリケーションとビジネスを同様に実現するものとなったのです。APIは生活を向上させるような使い方もできます。例えば、イギリスの地方自治体は、環境庁の降雨APIが提供するデータで自地域の傾向を確認し、それに応じた準備を整えたいと考えるかもしれません。市民関与推進グループは、市民向けAPIと統合して次期選挙や投票場所、候補者に関する情報を住民に提供できるアプリケーションを作りたいと考えるかもしれません。また、オープンバンキングのような規制上の理由もあります。銀行が他行やサードパーティプロバイダーに顧客財務データへのAPIアクセスを許可しなければならないオープンバンキングを導入する国が増えているのです。それによって競争が促進され、最終的には消費者にとってもプラスになります。
APIの数が増えるにつれて、APIに対する攻撃も増えています。Gartner社は2021年に、低頻度だったAPIの悪用が2022年までに最も高頻度の攻撃ベクトルになり、その結果、企業のWebアプリケーションのデータ漏洩が発生すると予測しました。数々の警告にもかかわらずAPI攻撃の成功率は依然高く、ここ数年で多くの有名企業が犠牲になっています。OWASPはWebアプリケーションのセキュリティ強化に注力する団体で、2019年に初めてAPIに特化したトップ10リスクを発表しました。このリストが今年更新され、不正利用された大企業のリストも残念ながら更新されました。中には今年2度やられた企業もあります。大企業が餌食になっているのです。ニュースにならない企業に何が起きているかを想像してみてください。今年がAPI侵害の記録的な年になる可能性は十分にあります(この記事は指弾を目的としたものではありませんので、特定企業を名指しすることは避けました)。
実は、APIの増加は万人に影響を与えます。データ漏洩の世界平均コストが445万ドルという事実はさておき、講じている保護措置が十分と思っていても潜在的には不十分かもしれない主体が、ますます多くの個人データを手にしているのです。データ露出やアカウント乗っ取りがアイデンティティ窃取につながることが、往々にしてあります。API攻撃の急増により、より深い理解とより洗練された防御体制の確立が必要になっています。
昨年を通して見られたセキュリティ上の主要課題は、以下の5分野に分類されます。
認証/認可の難問:漏洩は多くの場合、認証/認可メカニズムの弱点に由来します。原因が認証情報の侵害であれ、認証方式の甘さであれ、関連プロセス/プロトコルの不備であれ、アイデンティティの中心性は脅威状況が変化しても不動です。BOLA(オブジェクトレベル認可の不備)は、OWASPの当初リストと数年を経て今年更新されたリストの両方で、APIセキュリティリスクの第一位になっています。
APIの普及:社内向け、公共向けを問わず、APIの増加は驚異的です。APIの多様性だけでなく、APIが使用されるコンテクストの多様性も、この課題の難易度を着実に上げています。
WAF:通常、API固有のトラフィックには無関係で、上記ポイント1の解決にはなりません。大半の攻撃は正当なトラフィックのように見えるため、多くのWAF(機械学習の要素を持つものも含めて)は通してしまいます。早期に踏むべきステップはWAFを疑うことです。以下は、講演でお見せした関連スライドです。
中途半端:シフトレフトの重要性は広く認識されていますが、実行できなければ、堅牢なエンドツーエンドの保護を実装しても効果が著しく弱くなります。セキュリティを考慮した設計と構築という考え方は、多くのチームにとって依然馴染みが薄いようです。他者に適応しつつ継続的に進めるプロセスであるべきだという事実も然りです。
API の設定:APIセキュリティのアキレス腱である設定ミスは、相変わらずAPIセキュリティ管理における悩みの種です。これには、APIの実装で犯しかねないさまざまなミスが該当します。例えば、使用されていないメソッドを無効化しない、使用されていないデフォルトエンドポイントを無効化しない、過剰なロギングなどです。脅威インテリジェンスの進化に合わせて継続的に調整していくのではなく、手動設定に依存するきらいがあります。
この分野の進歩は、次の3つの根本原因によって妨げられています。
知識/専門知識:無知。個人やチームに、API固有のセキュリティに関する知識、理解、認識が欠けている場合で、経験不足、教育不足、好奇心不足などが原因です。
資金:予算。各チームは限られた資源でより多くのことを為すよう求められています。知識豊富なエンジニアは高給かもしれませんし、API固有のセキュリティツールやゲートウェイはたいてい有料です。トレーニングにも多額の費用がかかります。資金割り当ての際は、攻撃された際のコストは想定しないものです。
優先順位:期限。新製品/APIのローンチが、承認に必要なセキュリティ対策より重要視されがちです。セキュリティと開発が連携して機能しなければ、将来攻撃に遭って新聞沙汰になるでしょう。
重要なのは、セキュリティと開発は相互排他的ではないということです。
可視性:見えなければ守れません。ディスカバリと呼ぼうがインベントリと呼ぼうが、重要なのは、チームが常に「何がどこにあるか」を把握していることです。シャドー、ゾンビ、ベータ、インビジブルAPIはいずれも、攻撃者がピボットしてインフラに手っ取り早く入り込むための侵入口になります。
ゼロトラストアーキテクチャ:すべてのアクセスリクエストを、良性と証明されるまでは潜在的悪性として取り扱い、信頼のパラダイムをシフトします。ID/SSOプロバイダーがハッキングされた場合に備えましょう。
AIによる異常検知:リアルタイムで異常検知するために人工知能を統合。機械学習アルゴリズムを使ってパターン、挙動、逸脱を分析し、潜在的な脅威をプロアクティブに特定し、緩和できるようにします。
DevSecOps統合の深化:開発プロセスにセキュリティをシームレスに組み込むことは、もはや推奨事項ではなく必須事項です。継続的な統合とセキュリティを焦点とするDevSecOpsが、耐障害性の高いAPIエコシステムを実現するための枢要戦略として浮上しています。
多層防御:セキュリティ戦略は重層的であるべきです。帯域幅消費型攻撃を防止するシステムになっているか?認可/認証チェックは厳格か?暗号化のフローは堅牢か?…といった具合に、幾重にもチェックするのです。
これらの対策でも、推奨される他の一般的対策(脅威モデリング、分散型IAM、リアルタイム情報フィード、自動応答、ネットワークセキュリティ強化、実行時検証など)でも、念頭に置くべきことは次の3つのプライマリカテゴリーに分類されます。
ガバナンス - プロセス、ポリシー、慣行の検討
ツール - テクノロジーへの投資
人材 - 訓練、テスト、文化
個人もチームも企業も、万能の解決策はないということを忘れてはなりません。リスク受容レベル、ビジネスニーズ、規制要件などを考慮しなければなりませんし、過去の攻撃からも学ばなければなりません。もし被害に遭ったとしても、透明性を保つことは(規制遵守のためだけでなく)他者があなたの経験から学べるようにする上でも役立ちます。
2023年が終わろうとしている今、APIセキュリティという複雑な課題の解決には、根本原因に的確に対処し最新のソリューションを取り入れる多面的なアプローチが必要なのは明らかです。プロアクティブでダイナミックな防御に投資する意思があれば、険悪な脅威状況も乗り切っていけるでしょう。企業は、概念から非推奨まで適用されるルール定義があるか確認する必要があるでしょう。
警戒を怠らず、よい新年をお迎えください!
この記事は、技術関連の意思決定者に影響を及ぼす最新のトレンドとトピックについてお伝えするシリーズの一環です。
ビジネスを発展させるAPIを保護する方法について、詳しくはホワイトペーパー『APIセキュリティのためのガイド』をご覧ください。
Damiete King-Harry — @damiete
ソリューションアーキテクト、Cloudflare
この記事では、以下のことがわかるようになります。
API攻撃がかつてないほど危険な理由
OWASP APIトップ10の価値
最新の洗練されたソリューションで貴社を保護する方法
利用開始
リソース
ソリューション
コミュニティ