close search bar

Sorry, not available in this language yet

close language selection
 

業務のスピードを維持しながらクラウドネイティブなアプリケーションとAPIのセキュリティを確保

クラウドネイティブ・アプリケーションのセキュリティを確保するには、高度なツールが必要です。ガートナー社による最新レポートで、Synopsysがクラウドネイティブ・アプリケーションのユースケースで最高スコアを獲得した理由をご覧ください。

クラウドネイティブ・アプリケーション | Synopsys

クラウドネイティブ開発モデルは近年主流になり、このトレンドの最前線にマイクロサービスやサーバーレス・コンピューティング、コンテナ、API、infrastructure-as-code(IaC)などのテクノロジーがあります。これらの新しいテクノロジーのおかげで、組織は物理的なハードウェア・インフラストラクチャに依存することなく、分散した環境でアプリケーションを速やかに構築および実行できます。この柔軟性はソフトウェア開発ライフサイクル(SDLC)全体の時間とコストの節約に効果的ですが、セキュリティ面のコストを伴います。

クラウドネイティブ・アプリケーションのセキュリティ上の懸念事項

クラウドネイティブ・アプリケーションのセキュリティを確保するには、マイクロサービスによってさまざまなコンシューマーに公開されているインターフェイスを十分に理解し、セキュリティの設定やコンテナ・イメージの実行などの対策を適切に行う必要があります。近年、クラウドネイティブ・アプリケーションを独自開発している組織は、APIの使用に伴うセキュリティ上の問題、ソースコードの脆弱性、アカウント資格情報の侵害など、さまざまなセキュリティ・インシデントに直面しています。

クラウドベースのアプリケーションのデプロイと管理に際しては、アタックサーフェスの拡大と複雑さの増大という2つの重要な懸念事項があります。クラウドネイティブ(サーバーレスまたはコンテナベース)のワークロードのスピンアップを迅速化すると、アタックサーフェスの露出および クラウドネイティブ・アプリケーションのすべての関数、API、プロトコルの潜在的な攻撃ベクトルが拡大します。最近のセキュリティ・インシデントに関するESGの調査では、クラウドネイティブ・アプリケーション・スタックが攻撃を受けやすい主な理由は、APIを使用する際のセキュリティの不備にあることが分かりました。

クラウドネイティブ・アーキテクチャでは、組織がさまざまなアクセス許可、認証、アクセス管理の問題を考慮する必要があるため、セキュリティのガバナンスと対策が複雑化します。開発にIaCが多用されるようになると、コーディング・ミスが原因でIaCテンプレートの設定ミスが発生する可能性が高くなります。重大なデータ漏洩、アプリや機密データへの不正アクセスなどのエラーは、開発サイクルの後工程に進むまで検出できません。これにより、管理がより困難で、時間がかかるようになります。

従来のアプリケーション・セキュリティ・ツールでは対応できない

従来のアプリケーション・セキュリティ・テスト(AST)ツールは、クラウドネイティブ・アプリケーション向けに設計されていないため、モダン・アプリケーションの要件に対応するにはカバレッジ、速度、精度が不十分です。従来のASTツールでは、ほとんどのAPIおよびサーバーレス関数の呼び出しをイベント駆動型でトリガーし、エンドポイントまたはURLを公開していない関数もあるため、モダン・アプリケーションの開発およびデプロイ・アーキテクチャの可視性が低くなります。クラウドおよびサーバーレス・アプリケーションに最善の静的スキャンと宣伝されている場合もありますが、実際は、コンテキストがゼロに制限されたコードをスキャンすることは効果的なASTソリューションではありません。

クラウドネイティブのDevSecOpsの実現に関するガートナー社の最新レポートによると、70%という圧倒的な割合のチームが開発で静的アプリケーション・セキュリティ・テスト(SAST)ツールを使用し、本番環境でWebアプリケーション・ファイアウォール(WAF)とアプリケーション監視ツールを使用しています。また、このレポートは、SDLCの開発およびテスト段階でAPIセキュリティ・テスト、IaCスキャン、インタラクティブ・アプリケーション・セキュリティ・テスト(IAST)などの新しいツールが使用される傾向が高まっていることを示しています。

Webファイアウォールと監視ツールを使用して脆弱なAPIを保護およびブロックするだけでは効果的なAPIセキュリティは実現できません。APIベースのアプリケーションは、独自の完全な開発ライフサイクルとして扱い、管理する必要があります。ソフトウェア・アプリケーション開発のライフサイクルと同様に、APIのライフサイクルも事前の計画と設計の工程を経ます。組織の全体的な事業リスク・事業継続プログラムにAPIポリシーが組み込まれた適切なAPI設計が必要です。

また、内部ハウスキーピングを実行し、リスク評価、分類、品質管理の目的で使用可能なすべてのAPIベースのアプリケーションのインベントリを作成する必要があります。最終的な目標は、最大のリスク要因となり、時間と専門家のリソースに制約があるAPIベースのアプリケーションに専念することです。

継続的なテストと検証は必須

