アプリケーションセキュリティポリシーとは? アプリケーションセキュリティ ポリシーは、 新しい ソフトウェアを 開発する 際に、 開発者と セキュリティチームが 業務を 進められる セキュリティと 保護の 許容範 囲を 定めます。 多くの 場合、 ポリシー機能を 備えた アプリケーションセキュリティソリューション を 活用します。 ソフトウェアセキュリティポリシーに よって 作業開始前に 一貫して 自動的に 境界が 設定されると、 効率的な アプリケーション開発プロセスに 不可欠な 情報を 得られます。
すべての 組織に 適合する アプリケーションセキュリティポリシーは ありません。 AppSecポリシーは、 組織の 規模や ビジネスモデルに 合わせる 必要が あります。 その ため、 確立された アプリケーションセキュリティの ベストプラクティス に 従いながら、 脆弱性保護の 適切な レベルを 設定し、 使用する サードパーティ製アプリケーションや オープンソースコンポーネントを 決める、 効果的な ポリシーを 策定する 必要が あります。 組織の 方針に 加え、 OWASP Top 10 などの 標準にも 十分に 準拠しなければなりません。
こうした 点を すべて 考慮しても、 保護と パフォーマンスの バランスを 効果的に 取る AppSecポリシーの 策定は 容易ではありません。 ここで 紹介する 情報を 参考に、 脆弱性を 減らしながら、 開発者が 革新的な ソフトウェアを 継続して リリースできる エンタープライズセキュリティ ポリシーを 策定しましょう。
アプリケーションセキュリティポリシーが重要な理由 ソフトウェア開発は 変化しました。 迅速な デプロイが 標準と なり、 多くの DevOpsチームが プロジェクトを 支える ために オープンソースコードを 活用しています。 こうした 新しい デプロイ環境は、 主に 企業、 特に 大企業に おける CI/CD プロセスの 導入に よって 発展してきました。
この スピードの 速い エンタープライズ環境では、 単純な 設定ミスから 脆弱性が 発生する こともあります。 Snykの クラウドネイティブアプリケーションセキュリティの 現状レポート に よると、 セキュリティインシデントの 主な 原因は、 設定ミス (45%)と 既知の 未修正脆弱性 (38%)でした。
Snykの「State of Cloud Native」レポートに掲載された、種類別のセキュリティインシデント。
ある 最近の 調査では、 分析対象と なった 85,000件の アプリケーションの うち、 83%に 少なくとも 1つの セキュリティ上の 欠陥が あり、 そのうち 20%には 深刻な 脆弱性が 見つかりました。 これら すべてが 重大な セキュリティリスクと なるわけではありませんが、 ハッカーは 巧妙な 回避策を 用いて ソフトウェアに 侵入しようと、 攻撃を 進化させ続けています。
アプリケーションセキュリティポリシーは、 脆弱性の 防止に 役立つ 境界を 定めます。
脆弱性がもたらすコスト 201 7年、 Equifaxは Java Apache Strutsライブラリの 古い バージョンを 使用していた ため、 システムへの 侵入を 許しました。 この 悪名高い ハッキングに より 1億4,300万人の 個人情報が 流出し、 集団訴 訟に 発展。 Equifaxは 3億8,050万ドル で 和解しました。
Equifaxは 脆弱性の 悪用が もたら す極端な 事例ですが、 どのような セキュリティ侵害にも ビジネスへの 悪影響が あります。 深刻な セキュリティインシデントから 立ち直れない 企業も 少なく ありません。 その ため、 特に 金融機関、 政府機関、 医療機関など、 極めて 機密性の 高い データを 扱う 企業に とって、 アプリケーションセキュリティポリシーは 不可欠です。
アプリケーションセキュリティポリシーを 策定する ことで、 企業は ソフトウェア開発ライフサイクル (SDLC) の あらゆる 段階で、 開発者が 脆弱性に 先手を 打って 対処する 方法を 定める AppSec プログラムの 構築に 着手できます。 ただし、 慎重に 検討し、 プロセスに 組み込まなければ、 アプリケーションセキュリティポリシーが 不満の 原因と なることもあります。
AppSecポリシーに「コードとしてのコンプライアンス」を取り入れる 企業は 開発期間の 短縮と ビジネスの 俊敏性向上の ために DevOpsの 実践 を 取り入れます。 AppSec プログラムも、 保護と パフォーマンスの バランスを 取る アプリケーションセキュリティポリシーを 策定し、 開発の ペースを 維持する ことで、 こうした 目標を 支援する 必要が あります。
効果の ない アプリケーションセキュリティポリシーは、 開発者に 貴重な 時間を 費やして コードを 書き直させ、 セキュリティチームには アラート、 通知、 修正チケットを 大量に 発生させます。 こうした ポリシーは、 最終的に 開発を 遅らせ、 企業を より 大きな リスクに さらします。 一方、 効果的な アプリケーションセキュリティ プログラムは、 DevOpsの ワークフローを 妨げずに 導入でき、 開発者の 力を 引き出します。 ソフトウェア開発ライフサイクル (SDLC)に コード化された ポリシーを 組み込み、 継続的な 開発を 支えるのが、 こうした 効果的な フレームワークです。
コードとしてのコンプライアンスとは? コードと しての コンプライアンス (または コードと しての ポリシー )は、 DevOpsに 組み込まれた 効果的な ツールで セキュリティプロセスを 自動化し、 手作業で 時間の かかる 手順を なくして 人的ミスの 可能性を 最小限に 抑えます。 アプリケーションセキュリティポリシーに 基づく これらの 自動化セキュリティツールは、 開発プロセスに 組み込まれます。
たとえば ビルドプロセスでは、 開発者は 自動スキャンツールを 使って 既知の 脆弱性を 特定し、 デプロイ前に 修正できます。 デプロイ後は、 自動監視ツールが 本番環境で 新たに 検出された リスクを AppSecチームに 通知します。 コードと しての コンプライアンスを 実践するには、 アプリケーションセキュリティポリシーで、 導入する ツールと 修正が 必要な 脆弱性や リスクの 種類を 定義する 必要が あります。
コードと しての コンプライアンス、 または テスト駆動型コンプライアンス の ポリシーは、 Google のような 大規模な ソフトウェア主導型企業で 採用され、 より 自然な ビルドプロセスを 支え、 安全な ビジネス環境で イノベーションを 継続できるようにしています。 これらの プロセスに より、 次の ことが 実現します。
標 準化された レポートと 透明性
失敗の 理由の 説明
統制テストの 独立性
CI/CDプロセス との 容易な 統合
CTFを 始めよう オンデマンドの バーチャル入門ワークショップで、 CTFチャレンジの 解き方を 学びましょう。
効果的なアプリケーションセキュリティポリシーを構成する7つの要素 すべての 企業に 適した ポリシーは ありませんが、 セキュリティに 必要な ツール、 管理策、 システムを AppSecポリシーで 明確に 定義する ことが 重要です。 こうする ことで、 テクノロジーと プロセスの 両面に セキュリティを 適用し、 両者を シームレスに 結び付けられます。
効果的な アプリケーションセキュリティポリシーを 策定するには、 次の 要素にも 取り組む 必要が あります。
脅威の 履歴 - テクノロジースタックで 最も 大きな 影響を もたらした 脅威や 脆弱性を 特定します。 これを 基準と して、 ポリシーに 含める 内容を 決めます。
脆弱性の 優先順位付け - ポリシーでは、 高・中・低の リスクを 判断する 基準を 定めます。 これに より、 対処すべき 脆弱性と、 検討事項と して 記録すべき 脆弱性を 判断できます。
修正と 緩和 - 脆弱性の 優先順位付けと 密接に 関連しますが、 より 具体的な 内容です。 修正が 必要な 脆弱性は 誰が 判断するのでしょうか。 開発プロセスの どの 段階で 修正すべきでしょうか。 許容で きる リスクは あるでしょうか。
プロセス - アプリケーションコードに セキュリティを 適用する 手順を、 アプリケーションセキュリティポリシーで 定義します。 たとえば、 ビジネスで SASTと DAST を 適用するかどうかを 決めます。
役割と 責任 - SDLCの どの 段階で、 誰が アプリケーションセキュリティの 確保に 責任を 持つのかを ポリシーで 定義します。
ツール固有の 要件 - 多くの 企業が セキュリティ 自動化ツールを 使用しています。 SDLCの どの 段階で どの ツールを 使用するかを ポリシーで 定義します。
監視 - アプリケーションの 脆弱性は、 コードが 本番環境に デプロイされた 後に 発見され、 悪用される ことが 少なく ありません。 効果的な ポリシーでは、 デプロイ済みアプリケーションの 監視方法を 定め、 前述の 優先順位に 基づいて 是正措置を 決定します。
効果的なポリシーが、効果的な開発を実現 明確な アプリケーションセキュリティポリシーは、 AppSecチームと 開発者の 双方が、 ソフトウェアと プロセスへの 信頼を 確保する ために 必要な ツールと 境界を 定める フレームワークと なります。 強固な アプリケーションセキュリティは、 後付けの 対策や 付け足しの ツールではありません。 組織の 開発スピードを 維持し、 顧客の 信頼を 高める、 十分に 練られた プロセスです。 アプリケーションセキュリティポリシーは、 効果的な コードを 組織と して どのように 開発するかを 定義します。