Cover Image

HCL AppScan Enterprise を使用した Microsoft Azure DevOps における DevSecOps の実現

2022/3/2 - 読み終える時間: 5 分

Achieve DevSecOps in Microsoft Azure DevOps Using HCL AppScan Enterprise の翻訳版です。


HCL AppScan Enterprise を使用した Microsoft Azure DevOps における DevSecOps の実現

2022年2月28日

著者: Parimal Sureshagarkhed / Lead Software Engineering

すべてのWebアプリケーションプロジェクトは、クライアントサーバーアーキテクチャを採用しており、コラボレーションを容易にするために、コードはオンラインリポジトリにプッシュされています。この方法は、アプリとサーバーの継続的インテグレーションとデリバリー(CI/CD)を可能にするためにも重宝されています。Azure DevOpsは、アプリケーションの構築からデプロイ、CI/CDパイプラインの管理までの完全なパッケージを提供する、そのようなプラットフォームの1つです。新しくデプロイされたアプリケーションの安全性はどうなのか、セキュリティテストをCI/CDパイプラインに統合する方法はないのか、考えたことはありますか?その答えは「Yes」です。HCL AppScanエクステンションを使用して、これを実現する方法を探ってみましょう。


インストールと設定

この拡張機能は、Azure DevOps marketplace から自由にダウンロードできます。

拡張機能をインストールしたら、AppScan Enterprise(ASE)のクレデンシャルを KeyID で設定し、Azure DevOpsのService Connectionを使用して設定する必要があります。

画像の説明

画像の説明

