GitHubコードスキャンでSnykのセキュリティ情報を表示する
2020年10月7日
0 分で読めますSnykユーザーの多くはGitHubをソースコードのホスティングに利用しています。一般的には、ソースコードはGitHubで確認し、脆弱性に関する情報はSnykで確認するというように、2つの場所を使い分けることになります。Snykはこれまでも、開発者が使う場所にセキュリティ情報を届けることを目指してきました。たとえば、ローカルツール(CLIやIDEプラグインなど)や、GitHubのプルリクエスト、ステータスチェックを通じて情報を提供しています。
GitHubコードスキャンのリリースにより、コードスキャンに対応するGitHub Actionsのアップデートを通じて、セキュリティ情報(Snyk)を開発者の標準的なワークフローにさらに組み込めることを嬉しく思います。
GitHubコードスキャン
コードスキャンはGitHubのSecurityタブに新機能を追加するもので、本日よりすべてのGitHubユーザーが利用できます。コードスキャンを使うと、すべてのセキュリティツールを一か所に接続し、リポジトリに関連する脆弱性やセキュリティ上の問題をまとめて確認できます。
コードスキャンを使えば、セキュリティ上の問題が本番環境に到達する前にリポジトリ内で検出できます。対象には、アプリケーションのソースコード、アセット、設定ファイルなどが含まれます。

Snyk ContainerとSnyk Infrastructure as Code
本日より、Snyk Container(コンテナイメージのスキャン)とSnyk Infrastructure as Code(Kubernetesの設定ファイルやTerraformコードの設定ミスの検出)の両方が、既存のSnyk GitHub Actionsを使ったGitHubコードスキャンに対応します。
Snyk Actionを使ってDockerイメージの脆弱性をテストし、SARIFファイルをコードスキャンにアップロードする例を紹介します。SARIFはOASISによるオープン標準で、コードスキャンがセキュリティ上の問題をやり取りする際の形式として使用されています。
ワークフローにupload-sarifアクションを使うための3行を追加するだけで、SnykのデータをGitHubにアップロードできます。
Snykの新しいInfrastructure as Code製品もGitHubコードスキャンに対応しています。KubernetesのJSONファイルやYAMLファイル、Terraformコードの設定ミスを検出し、その問題をGitHub上に直接表示できます。以下はシンプルなワークフローの例です。
上記のワークフローを実行すると、Snykが検出したセキュリティ設定の不備がGitHubに表示されます。

ここでは、問題の詳細に加え、問題のある行のコンテキストや、その問題を持ち込んだコミットも確認できます。
現在、Snyk Infrastructure as Code Actionが対応しているのはKubernetesの設定ファイルのみですが、まもなくTerraformにも対応し、その後、ほかの設定形式にも対応する予定です。
次のステップ
Snyk GitHub Actionsと新しいGitHubコードスキャンの連携をぜひお試しいただき、ご意見をお聞かせください。Actionsの改善や、Snykのすべての機能へのGitHubコードスキャン対応の拡大について、すでに素晴らしいアイデアがいくつかあります。開発者のワークフローの中心にセキュリティを組み込む機能を、今後さらに追加していきます。ぜひご期待ください。
Capture the Flagを始めよう
オンデマンドのバーチャル入門ワークショップを見て、Capture the Flagの課題の解き方を学びましょう。


