サイバー対策:WAFと「リバースプロキシ」でDevSecOps

残念なことに、従来のアプリケーション開発では、ITセキュリティはしばしば開発プロジェクトの終わる時点で検討される傾向にあります。それはセキュリティ上の問題だけでなく、IT管理又は経営上の問題でもあります。開発プロジェクトの最後にアプリケーションを変更するには遅すぎ、非常にコストがかかるためです。

アプリケーションのサイバー・セキュリティに対する最善のアプローチは、アプリケーションの全ライフサイクルにおいてセキュリティをカバーすることです。テストや運用などを含めて、アプリケーション開発の初期段階からセキュリティを適用するというDevSecOpsの考え方が特に現代のサイバーセキュリティ対策として不可欠です。

全員がセキュリティの専門家になるべき?

Webアプリケーションのセキュリティを向上させるには、ITセキュリティを特に従来からネットワークの運用やインフラ部門などに任せている日本においてはパラダイムシフトが必要です。開発側は、自らのWebアプリケーションのセキュリティにも責任を負うべきだとよく聞こえてきます。それはもちろん正しい考え方です。しかし、個々の開発者に全ての責任を帰するだけでは十分ではありません。それは良いWebアプリケーション・セキュリティの実現が実際に難しいためです:

  • アプリケーション・セキュリティの世界は非常に広くて一部は複雑過ぎるため、正しく実装するにはITセキュリティ専門レベルのノウハウが必要です。
  • 但し、すべてのアプリケーション開発者、テスターまたはエンジニアを素早くITセキュリティ専門家にすることは不可能であり、効率的ではありません。
  • アプリケーション・セキュリティは、さまざまなデザインかつ多重なレイヤーでいくつかの方法において実装できます。
  • 異なるアプリケーション開発プロジェクトは、同じセキュリティ要件を異なる知識を元に解釈をし、異なる言語フレームワークと異なるレイヤーかつ異なる方法で実装するため、結果的に企業全体のセキュリティレベルが異なることになってしまいます。
  • アプリケーションの中には、他のアプリケーションとの依存関係のためにリリースサイクルが長いものがあり、スピーディーに変更することはできません。
  • インフラストラクチャ部門又は運用部門は、アプリケーションセキュリティの責任を負うことを望まず、そのようなセキュリティ機能を実装しないか、またはそれらを厳密に提供しません。
  • アプリケーション開発者やビジネスオーナーは、セキュリティが既にインフラストラクチャの中でカバーされていると思い込んでしまいがちです。それはよくある誤解です。

これらの問題を解決するためには賢い対策が必要です。それはDevSecOpsの考え方で、誰がどのレイヤーで何のセキュリティを実装するのかを明確にすることを意味します。DevSecOpsは、開発の全ライフサイクルにセキュリティを組み込む方法を考えたものなのです。

DevSecOpsはテクノロジーではありませんが、テクノロジーはDevSecOpsの目標をより効率的に達成するサポートができます。リバース・プロキシ型WAFの例でこれを以下に示したいと思います。

解決策の一例:WAFの助けでDevSecOpsをサポート

リバース・プロキシはWebアプリケーション・セキュリティとWebアプリケーション・デリバリーにおいて戦略的な要素です。Airlock WAFのようなリバース・プロキシ・ソリューションをセキュリティ・フレームワークとして使用することで、効率性の良い優れたセキュリティ標準が直接使用できるようになります。

大切なステップは、これらのセキュリティ標準をDevSecOpsの段階上でどんなステークホルダーがどのように使用するのかを明確にすることです:

  • 開発者は、複雑なセキュリティ機能を開発する必要はありません。Airlockのセキュリティ標準(中央認証とSSO、アクセス制御、セキュアなセッション処理、セキュアなクッキー処理、URL暗号化、フォーム保護、ブラウザ・フィンガープリンティングなど)を再使用するだけです。
  • 開発者は、再使用できないアプリケーション専用のセキュリティ部分(データレイヤーのアクセス制御、アプリケーションのビジネスフローとトランザクションの保護、アプリケーションのAPIの保護、例外処理など)に特化して開発するだけです。
  • 運用の方では、新たに発見された脆弱性を一元的に修正するためのAirlock WAF仮想パッチを使用してアプリケーション部門にサービスとして提供します。また、セキュリティ・レベルを関連する全てのアプリケーションに対して一元的に再調整します。
  • インフラストラクチャ側では、DMZのセキュリティとアプリケーション・デリバリー(SSLオフロードと認証処理、ロードバランシング、フェイルオーバーと高可用性、ネットワーク分離、URLリダイレクトとコンテンツ書き換えなど)のためのセキュア・リバース・プロキシとしてAirlock WAFの機能を使用し、アプリケーション部門にサービスとして提供します。

Airlockを使用したDevSecOpsは、WebアプリケーションとセキュアなWebアプリケーション開発のため、一貫したセキュリティ・インフラストラクチャをもたらします。 このようなフレームワーク再使用戦略は、オンプレミス又はクラウド上で実装できます。

事業体のエンタープライズ・セキュリティ・アーキテクチャへ

それだけではありません。Airlockのようなリバース・プロキシを中心したアプローチでは、一つ一つのWebアプリケーションのセキュリティを向上させるだけではなく、エンタープライズ・セキュリティ・アーキテクチャの思想を元にしたITガバナンスにも影響をもたらす力があります。それは事業体のWebアプリケーション戦略又はビジネスの観点からも非常に意味があることです。

標準化されたセキュリティ・フレームワークがあると、実装が難しいセキュリティ技術が開発者と運用者に提供され、更に再使用において事業体の全アプリケーションが同じセキュリティ・レベルを維持できるよう、サイバー・セキュリティと効率性を結びつけることが可能となります。

ディパオロ・ロベルト (Author: Roberto Di Paolo)

V1.02, 2017/02/07 © ACROSEC Inc.