ASEサーバーのURL(URLの形式は、https://<ホスト名>:<ポート>/aseのようなものです)を入力し、キーとシークレットを提供します。ASEのkeyIdとSecretを生成するには、このリンクの内容に従ってください。


パイプラインの設定

新しいパイプラインを作成し、以下のようにHCL AppScan Enterpriseという種類のタスクを追加します。

画像の説明

パイプラインに追加されたタスクの関連する詳細を入力します。ASE REST API を使用して、フォルダー ID、テンプレートID、テストポリシーID、アプリケーションIDを取得できます。開始URL」フィールドは、セキュリティスキャンされるアプリケーションのURLです。以下にそのサンプルを示します。

画像の説明


YAML スクリプトの使用

スキャンの設定には、以下のようなyamlスクリプトを使用できます。

以下に例を示します。

ステップ

-task:HCLTechnologies.ApplicationSecurity-VSTS.custom-ase-task.HCLAppScan Enterprise@2

displayName: ‘Run HCL AppScan Enterprise Security Test’

inputs:

ServiceEndPointAse: ‘ASE_227’

jobName: ‘MyFirst_Azure_Scan’

folderId: 4

templateId: 7

testPolicyId: 8

startingURL: ‘https://demo.testfire.net

loginMethod: None

optimization: Fastest

suspend: false

yamlスクリプトがデプロイメントに使用されている場合、上記のステップを追加できます。そうでない場合は、前の図にあるようなタスクを追加できます。

これで、HCL AppScanエクステンションは、あなたのプロジェクトのCI/CDパイプラインに組み込む準備ができました。


主な機能
  • 新しくデプロイされたWebサイトや、ローカルでホストされているサイト、公開サイトをスキャンし、セキュリティタスクを追加して、セキュリティスキャンを行えます。
  • タスクは、アクティビティレコーダーを使用して、Webサイトの特定のフロー(新しくデプロイされたもの、ローカルでホストされているもの、公開サイト)をスキャンできます。この小さなユーティリティーを使用すると、Webサイトのトラフィックとアクションを記録し、それらの記録を選択したAppScan Dynamic分析ツール(HCL AppScan EnterpriseまたはHCL AppScan StandardまたはHCL AppScan On Cloud)にアップロードできます。記録したファイルは、「Azure Repos Git」「GitHub」「GitHub Enterprise Server」「Bitbucket Cloud」に格納でき、記録ファイルのパスをパイプライン構成で指定して同様に使用できるようにすることが可能です。
  • HCL AppScan Enterpriseタイプのタスクを複数追加することで、1つのパイプラインで多くのサイトをスキャンできます。セキュリティテストレポートとともに、各サイトの問題点のセキュリティサマリーが表示されます。このレポートには、スキャンの問題点と、報告された問題点に対する対処法が記載されています。
  • ビルドをトリガーする前に、設定とメールアラートの有効化および構成をサポートする。
  • セキュリティ結果に基づいてビルドが失敗するように設定することができる。例えば、セキュリティの高い脆弱性が5つ以上ある場合、ビルドを失敗させることができる。

以下のように設定できます。

画像の説明

上記の条件を満たした場合、Azure のビルドは失敗し、Azure のコンソールに適切なメッセージが表示されます。コンソールメッセージのサンプルは以下の通りです。

画像の説明

  • 速度と課題のカバレッジのバランスを選択することで、スキャン時間を短縮できます。最適化されたスキャンでは、継続的な統計分析に基づいて、深刻度が低い、または可能性が低い脆弱性については、テストポリシーで定義されたテストが省略されます。テストの最適化について詳しくは、こちらをご覧ください。

  • スキャンレポートを JSON および PDF 形式でダウンロードするオプションがあります。PDF レポートは、スキャン実行後のパイプライン ログからパイプライン タスク構成中にアプリケーション ID (オプション フィールド) を選択した場合にのみ生成できます。

  • ビルドサマリー情報には、スキャンが正常に完了すると、深刻度に基づいた問題数が表示され ます。

画像の説明


他の不具合追跡システムとの統合

パイプラインタスクの構成中にアプリケーションID(オプションフィールド)を選択すると、AppScan Enterprise Interfaceで指定したアプリケーションの下にセキュリティ問題を表示できます。AppScan Issue Management Gatewaysサービスにより、課題をAppScan EnterpriseからJira、Azure、Rational Team Concertなどの課題管理アプリケーションに移行できます。

このブログについて

HCL Japan の Software 部門の複数担当者で HCL Software 全般について記しています。

Tags

Academy Accelerate Accelerator Actian Ambassador AoC AppDev Pack AppScan ASoC BigFix BigFix Workspace CAA Clara Client Applicatin Access Cloud Native Commerce Common Local License Server Compass Connections Connnections CVE-2021-44228 DevOpes Velocity DevOps DevOps Code ClearCase DevOps Code RealTime DevOps Deploy DevOps.Launch.AppScan DevOps Model RealTim DevOps Model RealTime DevOps Plan DevOps Test DevOps Velocity Digital Experience Discover Domino Domino Leap Domino Volt Domino管理者アップデート認定試験対策 DQL DRYiCE DX Enterprise Integrator event General HCAA HCL Ambassador HCL Ambassadors HCL Domino REST API HCL OneTest Embedded HCL Z and I Emulator HCL Z and I Emulator for Transformation HCLSoftware U Hero history HTMO iControl iNotes IZSAM KEEP Launch Launch.DevOps Leap Link MarvelClient nds2019 ndv12beta Noets/Domino Nomad Nomad Mobile Nomad Web notes Notes/Domino notes-domino-9-10-limited-supportability-as-of-202204 Notes/Domino V12 Notes/Domion notescons Now OneDB OneTest OnTime REST RTist SafeLinx Sametime SoFy Total Experience Traveler Traveler for Microsoft Outlook Unica Unica Discover Unica Interact UrbanCode Deploy UrbanCode Velocity Velocity Verse VersionVault Volt Volt MX Volt MX Go Volt MX サンプルアプリ Wordload Automation Workload Automation youtube Z Z Abend Investigator Z and I Emulator Z and I Emulator for Transformation Z and I Emulator for Web Z and I Emulator for Web Client Z Asset Optimizer Z Data Tools Z Software Asset Manager ZAI ZAO ZIE ZIE for Transformation ZIE for Web ZIE for Windows ZIET ZIETrans ZIEWeb イベント ガイド クラウド サポート サポート技術情報 サポート終了 セキュリティ セキュリティー セキュリティー脆弱性 テクてく Lotus 技術者夜会 ニュース ノーツコンソーシアム パートナー ライセンス 九州地区 Notes パートナー会 出荷日 研修