Skip to main content

アプリケーションセキュリティ評価の5つのステップ

Prioritisation header

2021年8月31日

0 分で読めます

アプリケーションセキュリティ評価とは、アプリケーションをテストして脅威を特定し、それらから守るために必要な対策を判断するプロセスです。評価を通じて、組織はアプリケーションの現在のセキュリティ態勢を評価し、ソフトウェアを将来の攻撃からさらに保護するための次のステップを判断できます。多くの組織は、セキュリティ対策が最新かつ効果的であることを確認するため、定期的にアプリケーションセキュリティ評価を実施し、その際にアプリケーションセキュリティツールを活用することもよくあります。

徹底したアプリケーションセキュリティ評価を行うことで、組織はソフトウェアやアプリケーションに対する潜在的な脅威を、問題になる前に特定できます。ソフトウェア主導の今日のビジネス環境では、セキュリティインシデントは大きなリスクです。企業の評判や収益に悪影響を及ぼす可能性があるためです。多くの業界では、サイバーセキュリティに関する法律や規制を遵守するため、アプリケーションセキュリティ評価が義務付けられている場合もあります。たとえば、PCI規格ではOWASP Top 10のガイドラインに従うことが推奨されています。

アプリケーションセキュリティ評価はどのように実施しますか?

アプリケーション評価は、ソフトウェアやアプリケーションがさらされている潜在的なリスクを特定し、過去のセキュリティインシデントや脆弱性を記録することから始まります。そのうえで、既存のセキュリティギャップを解消し、コンプライアンス要件を適切に満たすための対策を判断できます。

セキュリティ評価には何が含まれますか?

アプリケーションセキュリティ評価の内容は、組織や対象となるアプリケーションの種類、業界によって異なります。一般的には、潜在的な脅威、アプリケーションの攻撃対象領域、既存のアプリケーションセキュリティプロセスにおける弱点、そしてアプリケーション全体のセキュリティ態勢を改善するためのロードマップを特定します。

アプリケーションセキュリティのギャップ分析を実施する方法

このガイドでは、資産の可視性、AppSecのカバレッジ、優先順位付けを対象に、アプリケーションセキュリティのギャップ分析を実施する手順を解説します。

アプリケーションセキュリティ評価の5つの重要なステップ

ここでは、アプリケーションセキュリティ評価を実施するための5つの主要なステップを見ていきましょう。

  1. 潜在的な脅威アクターを特定する

  2. 機密データを特定する

  3. アプリケーションの攻撃対象領域をマッピングする

  4. AppSecプロセスの課題を評価する

  5. セキュリティロードマップを作成する

アプリケーションセキュリティ評価の5つのステップ:脅威の特定、機密データの特定、攻撃対象領域のマッピング、課題の評価、ロードマップの策定。
アプリケーションセキュリティ評価の5つのステップ

1. 潜在的な脅威アクターを特定する

アプリケーションセキュリティ評価の最初のステップは、アプリケーションに脅威をもたらす可能性が最も高い相手を特定することです。匿名のオンラインユーザー、顧客、さらには従業員も考えられます。たとえば、従業員による内部脅威への対処は、機会をうかがうハッカーへの対処とは大きく異なります。こうした脅威アクターはそれぞれ、目的や悪用の手口が大きく異なるため、防御策を決める前に把握しておく必要があります。

2. 保護すべき機密データを特定する

アプリケーションを攻撃する可能性のある相手を特定したら、次に保護すべきものを見極めることが重要です。データが機密情報に該当するか判断できない場合は、PCI、HIPAA、GDPRなどのプライバシー規制を参考にできます。これらは消費者情報を保護するために変化し続けるコンプライアンス要件であり、アプリケーションが収集する機密データを特定する際の出発点として役立ちます。事業を営む業界によっては、特定のプライバシー規制への準拠が必須となる場合もあります。

3. アプリケーションの攻撃対象領域をマッピングする

