アプリケーションセキュリティとは?

アプリケーションセキュリティ(appsec)とは、アプリケーション(Webアプリケーション、クラウドアプリケーション、SaaSアプリケーションなど)を内部および外部の脅威から保護することを目的としたテクノロジー、ツール、およびプロセスを意味します。Webアプリケーションには機密データが含まれていることが多く、しかも複数のネットワークを介して利用できるため、Webアプリケーションのセキュリティはサイバーセキュリティ戦略の重要な部分となっています。Webアプリケーションセキュリティのソリューションには、暗号化されたルーターのようなハードウェア、セキュリティ分析のようなソフトウェア、およびアプリケーションデリバリーツール(統合されたWebアプリケーションファイアウォール機能やAPIを保護するランタイム機能を備えたアプリケーションデリバリーコントローラーなど)が含まれます。

クラウドアプリケーションセキュリティとは?

クラウドアプリケーションセキュリティとは、Slack、Microsoft 365、Shareefileなどのコラボレーティブなクラウド環境内においてデータ交換を保護するためのソリューションとプラクティスを意味します。一般的なクラウドアプリケーションセキュリティ対策としては、アプリケーションセキュリティテストや、ブランチユーザーを保護するためのセキュアなWebゲートウェイなどが挙げられます。クラウドやSaaSアプリケーション、IoTデバイス、およびクラウドでのアプリケーションホスティングの人気が高まっているため、クラウドアプリケーションセキュリティは、あらゆるアプリケーションセキュリティソリューションにおける重要な部分となっています。

もう1つの重要な要素として、クラウドアプリケーションセキュリティアーキテクチャが挙げられます。企業のテクノロジーインフラストラクチャがハイブリッドクラウド環境やマルチクラウド環境へと進化し続ける中で、クラウドアプリケーションセキュリティがいかに構成されているかを全体的に把握しておくことが、企業にとって重要となっています。そのような構成のことを、クラウドアプリケーションセキュリティアーキテクチャと呼びます。自社のクラウド接続(企業データセンターの導入、アプリケーションゲートウェイ、クラウドサービス、本人確認システムなど)の文脈においてクラウドアプリケーションセキュリティを評価することで、企業はクラウドアプリケーション内にある機密データを保護するようなクラウドアプリケーションセキュリティアーキテクチャを設計できます。

  • エンタープライズアプリケーションセキュリティが重要である理由
  • 一般的なアプリケーションセキュリティツールとは?
  • アプリケーションセキュリティのベストプラクティス

エンタープライズアプリケーションセキュリティが重要である理由

企業は何十年にもわたってアプリケーションに依拠してきましたが、今やエンドユーザーが求めるビジネスアプリケーションのほとんどは、Webアプリケーションかクラウドアプリケーションになっています。また、今や企業がクラウドストレージやクラウド環境を使用してアプリケーションを提供することも一般的となっています。この結果、攻撃のリスクが高まっています。なぜなら、Webサーバーテクノロジー、データケース、Webサイト対応テクノロジー(CGI、Java、JavaScript、PERL、PHPなど)には、すべて潜在的なセキュリティ上の脆弱性が含まれているからです。Web対応アプリケーションと通信するブラウザやその他のクライアントアプリケーションにも、悪意あるアクターにより悪用される可能性のある弱点が含まれています。これらのWebアプリケーションはいずれも複数のネットワークやクラウドに接続されているため、1つのWebアプリケーションの侵害を通じて、企業全体のセキュリティが侵害される可能性があります。

侵害のうち43%には、Webアプリケーションへの攻撃が含まれています1。また、企業のクラウドサービスへの依存度が高まるにつれ、悪意あるアクターは、クラウドリソース(クラウドアプリケーションやクラウドインフラでホスティングされているアプリケーションなど)への攻撃を増やす可能性があります。ほとんどのクラウドアプリケーションのセキュリティ侵害は金銭的な動機に基づいており、多くの場合、その目的は、機密データや個人情報を入手して身代金を要求することか、またはWebサイトやWebサーバーへの不正なアクセス権や制御権を取得することにあります。セキュリティリスクを軽減するために、企業はクラウドアプリケーション、モバイルアプリケーション、SaaSアプリケーションを含む、アプリケーションのインフラ全体をカバーするようなソフトウェアセキュリティソリューションを必要としています。

一般的なアプリケーションセキュリティツールとは?

83パーセントのアプリケーションにはセキュリティ上の欠陥があり、少なくとも5 つのうち1つのアプリケーションには重大度の高い欠陥があります2。この点を考慮して、最良のWebアプリケーションセキュリティは、複数の攻撃ベクトルからWebやクラウドアプリケーションを保護するために多層化されています。多くのアプリケーションセキュリティツールが存在していますが、それらは開発レベルでのセキュリティとITレベルでのセキュリティに分けられます。

開発レベルでのアプリケーションセキュリティ