次のステップは最も重要であり、今日のAPIセキュリティのミッシングリンク(つながりが欠けている部分)です。効果的なAPIセキュリティ・プラクティスのためには、API(カスタム、オープンソース、公開APIを含む)の脆弱性をリアルタイムで継続的にテストおよび検証する機能を組み込む必要があります。たとえば、各アプリケーションのすべてのAPIを検出できるAPIツールを装備し、定義されたリスク・ポリシーに準拠している場合にのみAPIへのアクセスを許可するようにファイアウォールを設定するだけでは不十分です。優れたAPI戦略では、API検出機能を拡張して、他のオープンソースやサードパーティー製のコードベースおよびAPIを使用したランタイム・コンパイル時の統合アプリケーション・テストに動的なテスト、検証、トリアージを組み込んで継続的に実行します。

これが効果的なAPIセキュリティ戦略の重要ポイントです。セキュリティ・ポリシーとAPIリスク分類の定義によって最高リスクと評価されたアプリケーションを運用リリースに移行する前に速やかに特定し、予防的にテストして修正する機能が必要です。APIリスク分類システムでは、アプリケーションの露出(内部または外部向けのアプリ)、アプリで処理する情報の種類(例:PII/PCI-DSS準拠の決済関連情報)、アプリケーションが管理するレコード長(数千~数百万バイトに達する可能性がある)、データ侵害/災害復旧/事業継続への影響によるコストなどの基準を適用できます。

ガートナー社のクラウドネイティブに関する最新の調査によると、組織はSASTとWAFに加えて、ソフトウェア・コンポジション解析(SCA)、IAST、APIテストなどのASTソリューションを取り入れる傾向にあります。IASTなどのモダン・アプリケーションのセキュリティ・テスト・ソリューションでは、追加のスキャン、トリアージ、検証を必要としないため、継続的なパイプラインに余分な時間とテスト・サイクルが生じることがなく、DevOps環境でセキュリティ・テストを実施する負担を軽減できます。

Synopsysがクラウドネイティブ・アプリケーションのセキュリティ強化を支援する方法

SynopsysのSeeker®などの高度なIASTツールは、クラウドネイティブ・アプリケーションのセキュリティ向上に役立つ独自の機能を備えています。アプリで宣言されたAPI呼び出しであるか、テストしていない呼び出し可能なAPIであるかに関係なく、すべての受信/送信API呼び出しを検出、テスト、検証できます。また、継続的なパイプラインのスキャン・サイクルや摩擦を増やすことなく、AWS LambdaやAzure Functionsなどの広く利用されているサーバーレス関数を追跡およびテストすることもできます。

チームが通常の開発とQAテストのワークロードを実行している間に、すべての処理がツールによってバックグラウンドで自律的に行われます。DevOpsチームセキュリティ・チームは、脆弱なパスや機密データ漏洩の可能性など、すべての重要で機密性の高いデータフローを表示する高度にインタラクティブなマップで情報を視覚化できます。開発チームは、スタック・トレースや詳細なコード行などの情報、および修正ガイダンスをリアルタイムに取得することができます。

Seeker IASTは、セキュリティ・テストを実行するためにAPI仕様を必要とする従来の動的スキャナーとは異なり、OpenAPIファイルやSwaggerファイルに依存しません。Seekerでは、インストルメンテーション・エージェントを使用して、すべての呼び出し可能なAPIを検出し、PostmanまたはHARファイルに基づいてOpenAPIドキュメントを生成できます。また、JSON、XMLなどの従来のペイロード、またはGraphQL、gRPC、Kafkaなどの新しい形式のペイロードを使用して、すべてのアプリケーション要求/応答を追跡および検出できます。未テストの呼び出し可能なAPIとURLを含むすべてのエンドポイント呼び出しのカタログを取得することもできます。

Synopsysでは、Seeker IASTに加えて、クラウドネイティブ・アプリケーションのセキュリティ向上を支援する包括的なエンドツーエンドのスキャン・テクノロジーをご提供しています。Code Sight™の軽量なSASTを使用することにより、IDE内のコードの脆弱性を即座に検出して修正できます。Coverity®静的解析およびBlack Duck®ソフトウェア・コンポジション解析は、セキュアIaC、コンテナ化されたアプリケーション、イメージのセキュリティ向上を支援します。Synopsysでは、アクセスと認証の問題、クロスサイト・スクリプティング、さまざまな種類のインジェクションなどの重大な脆弱性を迅速かつ簡単に見つけて修正するために役立つアプリケーション・セキュリティ・テスト・ツールとサービスの包括的なポートフォリオを取り揃えています。

SynopsysのASTツールのポートフォリオ、およびSynopsysがクラウドネイティブ・アプリケーションのユースケースで最高スコアを獲得した理由の詳細は、ガートナー社の2022年の「Critical Capabilities for Application Security Testing(アプリケーション・セキュリティ・テストのためのクリティカル・ケイパビリティ)」レポートをダウンロードしてご覧ください。

 
Synopsys Editorial Team

投稿者

Synopsys Editorial Team


More from セキュアなソフトウェアの構築