Snyk CodeスキャンがSnyk Visual Studio拡張機能に追加
Frank Fischer
2022年1月18日
0 分で読めますSnyk Codeは、新世代の静的アプリケーションセキュリティテスト(SAST)を提供します。機械学習を活用してナレッジベースを急速に拡充する独自のプロセスと、ルールの品質を保証するSnykのセキュリティエンジニアを組み合わせています。その結果、Snyk Codeのナレッジベースは飛躍的に拡大し、業界をリードする高い精度を実現しています。
さらに、Snyk Codeはリアルタイムスキャンに対応しているため、開発者はお気に入りのIDEから直接利用できます。開発中にセマンティック解析の結果を確認できるのは、大きな変化です。小さな変更を加えるたびに再スキャンし、コードがSCMに取り込まれる前に修正を適用できます。
Snyk Codeは、Snykの開発者向けセキュリティプラットフォームの一部です。このプラットフォームには、Snyk Open Source、Snyk Container、Snyk IaCが含まれます。独自のコードだけでなく、プロジェクトの直接および推移的なオープンソース依存関係、ベースイメージ、設定もスキャンします。修正方法を提案するだけでなく、ボタンをクリックするだけで修正を適用できます。
先日、Snyk CodeでC#および.NETコミュニティをサポートする機能を追加しました。どちらもウェブインターフェースと、JetBrainsファミリーのIDEおよびVisual Studio Code向けプラグインから利用できました。しかし、重要なIDEが1つ残っていました。Visual Studioです。
注:Visual Studio Codeをお探しの方もご安心ください。IDEプラグインのページをご覧ください。
Microsoft Visual StudioのサポートがSnykにとって重要な理由
Microsoft Visual Studioには数十年にわたる豊かな歴史があります。.NETコミュニティの主要な開発ツールである一方、CLR以外のJavaScript、Ruby、Pythonなど、複数の言語にも対応しています。.NETでは、ウェブからWindowsクライアント、モバイル、ゲームアプリケーションまで、さまざまなプロジェクトタイプをカバーします。また、ネイティブC++とVisual Studioを取り巻く強固なコミュニティもあります。最新エディションでは、複数のプロセッサタイプ(x86、x64、ARMなど)や複数のオペレーティングシステム(WindowsおよびLinuxベース)向けの開発も可能です。Microsoft製品を普段使わない人々からも、Visual Studioは常に最高のIDEの1つと評価されてきたと言えるでしょう。現代のIDEのデザインは、どれもVisual Studioから着想を得ています。さらにVisual StudioはEclipseを追い抜き、2021年には29.27%でPYPL IDEインデックスの首位を維持しました。
これだけの理由があれば、Visual Studio拡張機能を更新し、機能を拡充するには十分です。最新バージョンのSnyk Vulnerability Scanner extension for Visual Studioを発表できることをうれしく思います。

Snyk Vulnerability Scanner拡張機能
この拡張機能を使うと、Snykの2つのサービスをVisual Studioから直接利用できます。プロジェクトの依存関係をスキャンし、既知の脆弱性を通知します。最新バージョンでは、Snyk Codeによるコーディングセキュリティとコード品質のチェックも追加されました。これらのサービスを利用するには、GitHub、Gmailなどの認証情報を使って無料のSnykアカウントに登録するだけです。
プロのヒント:Visual StudioでSnyk Vulnerability Scannerのオプションダイアログを開くと、セキュリティ脆弱性に加えてコード品質の問題も表示するよう設定できます。拡張機能のウィンドウに新しいセクションが追加され、品質に関する結果が表示されます。
Visual Studio 2019と、最新のプレビュー版であるVisual Studio 2022に対応しています。また、Visual Studio拡張機能はオープンソースプロジェクトで、GitHubで公開されています。
Visual StudioにSnyk Vulnerability Scannerをインストールする
Visual Studioで、IDEウィンドウの上部中央にある検索バーにExtensionと入力し、Manage Extensionsを検索して開きます。拡張機能マネージャーの右上にある検索バーに「Snyk」と入力すると、Snyk Vulnerability Scanner拡張機能が見つかります。手順に従ってインストールしてください。
Visual Studio Marketplaceからインストールする方法もあります。拡張機能には、Visual Studio 2015、2017、2019用と、Visual Studio 2022用の2つのバージョンがあるのでご注意ください。

注:拡張機能のダウンロードとインストールを開始するには、Visual Studioの再起動が必要な場合があります。初回起動時に、拡張機能は最新バージョンのSnyk CLIをダウンロードします(バックグラウンドで使用されます)。
拡張機能を初めて使用するときは、Snykで認証する必要があります。ブラウザー内で認証プロセスが実行され、トークンが拡張機能に保存されます。その後はこのトークンが使用されるため、ライセンスキーや証明書の管理は不要です。
Visual StudioでSnyk Vulnerability Scannerを使用する
Snyk Codeは多くの言語とフレームワークに対応していますが、Visual Studioユーザーにとって特に役立つのはC#、JavaScriptとTypeScript、Python、Rubyです。
ウィンドウの左上に再生アイコンが表示されます。アプリケーションへの変更がある程度まとまった段階でセキュリティ上の問題を確認して修正するとよいでしょう。緑色のアイコンをクリックするとスキャンが開始されます。
スキャンは通常数秒で完了し(初回は数分かかる場合があります)、完了するとすぐに結果が表示されます。
日々の作業では、クラス設計やアルゴリズムの完成など、作業がある程度まとまった段階まで進めてからスキャンするのがおすすめです。そこでスキャンを実行し、状況を確認しましょう。Snyk Codeはリアルタイムに動作するため、プロジェクトの進行を妨げず、いつでもスキャンできます。
プロのヒント:Snyk Codeは高速なので、こまめにスキャンするのがおすすめです。バグをためて最後にまとめて修正するのではなく、コーディング中に中間チェックポイントを設け、問題をすぐに確認して修正しましょう。避けるべき構文がわかるため、さらなるバグの混入を防げることもあります。また、バグを1つ修正した後は必ず再スキャンしてください。ほかの問題に影響する可能性があり、別のバグと合わせて修正したことで消えることもあれば、新たな問題が生じることもあります。だからこそ、セキュリティを開発の早い段階に組み込むことが重要です。小さな変更でもほかの変更につながることがあるなら、プロジェクト全体を書き終えてからスキャンした場合に、どれだけの変更が生じるか想像してみてください。
Snykを試してみましょう
GitHubやGoogleなどのアカウントを使って無料のSnykアカウントに登録するだけで始められます。Visual Studio MarketplaceでSnyk Vulnerability Scanner拡張機能を見つけて、ぜひお試しください。使ってみた感想もお聞かせください。
Capture the Flagを始めよう
オンデマンドのバーチャル入門ワークショップを見て、Capture the Flagの課題の解き方を学びましょう。
