ビジネスニーズを満たすために、APIを活用する機会は増している。だが、セキュリティのツール、プロセス、スキルセットはAPIの活用に追い付いていない。企業のAPIセキュリティについて調査したEnterprise Strategy Groupでシニアアナリストのメリンダ・マークス氏に話を聞いた。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
APIはモバイルアプリケーション開発やWebアプリケーションにとって極めて重要だ。開発者はAPIを使用してサードパーティーのサービス、ライブラリ、ツールを自身のアプリケーションに統合でき、リソースをゼロから構築する手間を省ける。コンポーネントの更新や置き換えも容易になり、必要に応じてアプリケーションをスケーリングできる。
ビジネスニーズを満たすために、APIを活用する機会は増している。だが、セキュリティのツール、プロセス、スキルセットはAPIの活用に追い付いていない。
Enterprise Strategy Group(ESG)が2023年8月24日(米国時間)に公開した調査結果「Securing the API Attack Surface」(APIアタックサーフェスのセキュリティ確保)によると、APIを利用しているほぼ全ての企業が過去12カ月以内に少なくとも1件のセキュリティ侵害を経験しており、APIへの依存度が高まっているにもかかわらず、基本的なセキュリティ対策に苦労していた。同調査の結果は、クラウドセキュリティテクノロジーの製品やサービスの評価または購入を担当するIT/情報セキュリティおよびアプリケーション/DevOpsの担当者397人の回答結果に基づくものだ。
企業にAPIセキュリティの取り組みが求められる理由や、APIセキュリティを実践していく上で必要な製品、機能について、同調査の共同執筆者でシニアアナリストのメリンダ・マークス氏に話を聞いた。
――APIセキュリティに関する調査を実施したきっかけを教えてください
メリンダ・マークス氏(以後、マークス氏) クラウドネイティブアプリケーションやマイクロサービスベースのアプリケーションの機能を優れたものにしているのは、複雑な設計ができることと、呼び出しやリソースへのアクセスを動的に行う能力だ。そうしたこと全てがAPIの必要性を高め、APIを作成する機会を増やしている。
しかし、生産性の向上やイノベーションをもたらす技術の利用ではよくあることだが、人々はセキュリティへの影響や、新たな攻撃対象領域を生み出す事実を考えないことが多い。適切に管理しセキュリティを確保しなければ、攻撃者が侵入できてしまう。他のルートで侵入した攻撃者がAPIを利用して、大混乱を引き起こす可能性もある。
今回の調査の実施を考えた最大の理由は、APIが増加していることと、APIにはリスクが伴うことにある。さらに、APIにまつわる話題が数多く取り上げられ、多くのマーケティング活動が行われ、多くのセキュリティベンダーが自社製品を宣伝している。人々はこうした状況にどのように対処すべきかを考えようとしている。現在使用しているセキュリティツールはAPIに対応しているのか、他にも確認すべきことはあるのか。自社にとって大きな懸念とならないようにリスクを軽減する方法を見つけるとしたらどうすればよいのか、検討している状況だ。
――APIと他の種類のソフトウェアでは、関連するセキュリティリスクがどのように違うのでしょうか
マークス氏 アプリケーションのセキュリティ侵害を考えると、そのアプリケーションの構築と実行に必要なコードをハッキングする攻撃を思い浮かべるのが一般的だ。OWASP(Open Worldwide Application Securty Project)のトップ10(Webアプリケーションの深刻なセキュリティリスクについてのコンセンサスリスト)のようなアプリケーションセキュリティのリソースに目を向けると、従来はアプリケーションの構築と実行に必要なコードに焦点が当てられていた。コードインジェクションやSQLインジェクション、アクセスの問題、クロスサイトスクリプティング(XSS)などが最も深刻な脆弱(ぜいじゃく)性とされるのが一般的だった。そのため、セキュリティチームは、このようにアプリケーションセキュリティの上位に挙げられるリスクに対処する方法を模索する。
だが、クラウドネイティブ開発では、呼び出しを行うリソースや他のアプリケーションと相互作用する動的な環境で実行されるようにアプリケーションを構築する。こうしたアプリケーションを実行するには、さまざまなコンポーネントが必要になる。アプリケーションのコードや実行される場所だけでなく、アプリケーションの実行に必要なもの全てのセキュリティを確保しなければならない。そして、クラウドネイティブアプリケーションのセキュリティ確保で大きな部分を占めるのが、接続部分を担うAPIだ。
APIのリスクに対処するため、OWASPではAPIセキュリティにおける課題のトップ10リストを別途考案している。だが、APIセキュリティの担当者の中には、そのリストがAPIの脅威を適切に捉えているかどうかに疑問を抱く担当者もいる。つまり、APIのセキュリティは十分理解されていないものの1つで、APIを狙った攻撃は急速に進化している。セキュリティ企業にとっては、APIのセキュリティが大きな課題となる。
――APIの使用に関連するセキュリティインシデントの広がりについてどのようなことが分かっていますか
マークス氏 調査回答者の92%が、安全ではないAPIに関連するセキュリティインシデントを過去12カ月間で少なくとも1件は経験していると答えている。これは驚くべき数字だが、さらにこのうち57%が複数のインシデントを経験している。
幸い、APIセキュリティに関する議論が活発になり、APIセキュリティに費やせる予算が増えている。回答者の95%は、今後12〜18カ月間にAPIセキュリティへの支出を増やす計画があると答えている。
今はAPIセキュリティインシデントを解決する方法を考えなければならない。
――APIセキュリティの問題が起こるのは、開発者のスキルセットに関係するのでしょうか、それとも開発者がセキュリティを考慮して作業するプロセスが不足しているのでしょうか
マークス氏 どちらも関係している。開発者がセキュリティを念頭に置かずにアプリケーションを構築しているだけの場合、使用するAPIのセキュリティが確保されていることを確認する適切な手順を踏んでいないことになるため、問題だ。
APIは、開発者が機能豊富なアプリケーションを構築するのに役に立つ。だが、そこに潜むセキュリティリスクを認識しておく必要がある。構築しているアプリケーションに何らかの接続があるのなら、認証が基本手順になる。データを取り出す場所のセキュリティが確保されていること、情報源が適切であること、接続のセキュリティが確保されていることを把握することが重要だ。そのいずれかが把握できない場合は、APIは正しく構成されていないため、攻撃者が侵入してデータを盗み出すことに脆弱だと考える必要がある。
こうした手順は極めて基本的なことだが、依然大きな課題として残っている。今回の調査でも回答者のほぼ90%がAPI認証を懸念事項に挙げていて、重大な懸念事項だとした回答者も41%に上る。
――APIのセキュリティを改善する解決策とは、優秀なコーディングチームを編成することでしょうか、それともAPIの使用を制限することでしょうか
マークス氏 APIの使用を制限するのは現実的ではない。最新アプリケーションが機能するにはAPIが欠かせない。APIは、優れたアプリケーションを作成し、企業に競争上の優位性をもたらすための強力なツールだ。ショッピングに利用する銀行口座を簡単に追跡可能にするためバンキングアプリケーションを利用するなら、APIが必要になる。だが、アクセスポイントが侵害されれば、深刻な事態を招く可能性がある。
開発者はAPIのセキュリティの影響を理解する必要がある。可視化し、インベントリーを取得し、APIのセキュリティが効果的に確保されるプロセスやツールを用意する必要がある。
だが、クラウドネイティブセキュリティには多くの複雑さが伴う。クラウドネイティブアプリケーションのように、ソフトウェアリリースの回数が増え、リリース速度が向上するなら、ソフトウェアの可観測性を高める方法や、開発作業を監視する方法が必要になる。
これらは課題ではあるものの、セキュリティチームが事後対応型ではなく開発の初期段階からセキュリティに取り組むことで、現在は改善されつつある。APIの問題、APIの監視、問題の特定に重点を置く効果的なソリューションも新たに多数登場しているため、インシデントが発生しても迅速に対応したり、プログラムを微調整したりして、API使用のリスクをセキュリティチームが効果的に管理できる。
――開発者やセキュリティチームはAPIツールにどのような機能を求めていますか
マークス氏 ESGの調査では、機微なデータが伴うAPIの特定、過剰トラフィックの防止、OWASP APIトップ10への対処、機微なデータの漏えいに関するアラートなど、APIセキュリティの主要機能を約15種類を挙げて質問を行っている。調査では、各機能について「非常に重要」「重要」「それほど重要ではない」「全く重要ではない」とランク付けするよう求めた。
回答者は、コンプライアンスやインベントリーから攻撃への対応や開発者のテストの支援に至るまで、さまざまな機能に対応する包括的なソリューションを求めている。
――APIのセキュリティへの準備状況を評価する手順を教えてください
マークス氏 一般的には、自部門で既に導入済みのセキュリティツールを確認し、APIセキュリティ機能が含まれているかどうか確認することを推奨する。現在のツールにどのような機能があるかを評価し、足りない部分を埋める最も効果的な方法を見極める。ネットワークセキュリティソリューションの中には、APIへの攻撃を検知してブロックするためのAPI セキュリティ保護機能が統合されているソリューションも存在する可能性がある。アプリケーションセキュリティソリューションの中には、テスト、監視、保護、修復の機能を目的とするAPIが含まれているソリューションが存在する可能性がある。セキュリティの機能を含む可能性のあるAPI管理ソリューションもある。また、ほとんどのクラウドネイティブアプリケーション保護プラットフォーム(CNAPP:Cloud-Native Application Protection Platform)には、セキュリティリスクへの影響とアプリケーション保護の必要性からAPIセキュリティが含まれている。
不足している部分、つまりリスクを緩和するために多くの手作業が必要になる部分を評価したら、ターゲットを絞ったAPIセキュリティソリューションが自部門のニーズやセキュリティ方針全体に対処できるかどうかを評価する。APIセキュリティ分野では、クラウドネイティブな環境に対応する新たなベンダーが幾つか登場している。
APIセキュリティに関連する問題を解決しなければならないというプレッシャーは高まっている。何が機能し、何が機能しないか、何が効果的ではなく、何が不完全なソリューションかの情報を常に得る必要がある。そして、ベンダーは顧客を支援する方法について、透明性のある情報を提供する必要がある。
Copyright © ITmedia, Inc. All Rights Reserved.