Overview

WhiteSource Advise for Visual Studio is an extension for Visual Studio that is designed to empower developers with important, valuable information on security vulnerabilities concerning open-source components employed in their development projects.

WhiteSource Advise for Visual Studio does the following:

Support for Languages and Package Managers 

WhiteSource Advise supports C#-based projects of the following types:

Prerequisites

Ensure the following:

Installing WhiteSource Advise 

To install WhiteSource Advise, do as follows:

  1. Start Visual Studio.

  2. From the menu bar, select Extensions → Manage Extensions. The Manage Extensions screen is displayed.

  3. In the Manage Extensions screen, open the Online section from the sidebar and click Visual Studio Marketplace.

  4. In the Search area on the right, enter whitesource and press Enter.

  5. Select the WhiteSource Advise extension, and click Download.  

  6. Click Close and restart Visual Studio so that the extension can be installed.

Activating WhiteSource Advise

To activate WhiteSource Advise, do as follows:

  1. Start Visual Studio, specifying the preferred project.

  2. From the menu bar, click Extensions → WhiteSource → Activate WhiteSource Advise. The Activate WhiteSource Advise screen is displayed.

  3. In Email, enter your organizational email (the email domain must be licensed to use Advise).

  4. In License Key, enter your license key (See here for more information on how to obtain a license key). 

  5. Click Activate.

NOTE: If you check Remember license key, the activation credentials will be stored for later use. Once stored, the WhiteSource Advise activation credentials will be used for all projects.

Configuring WhiteSource Advise

Changes made to the WhiteSource settings will only apply after running the next scan.

To configure WhiteSource Advise, do as follows:

  1. From the menu bar, click Extensions → WhiteSource → Options. The Options screen is displayed.

  2. Review the options and modify if necessary. See here for a list of all options.

  3. Click OK.

Options Table

Option

Description

Default Setting

Automatically scan after build or rebuild action

When enabled, WhiteSource will trigger a scan after a Build or Rebuild action is performed on any of your solutions/projects.

Selected (checked)

Only show issues for direct dependencies

When enabled, WhiteSource Advise will only return vulnerabilities for direct dependencies defined in your dependency file.

Unselected (not checked)

Minimum vulnerability severity level

Alert only on detected vulnerabilities satisfying a Low/Medium/High minimum severity level.

  • Low - Vulnerability alerts for all severities (Low, Medium, High) are displayed.

  • Medium- Vulnerability alerts only for Medium or High severities are displayed.

  • High - Vulnerability alerts only for High severities are displayed.

Low

Include dev dependencies

Whether to alert on vulnerabilities detected in dev dependencies.

Unselected (not checked)

Scanning for Security Vulnerabilities

To scan for security vulnerabilities, do one of the following:

Scanning a Solution

To manually scan a solution, do any of the following:

Scanning Projects

To manually scan one or more projects, do as follows:

  1. Select one or multiple projects from the Solution Explorer pane.

  2. Do one of the following options:

Developer Focus Mode

The Developer Focus Mode allows developers to see only vulnerability alerts that are new in their feature branches compared to a predefined base branch. This promotes the security shift left approach and empowers developers to fix newly-introduced vulnerabilities immediately as part of their feature development efforts and prior to merging vulnerable code into production branches.

To enable Focus Mode, do as follows:

  1. In the ExtensionsWhiteSourceFocus Mode, enable the Diff operation to be performed on a base branch checkbox.

  2. Choose the base branch to which all other branch scans will be compared.

  3. Make sure that your base branch is checked out, and trigger a WhiteSource Advise scan either manually or by building your project.

If there was no scan on the predefined base branch after its initial configuration, all branches will show all the scan results, not just the newly created security alerts. 

Every time the base branch configuration changes, a WhiteSource Advise scan must be triggered on that branch prior to seeing new security results.   

Vulnerable Commit Alert

An alert can be enabled to notify about newly added vulnerabilities when committing the code inside the Visual Studio. This alert will appear only if the committed feature branches have new vulnerabilities compared to a preconfigured base branch.

To enable a Vulnerable Commit Alert, do as follows:

In case the commit has new vulnerabilities, a txt file will open with a notification. If you close this file, the new changes won’t be committed and you will be able to review new vulnerabilities in the feature branch. To commit anyway, type y and close the file.

note

Advanced information about the Vulnerable Commit Alert

For this feature, the Advise extension is using git hooks to block a commit when new vulnerabilities are presented in the feature branch (this is a script that will run before each commit).

The Advise extension will check if you have an active hook named pre-commit (all hooks are stored in the project directory in .git/hooks; if they have .sample extension it means that they are not used). If such a file isn't already used, Advise will update it so it can block vulnerable commits as described above.

If such a file already exists and doesn’t have a .sample extension (meaning, this script runs before each commit), Advise will not update this file or create a new one. In order for Vulnerable Commit Alert to work, you have to manually update the pre-commit file so it has the required script. For the script, please contact WhiteSource Support.

Advanced information about the Vulnerable Commit Alert

For this feature, the Advise extension is using git hooks to block a commit when new vulnerabilities are presented in the feature branch (this is a script that will run before each commit).

The Advise extension will check if you have an active hook named pre-commit (all hooks are stored in the project directory in .git/hooks; if they have .sample extension it means that they are not used). If such a file isn't already used, Advise will update it so it can block vulnerable commits as described above.

If such a file already exists and doesn’t have a .sample extension (meaning, this script runs before each commit), Advise will not update this file or create a new one. In order for Vulnerable Commit Alert to work, you have to manually update the pre-commit file so it has the required script. For the script, please contact WhiteSource Support.

Reviewing Scan Results

The WhiteSource window comprises three sections:

Statistics regarding the most recent scan:

A table regarding vulnerability details:

The WhiteSource window expands on the vulnerability details detected by WhiteSource. The window features the following columns:

Additionally, you may do the following:

Statistics regarding the vulnerability distribution:

Viewing General Plugin Information 

To view version information about WhiteSource Advise, do as follows:

The About screen displays information about the extension version, along with links for Terms and Conditions and Privacy policy.

Upgrading WhiteSource Advise

To upgrade the WhiteSource Advise extension, do as follows:

  1. From the menu bar, select Extensions → Manage Extensions. The Manage Extensions screen is displayed.

  2. In the Manage Extensions screen, open the Updates section from the sidebar and click Visual Studio Marketplace.

  3. Select the WhiteSource Advise extension, and click Update.  
    NOTE: If the WhiteSource Advise extension is not displayed, a new version is not available.

  4. Click Close and restart Visual Studio so that the extension can be updated.

Uninstalling WhiteSource Advise 

To uninstall the extension, do as follows: 

  1. From the menu bar, select Extensions → Manage Extensions. The Manage Extensions screen is displayed.

  2. In the Manage Extensions screen, open the Installed section from the sidebar and click Visual Studio Marketplace.

  3. In the Search area on the right, enter whitesource and press Enter.

  4. Select the WhiteSource Advise extension, and click Uninstall.

  5. In the popup, click Yes.

  6. Click Close and restart Visual Studio so that the extension can be uninstalled.