アプリケーションの保護は、セキュアな開発手法を通じてソースコードを作成することにより、ソフトウェア開発ライフサイクルから始まります(これはDevSecOpsと関連しています)。セキュアなコーディングを行うためには、SQL インジェクション、DDoS、マルウェア、サービス拒否、破られた認証など、Web アプリケーションに対する一般的な脅威を認識する必要があります。OWASP Top 103 には、開発者がソースコードで対処すべきWebアプリケーションセキュリティの脅威が掲載されています。ソフトウェアのアップデートは、新たなアプリケーション脆弱性をもたらす可能性があるため、開発者はアプリケーションセキュリティテストを実施することで、アプリケーションのライフスパンを通じて欠陥を見つける必要があります。これは、特にオープンソースのアプリケーションの場合に当てはまります。オープンソースの場合、悪意あるアクターがより脆弱性を見つけやすいためです。

Gartnerは、IT管理者はアプリケーション開発のセキュリティエラーを特定するだけでなく、一般的な攻撃手法に対する防御を行う必要があると主張しています4。これは特に、組織が自ら構築していないWebアプリケーションに依拠している場合に当てはまります。ソフトウェアセキュリティには、既知の攻撃と未知の攻撃の両方をブロックできるような防御が必要となります。前者は履歴や特徴により特定できますが、後者は多くの場合、企業や組織のWebサイトやWebサービスに対する異常なトラフィックが理由で検知されます。

シトリックスのアプリケーションセキュリティが、一貫したセキュリティ姿勢を維持するためにいかに役立つかをご覧ください。

シトリックスのアプリケーションセキュリティは、アプリケーションとAPIのエコシステムを保護するプロセスの簡素化を通じて、IT部門に全体的な可視性を提供することで、セキュリティ侵害が発生する前に脅威を阻止します。

ITレベルでのアプリケーションセキュリティ

  1. セキュアなアプリケーションデリバリー
    マルチクラウドインフラストラクチャを採用する組織が増えるにつれ、モノリシックベースやマイクロサービスベースのアプリケーションだけでなく、APIを保護できる強力なアプリケーションセキュリティ体制が必要となっています。最良のソリューションは、すべての ADCフォームファクタで1つのコードベースを共有するようなアプリケーションデリバリーコントローラー(ADC)を含む、強力なアプリケーションデリバリーセキュリティを確保することです。これにより、特定の IP アドレスのホワイトリスト化やブラックリスト化をはじめ、TLS を使用してクライアントとAPIサーバー間での送信時にAPIを暗号化することなどを通じて、IT部門が、マルチクラウド環境で一貫したセキュリティポリシーをより簡単に適用できるようになります。
  2. アプリケーションデリバリー管理
    もう1つの一般的なアプリケーションデリバリーセキュリティソリューションとして、ADCをアプリケーションデリバリー管理(ADM)プラットフォームと組み合わせることが挙げられます。ADMソリューションは、分散環境におけるモノリシックベースおよびマイクロサービスベースのアプリケーションデリバリーに関する可視性を提供します。これにより、IT 管理者は、アプリケーションやAPIのパフォーマンスや使用状況を把握することで、疑わしいアクティビティやパフォーマンスの低下にフラグを立てることができます。
  3. アプリケーションデータセキュリティ
    アプリケーションは企業全体を通じてデータにアクセスするため、アプリケーションデータセキュリティは非常に重要です。一般的なアプリケーションデータセキュリティ対策としては、企業データセンター内の機密データの集中管理とホスティング、データ損失を減らすためのセキュアなファイル共有の採用、送信時および保存時のデータのコンテナ化などが挙げられます。これらの対策は、アプリケーションが必要なデータのみにアクセスしていること、および同アクセスがサイバー攻撃から守られていることを保証するのに役立ちます。
  4. Webアプリケーションファイアウォール
    Webアプリケーションに対する新たな脅威は常に出現しているため、既知の攻撃と未知の攻撃の両方からWebアプリケーションを守る必要があります。Webアプリケーションファイアウォールは実績あるソリューションであり、AIや機械学習通じてユーザーの対話やアプリケーションの動作を監視するような、ポジティブなセキュリティモデルを採用している場合もあります。これにより、企業や組織は未知の攻撃を軽減できるほか、迅速な修復のための知見を提供することや、PCI-DSSのような標準規格のコンプライアンスを確保することが可能となります。Webアプリケーションファイアウォールは、多くの場合、アプリケーションデリバリーコントローラーの内部に統合されていますが、スタンドアロンまたはホステッドサービスとしても利用できます。
  5. アクセスセキュリティとアプリケーションセキュリティポリシー
    クラウドアプリケーションは、基本的にあらゆる場所からリモートワーカーによってアクセスされるものです。このため、悪意あるアクターを排除するには、これらのWebアプリケーションやクラウドアプリケーションへのセキュアでコンテキストに基づいたアクセスを保証するようなアプリケーションセキュリティポリシーツールを採用する必要があります。アクセス制御はゼロトラストセキュリティと密接に関連しています。なぜなら、それは、クラウドアプリケーションへのアクセスを許可する前に、リモートユーザーに多要素認証を通じたID確認を強制するからです。、アプリケーションセキュリティポリシーツールのユーザーエクスペリエンスを簡素化するために、セキュアアクセスと使いやすさを兼ね備えたシングルサインオン(SSO)ソリューションが良く使用されます。
  6. セキュアなデジタルワークスペース
    従業員は、パーソナルデバイスを含む、あらゆる種類のモバイルデバイスから、クラウドアプリケーションや、クラウド上でホスティングされているアプリケーションにアクセスすることを望んでいます。アプリケーションを保護しつつBYOD(Bring Your Own Device)ポリシーを有効にするには、リモートワーカーがセキュアなデジタルワークスペースにサインインして、すべてのクラウドアプリケーションにアクセスできるようにすると便利です。これにより、従業員が1つのワークスペースで作業するために必要なものをすべて提供することで、データセキュリティとクラウドアプリケーションセキュリティを向上できます。また、IT部門は、追加のセキュリティプロトコル(オンプレミスデータセンターのファイアウォールなど)を同ワークスペースに適用できるようになります。
  7. ネットワークセキュリティ
    リモートワーカーやブランチワーカーがクラウドアプリケーションにアクセスする場合、強固なサイバーセキュリティを備えていないローカルインターネット接続を利用する可能性があります。ローカルインターネットブレイクアウトを通じて、このようなアタックサーフェスを保護するためには、企業や組織は、WANエッジにおける強固なセキュリティを備えた統合型のSD-WANソリューションを採用する必要があります。このソリューションには、ステートフルファイアウォールを含める必要があります。これを使うことで、IT部門は、アプリケーションやゾーンごとにトラフィックを制限または拒否するポリシーを中央で一元的に定義できます。
  8. 監視とアナリティクス
    定期的なアプリケーションセキュリティテストやその他のクラウドアプリケーションセキュリティ対策を実施している場合でも、企業や組織は、SaaS、クラウド、モバイルの各アプリケーションのすべてに関する可視性と、それらの利用状況を把握しておく必要があります。ここで、アプリケーションの監視およびアナリティクスツールの出番となります。これらのツールは、すべてのユーザーとアプリケーションに関する継続的なリスク評価を提供するほか、異常な動作にフラグを立ることで、セキュリティ侵害を引き起こす前に内外の脅威を検出します。アプリケーションの監視およびアナリティクスツールは、通常、アプリケーションデリバリー管理ソリューションに統合されており、1つの企業や組織のアプリケーションデリバリーインフラ内におけるすべての環境に関する可視性を提供します。

