IBM Cloud Blog

Code Risk AnalyzerでNode.jsアプリのセキュリティー脆弱性をスキャンする方法

記事をシェアする:

この投稿は、2021年1月20日に、米国 IBM Cloud Blog に掲載されたブログ(英語)の抄訳です。

この記事では、Code Risk Analyzer を設定して、Git repo 内のシンプルなNode.js アプリをスキャンする方法を解説します。

IBM Cloud Continuous Delivery の一部であるCode Risk Analyzer (参考: Code Risk Analyzer 関連ブログ (英語)) は、Git ベースのコード、設定、およびデプロイメント・アーティファクトをすべて取り込み、依存関係グラフを構築し、規制コンプライアンスのコントロール・チェックの段階的なプロセスを実行します。これは、変更要求を作成したり、コードの変更をメインの開発用ブランチへ進めるなど、既存の開発ワークフローに組み込むことができます。Snyk やその他のソースが提供する包括的なセキュリティー・カバレッジと、豊富な脅威インテリジェンスの統合は、開発者がワークフローの早い段階で、オープンソースの依存関係やコンテナの脆弱性を自動的に発見し、優先順位を付けて修正するのを支援します。

 

ツールチェーンをセットアップする

Code Risk Analyzer は、Java™、Node.js、Python 言語をサポートしています。Node.js の場合、以下のファイルを使用して依存関係を計算します:

  • package-lock.json: このファイルの目的は、前回 npm install を実行したときのツリー内のすべてのパッケージの正確なバージョンを呼び出すマニフェストを提供することです。このファイルは Code Risk Analyzer がコード内のパッケージの依存関係を識別するために使用します。
  • deployment.yml: このファイルは、コードのパッケージ依存性を識別するために Code Risk Analyzer が使用するファイルです。このファイルは、アプリケーションを Kubernetes クラスターにデプロイする際のすべてのパラメータを指定します。このファイルは、コミュニティーや業界標準に基づいて、設定ミスや潜在的なセキュリティーやコンプライアンスの問題がないかスキャンされます。
  • dockerfile: dockerfileは、Dockerイメージをビルドするためのレシピで、ビルド・コマンドを実行することでそのレシピからイメージを生成します。Code Risk AnalyzerはdockerfileをスキャンしてOSとイメージの依存関係を調べ、既知の脆弱性をチェックします。

リポジトリーをスキャンするには、以下の手順に従ってください(詳細は、Code Risk Analyzerの公開文書を参照してください):

  1. 空のツールチェーンを作成するには、Build your own ツールチェーンテンプレートを使用してください。現在、Code Risk Analyzer はダラス地域でのみ利用可能であることに注意してください。
  2. DevOps Insights のツール統合をツールチェーンに追加します。
  3. スキャンしたいコードを含む code repo をツールチェーンに追加します。例えば、GitHub や GitLabのrepo を追加します。
  4. Code Risk Analyzer で認証するための API キーを作成します。
  5. Tekton パイプラインを作成して設定します。
  6. repo に新しいMerge/Pull リクエストを作成します。リクエストが送信されると、Code Risk Analyzer は自動的にTekton デリバリー・パイプラインを実行してrepoをスキャンします。
  7. スキャンの結果は、Merge/Pull リクエストに表示されます。

動画で手順を確認しましょう

動画:Scanning Node.js apps with Code Risk Analyzer

動画:Code Risk Analyzerを使ってNode.js apps をスキャンする(英語:8分41秒)

 

さらに詳しい情報は

Code Risk Analyzer は IBM Cloud Continuous Deliverの一部として組み込まれており、米国南部のダラスにあるIBM Cloud Dallas リージョンで利用できます。

  • Code Risk Analyzer に関するIBM Research blog (英語)をご覧ください。
  • Code Risk Analyzer の詳細については、公開文書をご参照ください。
  • ご不明な点やご質問等がございましたら、Slack (英語)に参加して質問することにより、 IBM Cloud の開発チームから直接支援を受けることもできます。

翻訳:IBM Cloud Blog Japan 編集部

*このブログは、2021/1/20に発行された“How to Scan a Node.js App for Security Vulnerabilities with Code Risk Analyzer”(英語)の抄訳です。

More IBM Cloud Blog stories

【NTTコミュニケーションズ様との共同実証報告】AI時代のネットワーク運用高度化に向けた取り組み

IBM Cloud Blog, オートメーション

システム障害と聞くだけで緊張してしまうのは私だけでしょうか?心理的にも体力的にも負荷が高いこの仕事をAIによって、なんとか楽にならないのか、と誰しもが思っています。そこで、IBMのAIによる運用支援ソリューションであるA ...続きを読む


IBMテクノロジーをフル活用しサービス競争力を大幅に向上させた、証券会社向けサービス「KICSクラウド」とは?

IBM Cloud Blog, IBM Partner Ecosystem

光世証券株式会社(以下、光世証券)は、証券業務を行う事業者向けに、証券基幹業務システムをクラウドで利用できる“KICS クラウド”の提供を開始することを発表しました。KICSクラウドはIBM Cloud環境で稼働している ...続きを読む


700社が効果を実感!コンテンツマネジメントシステム(CMS)を用いたWebサイト運用における課題への最適なアプローチ

IBM Cloud Blog, IBM Partner Ecosystem, デジタル変革(DX)

近年、PC、スマートフォン、タブレット、スマートウォッチなど、デバイスの多様化により、それぞれのデバイスに適した形で情報を配信することや、ユーザー毎に最適な情報を出し分けた配信というものが求められ、Webサイトの管理や更 ...続きを読む