Jenkins : Fortify 360 Plugin

Attention! This plugin is NOT MAINTAINED and NOT SUPPORTED. Fortify implemented the OFFICIAL plugin and it is now available directly from the Jenkins marketplace. Please, visit Fortify Plugin instead.


Fortify 360 FPR post-processing and uploading to Fortify 360 Server

Plugin Information

No information for the plugin 'fortify360' is available. It may have been removed from distribution.

Note:

  1. This plugin is not maintained by Fortify
  2. Plugin version 2.0+ only supports Fortify 360 Server v2.5 or later. If you are using Fortify 360 Server 2.1 or older, please stay with plugin version 1.4

Features

  • Upload the FPR to Fortify 360 Server
  • Run Javascript to perform job assignment (assign a vulnerability to a particular user)
  • Plot Normalized Vulnerabilities Score (NVS) against each build (on Windows/Linux/Mac only)
  • Consider a build as UNSTABLE if major vulnerabilities were found (on Windows/Linux/Mac only)

Installation & Setup

The easiest way to setup is to include Fortify into your PATH environment.If you don't want to add Fortify into your PATH, then setup as follows:

For master node:

You don't need to install Fortify on the master node, you just need to copy the following 4 jars from a Fortify installation and setup the path in global config

  • wsclient.jar
  • wsobjects.jar
  • common.jar
  • common13.jar

For slave node:

Since we need to run "reportGenerator", you need to install Fortify on the slave node. If we can't find "reportGenerator" we will skip plotting the NVS chart, other features are not affected.

We will try to locate "reportGenerator" in the following order:

  1. FORTIFY_HOME environment variable (if exists)
  2. PATH environment variable
  3. the Fortify path of the master node

Global Config

Project Config

Charts

How it works

- The plugin uses "reportGenerator", which is installed with Fortify 360, to generate XML report to retrieve FPR summary data.

- Starting from v2.0, it will use WS call to upload FPR to Fortify 360 Server directly. Before v2.0, it uses "fortifyclient" to upload FPR to Fortify 360 Server.

Assumption

We assume the FPRs are stored inside the workspace (which can be a remote slave machine), not the Build RootDir (which is in the master machine).

Contact

samngms [at] gmail [dot] com

Changelog

Version 3.90 (Jun 28, 2013)

  • Supports Fortify SSC version 3.90

Version 3.81 (April 8, 2013)

  • Supports Fortify SSC version 3.70 and 3.80

Version 3.6 (Nov 28, 2012)

  • Supports Fortify SSC version 3.60

Version 2.4 (May 26, 2012)

  • Supports Fortify SSC version 3.40 and 3.50 

Version 2.3 (Dec 24, 2011)

  • Supports Fortify 360 version up to 3.30
  • Sort ProjectList pull down list in config page (thanks to Gonzalez)

Version 2.2 (June 13, 2011)

  • Supports Fortify360 version 3.0.0 and 3.1.0

Version 2.1 (Oct 11, 2010)

  • Bug fixed: the project selection pulldown menu doesn't work if the URL contains context path

Version 2.0 (Sep 3, 2010)

  • New Feature: Job Assignment Script (perform vulnerability assignment by Javascript)
  • Most fields are validated
  • Will populate Project IDs to a pull-down menu

Version 1.4 (May 24, 2010)

  • Support Master/Slave
  • Bug fixed: help pages URLs are now correct in Hudson with URL context prefix

Version 1.3 (April 6, 2010)

  • The NVS equation for SCA 5.8 was wrong. Fixed in v1.3

Version 1.2 (April 5, 2010)

  • Support SCA 5.8 FPO when calculating NVS. The plugin will assume Critical/High/Medium/Low if your "sourceanalyzer -version" is 5.8.x or higher and assume Hot/Warning/Info if it is 5.7.x or earlier
  • Since ReportGenerator is only available on Windows/Linux/Mac, if you are not using one of those platforms, the plugin can't calculate NVS but at least now it will be able to upload FPR to F360 Server

Attachments:

global_config.png (image/png)
project_config.png (image/png)
chart.png (image/png)
global_config.png (image/png)
project_config.png (image/png)