アプリケーションかAPIか、また従来型、モダン、AIアプリケーションのいずれであるかを問わず、プログラマビリティはセキュリティ上の問題に対処するための重要な手段です。
アプリケーションとAPIの安全性を確保する方法の1つは、お客さまやパートナーに提供する前に、脆弱性の有無と正確性をテストすることです。アプリケーションとAPIの一般的なテスト手法として、ファズテストがあります。
ファズテストでは、APIやアプリケーションの応答を確認するために、数値の代わりに文字列を送る、特殊文字を使用する、長すぎる、短すぎるなど、想定外の入力を送信します。堅牢な実装では、こうした入力を無効として拒否することで適切に処理します。ただし、入力処理のテストと同様に重要なのが、入力処理を実行するコードのテストです。
つまり、アプリケーションやAPIのロジックが無効な入力を拒否するだけでは不十分です。無効な入力をチェックするロジック自体にも堅牢性が求められます。
さて、アプリケーションセキュリティの世界ではよくあることですが、誰かが想定も考慮もされていなかった入力を考案します。入力サニタイズの実装には単に質の悪いものが少なくないという事実には目をつぶり、すべての実装が堅牢で、不正な形式の99%を検出できると仮定しましょう。
そのような理想的な前提に立っても、誰も想定していなかった1%は必ず残ります。ゼロデイ脆弱性は、こうして生まれることがあります。
テクノロジースタックの欠陥が原因となる場合もあります。Webサーバー、アプリケーションサーバー、GraphQLサーバーに問題があるのかもしれません。あるいは、生成AIで利用が拡大している検索拡張生成(RAG)を支えるベクトルデータベースなど、データソースへのコネクターに問題がある可能性もあります。また、AI推論に関する脆弱性が新たに出現するケースもあります。たとえば、Probllamaです。結局のところ、より広範なアプリケーションアーキテクチャに新たな階層が加われば、新たな脆弱性も生じます。
これらは、インターネット上にパニックを引き起こす脆弱性です。その例として、Apache Killer(2011年)、HeartBleed(2014年)、Spectre and Meltdown(2018年)、そしてLog4Shell(2021年)が挙げられます。
これらは予見できない脆弱性でした。開発者、SecOps、DevSecOps、QAに、こうした脆弱性を事前に予測することは期待できませんでした。実際、それは不可能でした。
開発者やセキュリティ担当者が事前に予見できなかったとしても、ゼロデイ脆弱性が出現した場合は、何らかの対処が必要です。特に、組織が該当するテクノロジーを使用しているために、その脆弱性の影響を受ける可能性がある場合はなおさらです。これにより、リスクが脅威へと変わり、脅威を無力化する必要が生じます。
そこで登場するのが、アプリケーションサービスのプログラマビリティです。
アプリケーションサービスのプログラマビリティは、目新しいものではありません。組織はインターネットの黎明期から、さまざまなソリューションを実装するためにプログラマビリティを活用してきました。
データパスにおけるプログラマビリティの最も一般的な用途は次のとおりです。
- セキュリティ:プログラマビリティは、ゼロデイ脅威を緩和し、新たに生じるセキュリティリスクに対処するうえで不可欠です。
- アプリケーション仲介: アプリケーションのアップグレードや移行時にもシームレスなユーザー体験を実現し、モダナイゼーションを支援するとともに、新しいAPIをコスト効率よく統合します。
- サービスオーケストレーション:ユーザーに影響を与えることなく、ワークフローやサードパーティサービスをアプリケーションに統合し、市場投入までの時間を短縮します。
- 可用性:負荷分散や、カナリアデプロイ、A/Bテストなどの最新のデリバリープラクティスをサポートします。
これらが一般的であることは、社内データからも明らかです。お客さまの70%以上が、さまざまなソリューションでプログラマビリティを日常的に活用しており、その一部はセキュリティに重点を置いています。
そのため、市場全般を調査した結果、APIセキュリティにおける重要な技術的能力の中で、プログラマビリティが最上位となったことは驚くにあたりませんでした。

プログラマビリティをサポートするAPIセキュリティソリューションは、ほぼ無限の汎用性を備えています。F5はこの機能の先駆者ですが、現在ではアプリケーションサービス全般における市場の標準となっています。プログラマビリティを中核機能として提供していないアプリケーションサービスはほとんどありません。特に、アプリケーションとAPIのセキュリティ確保に重点を置くサービスでは、その傾向が顕著です。
これは、プログラマビリティがゼロデイ脅威を緩和する基盤となり、組織がシステムの大部分に影響するパッチ適用計画をより慎重に策定できるようにするためです。
プログラマビリティは、実に幅広いことを可能にします。しかし、セキュリティ、特にAPIセキュリティの領域では、単に「あれば便利」なものではなく、不可欠です。
APIに関する詳細なインサイトについては、State of Application Strategy Report: API Securityをご覧ください。
著者について

Lori MacVittieは、F5のOffice of the CTOに所属するDistinguished Engineer兼Chief Evangelistであり、アプリケーションデリバリ、自動化戦略、インフラストラクチャに関する深い専門知識を有しています。AIエージェントのガードレール策定、脆弱なマルチクラウドアーキテクチャの分析、スケーラブルなシステムの限界の検証など、複雑な事柄を明快にすることで知られています。アプリケーション開発、ITアーキテクチャ、ネットワークおよびシステム運用の分野で、30年以上にわたる業界経験を有しています。F5入社前は、受賞歴のあるテクノロジー編集者として活躍していました。 MacVittieはコンピューターサイエンスの修士号を取得しており、セキュリティ、クラウド、エンタープライズアーキテクチャにわたる分野で多数の著作を発表しています。また、テーブルトークゲームとビデオゲームをこよなく愛し、チーズについては遠慮なく強いこだわりを語ります。
Lori Mac Vittieのその他のブログ記事関連するブログ記事

SOAS 2025:足並みの乱れが凡庸さを招く
AI導入における方針の不一致は、非効率を招きます。セキュリティ、自動化、導入の各戦略を整合させ、AIの可能性を最大限に引き出す方法をご紹介します。

WebAssemblyが重要な理由
WebAssembly(Wasm)は、あらゆるプラットフォームで高性能なアプリケーションを実現する、ポータブルで高速かつセキュアなバイナリ命令セットです。
インフラストラクチャは依然として格好の攻撃経路
クラウドコンピューティングでは、APIやドラッグ&ドロップ式の設定ツールを活用し、ネットワークやインフラストラクチャを敬遠する人がそれらを直接扱わずに済むようにすることで、インフラストラクチャへの対応を不要にすることが長年追求されてきました。しかし、インフラストラクチャを無視することも、攻撃の主要な標的であるという事実を見過ごすこともできません。
堅牢なデータアーキテクチャがもたらす戦略的メリット
適切に構築されたデータアーキテクチャがもたらす効果は、業務プロセスの改善にとどまりません。戦略的な業務効率の向上、より深いビジネスインサイトの獲得、隣接するビジネス機会への展開にもつながり、これらすべてをより俊敏に実行できるようになります。
デジタルワークフローにおける不正検知には、データだけでは不十分
2019年には、業界全体でクレジットカード詐欺の試みが約25万件確認されました。これは約2分に1件の割合です。今日、不正を検知するには、デジタルワークフロー上のできるだけ多くのポイントから収集したデータを相互に関連付け、手作業によるデータ処理をはるかに上回る速度で分析する能力が求められます。