/appscan-maven-plugin

Maven plugin for integrating with HCL AppScan on Cloud

Primary LanguageJavaApache License 2.0Apache-2.0

HCL AppScan on Cloud Maven Plugin

Apply the power of static application security testing with HCL AppScan on Cloud – a SaaS solution that helps to eliminate vulnerabilities from applications before they are deployed. HCL AppScan on Cloud integrates directly into the SDLC, providing static, dynamic, mobile and open source testing.

You can submit static and open source scans directly from the HCL AppScan on Cloud Maven plugin or use it to generate an IRX file for later submission to the service. The results are ready quickly (90% are ready in less than one hour) having been honed by Intelligent Finding Analytics, which uses HCL's Artificial Intelligence capabilities to greatly reduce false positives and other noise by an average of more than 98%. IFA also displays optimal locations for developers to fix multiple vulnerabilities in the code. Click here for more information.

Not yet a customer of HCL AppScan on Cloud? Click here for a free trial of Application Security on Cloud to use with this plugin

Prerequisites:

Goals:

  • prepare: Generates an IRX file for all jar, war, and ear projects in the build. The IRX file will be generated in the root project's "target" directory by default.
  • analyze: Generates an IRX file for all jar, war, and ear projects in the build and submits it to the HCL AppScan on Cloud service for analysis. This task requires an api key, secret, and application id. The IRX file will be generated in the root project's "target" directory by default.
  • listTargets: Lists the targets that will be included in the generated .irx file.

Usage:

To execute the "prepare" goal, run the following command:

mvn com.hcl.security:appscan-maven-plugin:prepare

To execute the "analyze" goal, run the following command:

mvn com.hcl.security:appscan-maven-plugin:analyze

This goal requires the appId, appscanKey, and appscanSecret paramaters.

Note: The above commands can be simplified by adding com.hcl.security to the list of plugin groups in your Maven settings.xml. To do so, add the following to ~/.m2/settings.xml or ${maven.home}/conf/settings.xml:

<pluginGroups>
  <pluginGroup>com.hcl.security</pluginGroup>
</pluginGroups>

After doing so, you can execute the prepare goal using the "appscan" prefix. For example:

mvn appscan:prepare

Configurable Options:

OPTION:			DEFAULT VALUE					DESCRIPTION
output		<root project>/target/<root project name>.irx	The name and/or location of the generated .irx file. If the selected path does not exist, the default path is applied.
appId		null - Required for 'analyze' goal		The id of the application in the cloud service.
appscanKey	null - Required for 'analyze' goal        	The user's API key id for authentication.
appscanSecret	null - Required for 'analyze' goal        	The user's API key secret for authentication.
namespaces		null					Override automatic namespace detection. Set to "" to disable namespace detection.
sourceCodeOnly		false					If set to true, only scan source code.
openSourceOnly		false					Only run software composition analysis (SCA). Do not run static analysis.
staticAnalysisOnly	false					Only run static analysis. Do not run software composition analysis (SCA).
jspCompiler     Default Tomcat JSP Compiler                     The JSP compiler path.
thirdParty		false					Include known third party packages in static analysis (not recommended).

License

All files found in this project are licensed under the Apache License 2.0.