今日のクラウドネイティブアプリケーションは、独自のコード、オープンソースの依存関係、コンテナ、Infrastructure as Codeなど、多くのコンポーネントで構成されています。これらはすべて潜在的なリスクとなるため、定期的に脆弱性をスキャンする必要があります。アプリケーションのコンポーネントを理解することは、攻撃対象領域をマッピングし、脆弱性を修正するうえで不可欠です。

4. アプリケーションセキュリティプロセスの課題を評価する

アプリケーションのリスクを把握したら、現在のAppSecプロセスを評価し、そうしたリスクが生じる原因を特定するとよいでしょう。たとえば、セキュリティチームと開発チームが分断されているケースは多く、その結果、セキュアなソフトウェアと開発スピードのどちらかを選ばざるを得ないことがあります。DevSecOpsのアプローチなら、セキュリティと開発の隔たりを埋め、開発者のスピードを落とすことなく、セキュアなソフトウェアを提供できます。

5. セキュリティロードマップを作成する

アプリケーションを脅かす悪意ある攻撃者と、攻撃に利用される可能性のある経路を徹底的に分析したら、AppSecプロセスの弱点を解消するためのロードマップを作成すると効果的です。この計画には、開発の早い段階からセキュリティに取り組む「シフトレフト」を実現し、最初からセキュアなソフトウェアを構築するのに役立つ、新たなセキュリティ対策やツールを盛り込みましょう。

アプリケーションセキュリティ評価を実施する

アプリケーションセキュリティ評価は、セキュアなソフトウェアやアプリケーションを提供するうえで重要なステップです。アプリケーションの現在のセキュリティ態勢を把握できていなければ、組織が将来の攻撃に対してどこで脆弱なのかを知るのは困難です。徹底した評価を行うことで、潜在的な脅威やアプリケーションと開発プロセスの弱点を、問題になる前に特定できます。

実行可能なセキュリティ計画を立て、適切なテクノロジーを活用することで、ビジネスに欠かせないアプリケーションを確実に保護できます。そのためには、絶えず進化する脅威の状況に対応できるよう、セキュリティ対策を最新かつ効果的な状態に保ち、アプリケーションセキュリティ評価を定期的に実施する必要があります。設計段階からセキュアなソフトウェアを実現するには、事前の準備が欠かせません。

よくある質問

アプリケーションセキュリティテストには、どのツールがおすすめですか?

自動スキャンツールは、アプリケーションセキュリティ評価の際にソースコード内の潜在的な脆弱性をすばやく特定するのに役立ちます。これにより、アプリケーションセキュリティのロードマップを策定するうえで、アプリケーションのリスク領域を把握できます。セキュリティ評価は通常、定期的にしか実施されないため、ソフトウェア開発ライフサイクル(SDLC)に直接統合できるセキュリティスキャンツールを活用すれば、セキュリティ上の問題を常に検出し、修正できるようになります。ただし、手動のペネトレーションテストが重要であることに変わりはありません。

SASTテストとDASTテストとは何ですか?

SASTとDASTは、アプリケーションのセキュリティを評価するための2つの自動化された手法です。静的アプリケーションセキュリティテスト(SAST)は、ソースコードにアクセスして行う静的なテストです。脆弱性につながる可能性のある弱点を特定し、レポートを生成します。動的アプリケーションセキュリティテスト(DAST)は、システム内部の仕組みを詳しく知らなくても実施できる、アプリケーションの実行中の仕様ベースのテストです。DASTツールは、ファジングを使用して実行中のコードを分析し、リクエスト、レスポンス、インターフェース、スクリプト、インジェクション、認証、セッションに関する問題を特定します。包括的なアプリケーションセキュリティ評価を行う際には、SASTとDASTの両方が役立ちます。

開発者を第一に考えたツールで、アプリケーションを保護

IDE、リポジトリ、コンテナ、パイプライン全体で、効率的かつ実践的なアプリケーションセキュリティのアドバイスを提供します。