アプリケーションセキュリティのベストプラクティス

大規模な組織は平均で129種類のアプリケーションを利用している5ため、アプリケーションセキュリティを開始するのは非常に困難な課題のように思われるかもしれません。しかし、どんな組織でも、次に示すアプリケーションセキュリティのベストプラクティスに従うことで、自らのアプリケーションインフラストラクチャセキュリティの改善を開始できます。

  1. アプリケーションセキュリティの評価
    最初のアプリケーションセキュリティのベストプラクティスは、アプリケーションセキュリティの評価を実施することです。これにより、会社がいかなるアプリケーションを保持しているか、誰がそれらを使用しているか、そしていかなるコンプライアンスや規制上の義務に従う必要があるかが示されます。最初のポイントは、テストして保護する必要があるアプリケーションに関する正確な評価を提供します。2つ目のポイントは、組織に合ったゼロトラストおよびアクセスセキュリティプロトコルを作成するのに役立ちます。最後に、コンプライアンスに関する質問は、アプリケーションがアクセスできるすべての個人情報のデータセキュリティを確保するための最善の方法を知るために役立ちます。PCI DSSやHIPAAのようなコンプライアンス指令では、Webアプリケーションのデータをどのような方法で保護する必要があるかについて、独自のルールが定められています。
  2. アプリケーションセキュリティのテスト
    企業や組織が所有しているすべてのアプリケーションとユーザーを明確に把握できたら、次はクラウドアプリケーションとWebアプリケーションのセキュリティをテストしましょう。このアプリケーションセキュリティのベストプラクティスは、これらのアプリケーションに含まれている潜在的な脆弱性やセキュリティ上の問題を特定することで、将来のセキュリティ侵害の発生を防ぐのに役立ちます。潜在的バイアスや内部の死角を避けるためには、サードパーティ製のセキュリティテストツールや侵入テストサービスを利用すると便利です。
  3. 脆弱性への対処
    テストでアプリケーションの潜在的な脆弱性が明らかになった場合、次のアプリケーションセキュリティのベストプラクティスは、これらの弱点に対処できるようなセキュリティプログラムを採用することです。たとえば、厳格なソフトウェアのアップデートスケジュールを実装することにより、組織内のすべてのユーザーが最新のセキュリティパッチを利用していることを保証すると良いでしょう。また、アクセスセキュリティ、情報セキュリティ、モバイルセキュリティを確保するために、外部のテクノロジーベンダーやセキュリティチームを利用することもお勧めします。これにより、企業や組織は、不必要なものに出費することなく、アプリケーションのポートフォリオに合ったアプリケーションセキュリティツールを採用できるようになります。

関連資料