APIセキュリティの責任は誰が負うのか?
──APIセキュリティの重要性は日々増していますが、近年の状況や重要視されつつある背景について教えてください
みなさんがご承知の通り、APIはかなり前から存在しています。ただしここ数年、DXが進み、コロナ禍で在宅勤務やモバイル端末も普及してきました。APIの多様化や量の増加にともない、新たな課題も生まれてきています。
APIには組織内のサービスをつなげるものもあれば、エンドユーザーとつなぐもの、ビジネス同士をつなげるものもあります。たとえばレストランやホテルチェーンはBtoB向けサードパーティーのAPIを通じて、予約サイトや他のWebサイトと接続します。企業は「どこにどういうAPIがあり、どのように機能しているのか、どのように保護すればいいのか」を考えていく必要があります。
そうした中で重要なのは「誰がそのAPIの責任を負うのか」です。かつては開発グループがAPIのビルドからデプロイまで担当することが多かったのですが、今ではAPIのセキュリティ部分はセキュリティチームが担当する場合もあります。
企業が「このAPIの責任を誰が負うのか」を認識するとき、3つの大きな課題があります。
1つめは「ディスカバリー」です。APIを特定し、どこにあり、何をしているのかを把握することです。
2つめは「組織内でよく確認すること」です。既存システム内から新しく開発中のAPIまで、設定に間違いがないか、セキュリティの懸念がないかを丹念に調べる必要があります。業界としても課題を認識していて、2019年にOWASP(The Open Worldwide Application Security Project) Foundationが「OWASP API Security Top 10」を発表しました。これは最も攻撃に利用されているAPIのリスクをランキングで示したリストで、2023年に最新版が出ています。ここからAPIに対する攻撃にはどのようなものがあるのか、自社と関係があるAPIは保護されているのかを確認できます。
3つめは「APIやアプリケーションの挙動をきちんと把握すること」です。振る舞いや挙動に基づいた攻撃もあるからです。すべてのアプリケーションにはそれぞれの会社やサービスごとに独自のビジネスロジックがあり、何にアクセスできるのか、どういうことができるのかが定められています。攻撃から保護するには、脆弱性やエクスプロイトコードだけではなくアプリケーションのコードや挙動をすべて把握し、何らかの異常な振る舞いをしていないかどうかも特定する必要があります。攻撃者は、こうしたビジネスロジックを悪用し、巧妙に攻撃に使うこともあるためです。
APIの隙を突いてロイヤリティポイントが狙われた例も
──実際の被害事例にはどのようなものがありますか
最近ではAPIを通じてロイヤリティポイント(たとえばドコモポイントや楽天ポイントのようなもの)が狙われたケースがあります。どの企業も決済や現金が直接関係するところはかなり強力に保護していますが、それ以外の部分だと十分に保護されているとは限りません。
ポイントをそんなに貯めていない人もいますが、その例では大量のポイントが攻撃されましたので、金銭に換算するとかなりの額になりえます。攻撃は1つのソースから大量のウォレットにアクセスするものでした。被害を受けた企業に対して私たちがプロダクトを導入することで、24時間以内に10万ドル以上ものポイント窃取を食い止めましたが、放置していれば影響は甚大でした。