近年、API の普及により、企業の運営方法が大きく変化しました。 API を使用すると、さまざまなアプリケーションが相互に通信してデータを交換できるようになり、より効率的で効果的なビジネス プロセスとソフトウェア開発が可能になります。
しかし、API の使用が増えると、適切な監視や管理が行われないまま、分散したチームやアーキテクチャに API が作成、展開されるAPI スプロール化のリスクが生じます。 各 API は、攻撃者が機密データやシステムに不正にアクセスするための潜在的なエントリ ポイントとなるため、企業にとって新たなセキュリティ リスクが生じる可能性があります。
API の拡散の主な要因の 1 つは、マイクロサービスの急増です。 マイクロサービス アーキテクチャは、大規模なアプリケーションを、API を介して相互に通信する小規模な個別のアプリケーションに分割します。これにより、複雑なアプリケーションが個別の部分に分割され、個々のチームが管理し、トラフィックの需要に合わせて互いに独立して拡張できるようになります。
マイクロサービスは、柔軟性とスケーラビリティの向上など、開発者にとって多くの利点を提供します。 ただし、これらの利点には、複雑さが増すなどのトレードオフが伴います。 その結果、多くの企業がマイクロサービスの構築に API ファーストのアプローチを採用しています。 この戦略では、アプリケーションとサービスの設計プロセスは、リクエストと応答の形式に至るまで、API の動作を概説する API 契約から始まります。
API ファーストのソフトウェア開発のメリットは、特に設計と展開時に API セキュリティを真剣に考慮しないと、簡単に損なわれる可能性があります。 最も基本的なレベルでは、API が増えると攻撃対象領域も増えます。 API は現代のソフトウェア開発において重要な役割を果たしていますが、同時に悪用も容易になっています。
2018 年、ガートナーは、2022 年までに API がアプリケーションに対する最も一般的な攻撃ベクトルになると予測しました。 むしろ、それほどの遅延を予測したのは楽観的すぎた。 大手企業で数百万人のユーザーに影響を与えた注目度の高い API 侵害はすでに発生しており、さらに頻繁に発生しています。
こうした攻撃の幅広さと多様性は、セキュリティおよびエンジニアリングのリーダーが直面している課題を明らかにしています。 一部の攻撃では、インターネットに誤って公開された API が悪用されます。 その他には、コード リポジトリで誤って公開された API キーやその他の認証方法を使用するものもあります。 あるいは、攻撃者は VPN エクスプロイトを通じて内部環境にアクセスし、内部 API を使用してデータを盗み出します。
API の脅威から保護する最も一般的な方法は、従来の Web アプリケーション セキュリティ戦略と最新の API セキュリティ技術を組み合わせることです。 従来の戦略では、今日の多様な API の脅威に対処できないことがよくあります。 自動 API 検出や API コントラスト テストなどの最新技術は、これらのギャップを埋めようとします。
企業にとって、シールド ライト(展開されたアプリと API を保護するためにグローバル コントロールとセキュリティ ポリシーを実装) とシフト レフト(アプリと API が実稼働状態になる前に脆弱性を排除するためにコードにセキュリティを組み込む) が重要です。 どちらの戦略も単独では包括的な API セキュリティを提供することはできないため、侵害を防ぐ鍵となるのは、次の 3 つのカテゴリの API セキュリティ プラクティスにまたがる総合的なアプローチです。
適切な戦略と適切なツールを組み合わせることで、組織は API を攻撃からより適切に保護し、ソフトウェア システムのセキュリティを確保できます。 プラットフォーム エンジニアリング リーダーが API をライフサイクル全体にわたって保護するために実装する必要がある重要な機能とツールを見てみましょう。
API セキュリティ ポスチャ管理により、API によって公開される数、種類、場所、データの可視性が向上します。 この情報は、各 API に関連するリスクを理解し、適切な保護措置を講じるのに役立ちます。
主な機能:
代表的な技術:
アーキテクチャ内のすべての API を確実に見つけられるテクノロジーは存在しないことを念頭に置くことが重要です。 ほとんどの検出手法は、既存のロードバランサ、API ゲートウェイ、および Ingress コントローラによって提供される可視性に依存しており、これらのアーキテクチャ コンポーネントをバイパスする誤った構成を検出できない可能性があります。
最終的には、コードレビューと API ファーストのベスト プラクティスに従うことで、より効果的な長期的な予防策が実現します。 しかし、自動化された API 検出ツールは、セキュリティ体制のビューを迅速に構築し、管理されずに保護されない可能性のある API を検出するために依然として役立ちます。
API セキュリティ態勢管理は企業全体のセキュリティに関係しますが、API セキュリティ テストは個々の API に大きく関係します。 最も基本的な API セキュリティ テストは、API ランタイム (API の背後で実行されるアプリケーション) をテストすることで、脆弱性とそれに関連するリスクを特定して防止するのに役立ちます。認証、承認、レート制限、暗号化の条件など、基本的なセキュリティ要件が満たされていることを確認できます。
主な機能:
代表的な技術:
オープンソースの契約テスト ツールと、専用の API セキュリティ ベンダーによる商用製品の両方が存在します。 アプリケーション セキュリティ テスト (AST) 市場は数十年前から存在しており、API 専用のスキャンおよびテスト ツールを提供するベンダーが増えています。
API ランタイム保護とは、API がリクエストを操作および管理する際にセキュリティを確保することを指します。 API 自体のコードだけでなく、プラットフォーム インフラストラクチャへのセキュリティの組み込みも優先されます。 目的は、展開後に発生する悪意のある API リクエストを識別して防止することです。
主な機能:
代表的な技術:
すべての API ゲートウェイと WAF/WAAP が同じように作成されるわけではありません。 一部のサービス、特にクラウドやその他のプラットフォームで利用できるネイティブ ソリューションには、マルチクラウドやハイブリッド アーキテクチャに必要なグローバルな可視性と標準化が欠けています。
API のセキュリティ保護の重要性を考えると、組織的な方法で API セキュリティに取り組むことが不可欠です。 プラットフォーム エンジニアリング リーダーとセキュリティ リーダーは協力して、API ライフサイクル全体のセキュリティ要件に対処する必要があります。 先ほど説明したように、これはおおよそ次の 3 つの主な実践領域に該当します。 API セキュリティ態勢管理、API セキュリティ テスト、および API ランタイム保護。 つまり、API がいくつあるか、API のエラーをテストする方法、コードにセキュリティを組み込む方法を把握することに重点を置く必要があります。
すべてのサイバーセキュリティと同様に、API セキュリティは、ネットワーク エンジニア、セキュリティ運用リーダー、プラットフォーム エンジニアリング リーダー、ソフトウェア開発エンジニアなど、多くの関係者とのコラボレーションを必要とする継続的なプロセスです。 幸いなことに、API を保護する方法はそれほど難しいことではありません。
ほとんどの組織では、クロスサイト スクリプティング、インジェクション、分散型サービス拒否など、API を標的とする可能性のあるよく知られた攻撃に対抗するための対策をすでに講じています。 そして、上で説明したベストプラクティスの多くは、経験豊富なセキュリティ専門家には非常によく知られているはずです。 組織が運用する API の数に関係なく、目標は強固な API セキュリティ ポリシーを確立し、長期にわたって積極的に管理することです。
NGINX API Connectivity Stack の 30 日間無料トライアルを開始してください。これには、API を管理、統制、保護するための F5 NGINX Management Suite API Connectivity Manager、API ゲートウェイとしての F5 NGINX Plus、高度な API セキュリティのための F5 NGINX App Protect WAF および DoS が含まれます。
「このブログ投稿には、入手できなくなった製品やサポートされなくなった製品が参照されている場合があります。 利用可能な F5 NGINX 製品およびソリューションに関する最新情報については、 NGINX 製品ファミリーをご覧ください。 NGINX は現在 F5 の一部です。 以前の NGINX.com リンクはすべて、F5.com の同様の NGINX コンテンツにリダイレクトされます。"