Skip to main content

Eclipse IDEからオープンソースの脆弱性を直接修正

2019年7月25日

0 分で読めます

開発者がEclipse IDE(統合開発環境)上で、オープンソースの脆弱性をプロジェクト内でテストし、監視できるようになりました。

ソフトウェア開発者は通常、使い慣れたIDEを中心に作業します。好んで使うIDEは、既存のワークフローとうまく連携するものです。Snykも、ツールは既存のソフトウェア開発プロセスにシームレスに統合されてこそ、最大限の効率を発揮すると考えています。

そこで、Eclipseから直接インストールできるSnykプラグインをリリースしました。インストール後にセキュリティスキャンを実行すると、Snykがプロジェクト内の直接依存関係と間接依存関係を分析し、脆弱性やライセンスの問題を特定します。修正に必要な情報もあわせて報告するため、より迅速かつスムーズに対処できます。

Snyk CLIの機能

Eclipse IDEプラグインの実装には、既存のCLI機能を活用してワークスペース内のプロジェクトをスキャンします。言語やパッケージマネージャーを問わず、徹底したスキャン、修正のアドバイス、プロジェクトのサポートを提供します。

Snykの中核となるのは、プロジェクトの依存関係に潜む脆弱性を見つけて修正することです。CLIを使えば、ローカルの開発環境から、さまざまなエコシステムで構築された複数のプロジェクトをスキャンできます。Snykはプロジェクトの種類(言語とパッケージマネージャー)を自動的に検出し、依存関係ツリーを作成してすべての直接依存関係と間接依存関係を分析したうえで、独自の脆弱性データベースと照合します。この分析に基づき、直接依存関係または推移的依存関係に脆弱性が含まれているかどうかを示し、利用可能な最適な修正方法をご案内します。

SnykプラグインでEclipseを手軽にセットアップ

Eclipse用のSnyk Vulnerability Scannerのインストールは簡単です。Eclipse MarketplaceでSnykを検索してインストールをクリックし、手順に従えば準備完了です。

Eclipse Marketplaceのウィンドウ。利用可能なプラグインが表示され、注目のVaadin PluginとSnyk Vuln Scannerの一覧にインストールボタンが表示されている。

プラグインをインストールしたら、Snykビューを開きます。

Mac風のファイルブラウザー。フォルダーが表示され、「Snyk」フォルダーが選択されており、その中に「Snyk View」がある。

次に、Snykの設定ウィンドウから、Snykアカウントを使ってEclipseのSnykプラグインを認証します。

認証トークン、パッケージマネージャーのパス欄、認証ボタンを表示したSnykの設定パネル

必要に応じて、プロジェクトで使用するパッケージマネージャーがシステムパスに含まれていない場合は、パスにディレクトリを追加してください。

Eclipse上で脆弱性をネイティブに検出

設定が完了したら、Snykビューの再生ボタンをクリックしてワークスペース全体をスキャンし、現在開いているすべてのプロジェクトの結果を確認します。または、プロジェクトのルートフォルダーで対象プロジェクトを右クリックし、Snyk testをクリックします。

依存関係の脆弱性、パッケージ、利用可能な修正を一覧表示する、Eclipse風IDE内のSnyk Viewウィンドウ。

スキャンした各プロジェクトで見つかった脆弱性は、Snyk Viewタブに表示されます。結果はプロジェクトごとにグループ化され、脆弱性の発生箇所が個別に一覧表示されます。各脆弱性の影響を受けるプロジェクト内の直接依存関係も確認できます。

任意ファイル書き込み、コード実行、XSS、正規表現によるサービス拒否など、依存関係の問題を一覧表示したソフトウェア脆弱性レポート。

間接依存関係については、脆弱性や問題が持ち込まれた依存関係の経路全体も表示されます。

依存関係の問題を一覧表示するSnyk Viewの脆弱性レポート。任意コード実行や正規表現によるサービス拒否の検出結果が含まれています。

最後に、Fix列には、利用可能な場合に推奨されるアップグレードが表示されます。Snykは、リスクを最小限に抑えながら脆弱性を解消できるよう、直接依存関係に対する最小限のアップグレードを常に推奨します。

脆弱な依存関係と修正後の推奨パッケージバージョンを一覧表示するソフトウェアセキュリティパネル

ワークフローにセキュリティを組み込む

ユニットテストやコード品質向上のためのプラグインがEclipse上でシームレスに連携し、ワークフローを効率化するのと同様に、Snykプラグインも、開発者がより安全なソフトウェアを開発するための強力なツールです。Eclipse IDEから開発プロセス中に脆弱な依存関係を検出して排除することで、いつもの作業方法を変えることなく「セキュリティを左にシフト」できます。

はじめに

Eclipseに新しいSnykプラグインを追加しましょう。プラグインの詳細は、Eclipse用Snykプラグインの概要をご覧ください。

今後の予定

今後の予定として、数多くのインテグレーションで提供している機能と同様に、Eclipseでも脆弱性が見つかった際に推奨修正に基づいて自動修正する機能を追加する予定です。

キャプチャー・ザ・フラッグを始めよう

オンデマンドのバーチャル入門ワークショップを視聴して、キャプチャー・ザ・フラッグの課題の解き方を学びましょう。