Skip to main content

Data Transformation for the Checkmarx One Integration

Once the data that is to be imported is identified, it is retrieved from the Checkmarx One application, processed through a set of data sources, and transformed in the instance.

Checkmarx One Application Vulnerable Item Integration

Note

The integration may not succeed if customizations are made in any fields on your ServiceNow platform.

The data from the API is first loaded into the Checkmarx One AppVul Item Import table, and the Checkmarx One AppVul Item Transform is used to transform the imported information. 

To access this transform map:

  1. Navigate to System Import Sets

  2. Click Transform Maps

  3. Search for Checkmarx One AppVul Item Transform

    Note

    The CheckmarxOne Application List Integration and CheckmarxOne Scan Summary Integration transform data similarly.

    The following tables list the transform map fields by integration:

Table 1. CheckmarxOne App List transforms map fields:

Source Field(from CxOne)

Target Field(from SNOW)

Description

app_id

Source Application ID

Project Id

app_name

Application name

Project name

project tags

Source APM AppId

Project tags

groups

Source-assigned teams

Assigned group name of projects

createdAt

Description

Project creation date in CxOne

application Id & primary branch

Source additional info

Application ID and Primary Branch information

Table 2. CheckmarxOne Scan Summary transforms map fields:

Source Field(from CxOne)

Target Field(from SNOW)

Description

scan_id

Source scan ID

Scan type + Scan Id

app_name

Discovered Applications

Project name

loc

Static Scan Size

Lines of Code (only applicable for SAST scan)

last_scan_date

Last scan date

Last scan date in CxOne

scanId + last_scan_date

Scan summary name

Scan type + scan ID + last scan date

total_no_flaws

Detected Flaw Count

Total no of vulnerabilities in the scan

branch

Tags

Branch name

Scan Origin, Scan Source, and Scan Type

Scan submitted by

Scan Origin, Scan Source, and Scan Type

Table 3. CheckmarxOne AppVul Item transforms map fields:

Source Field(from CxOne)

Target Field(from SNOW)

Description

app_name

Discovered Applications

Project name

scanId + last_scan_date

Scan Summary

Scan type + scan ID + last scan date

updatedAt

Last found

Last Scan date from CxOne

scan_type

Scan type

SAST/IaC/OSSF Scorecard/Secret Detection:: 'Static’

SCA: ‘SCA’

category_name

Category name

SAST/IaC: query name

SCA/ Container Security: CWE ID

Secret Detection/OSSF Scorecard: ruleName

first_found_date

First found

First found date in CxOne tenant

recommendedVersion

Recommendation

recommended version (only applicable for SCA scan)

packageIdentifier

Package

Package ID (only applicable for SCA scan)

nodeId + path

Source notes

Node ID and filename (only applicable for SAST scan)

category_id + " -" + cweId

Vulnerability

SAST: ‘Checkmarx One’ + ‘CWE-‘ + CWE ID

SCA: ‘Checkmarx One’ + ‘-‘ + CVE ID

IaC: ‘Checkmarx One’ + ‘-‘ + Query Id

Container Security: 'Checkmarx One' + '-' + CWE ID

Secret Detection: 'Checkmarx One' + '-' + CWE IDOSSF Scorecard: 'Checkmarx One' + '-' + CWE ID

sourcefile

Source link

CxOne vulnerability URL

location

Location

File name (only applicable for SAST scan)

description

Vulnerability summary

Source vulnerability summary

description

Description

Vulnerability description

line

Line number

Line on which the flaw was found (only applicable for SAST scan)

state

Source finding status

Vulnerability state from Checkmarx One

Application Id, Branch Name

Source additional info

Application ID and Branch name

source_severity

Source severity

Severity information of vulnerability

Branch

Project Branch

Branch name of the project

similarityId

Source Request

Similarity Id of findings(only applicable for SAST scan)

path/reference/node

References

Path details for the SAST scan, References for the SCA scan, and rule description for Secret Detection and OFFS Scorecard..

Result Status

Source Remediation Status

Result status of findings.

Exploitable Path

Source Notes

Exploitable path, if present in the SCA scan, will be mapped to the Source Notes column of the AVIT table

http_method + url

Affected URLs

HTTP method and URL information for API Security vulnerabilities, applicable to SAST vulnerabilities containing API Security information

  • Latest Scan Across All Branches selected for Scan Synchronization in Configuration (similarityId+resultHash)

  • Latest Scan Across Of Primary Branch selected for Scan Synchronization in Configuration (similarityId+resultHash)

  • Latest Scan Across From Each Branch selected for Scan Synchronization in Configuration (similarityId+resultHash+Branch name)

Source AVIT ID

AVIT ID for SAST

  • Latest Scan Across All Branches selected for Scan Synchronization in Configuration (similarityId+ package_unique_id)     

  • Latest Scan Across Of Primary Branch selected for Scan Synchronization in Configuration (similarityId+ package_unique_id + Primary Branch name)

  • Latest Scan Across From Each Branch selected for Scan Synchronization in Configuration (similarityId+ package_unique_id +Branch name)

Source AVIT ID

AVIT ID for SCA

  • Latest Scan Across All Branches selected for Scan Synchronization in Configuration (similarityId)

  • Latest Scan Across Of Primary Branch selected for Scan Synchronization in Configuration (similarityId + Primary Branch name)

  • Latest Scan Across From Each Branch selected for Scan Synchronization in Configuration (similarityId +Branch name)

Source AVIT ID

AVIT ID for IaC

  • Latest Scan Across All Branches selected for Scan Synchronization in Configuration (similarityId)

  • Latest Scan Across Of Primary Branch selected for Scan Synchronization in Configuration (similarityId + Primary Branch name)

  • Latest Scan Across From Each Branch selected for Scan Synchronization in Configuration (similarityId +Branch name)

Source AVIT ID

AVIT ID for Secret Detection

  • Latest Scan Across All Branches selected for Scan Synchronization in Configuration (similarityId)

  • Latest Scan Across Of Primary Branch selected for Scan Synchronization in Configuration (similarityId + Primary Branch name)

  • Latest Scan Across From Each Branch selected for Scan Synchronization in Configuration (similarityId +Branch name)

Source AVIT ID

AVIT ID for Scorecard

Note

The OFFS Scorecard and Secret Detection will always appear as New and will not show a recurring status.

The following transform scripts are run during the transformation process.

Checkmarx One Transform Map Script Timing and Purpose

When the script is run

Purpose

onComplete (when an import set has completed transformation)

Script that is used to process the data source and update the count of AVITs created, updated or unchanged, and the ones imported as part of this integration from Checkmarx One. This script is for internal use and should not be modified or deleted.

Viewing Checkmarx One Vulnerability Integration Import

To view the Checkmarx One Application List Integration or Application Releases table in Filter Navigator enter sn_vul_app_release_list.do

ReportAppListInt_New.png

To view the Checkmarx One Scan Summary Integration or Application Vulnerability Scan Summaries tables in Filter Navigator enter sn_vul_app_vul_scan_summary_list.do

Scan_Summary_Report_New.png

To view the Checkmarx One Application Vulnerable Item Integration or Application Vulnerable Item tables in Filter Navigator enter sn_vul_app_vulnerable_item_list.do

Application_Vulnerable_Items_New.png

sn_vul_app_vul_entry_list.do

Application_Vulnerablity_Entries.png

Verifying the Property to Produce Closed Vulnerabilities

  1. Navigate to All and search sys_properties.LIST

  2. Select sys_properties_list, and search for property sn_vul.create_closed.

  3. When system property create_closed (Property name: sn_vul.create_closed) value is true, it creates new records in Closed state and updates records that get Closed.

    • If the above property is false, the present vulnerabilities would be updated to Closed, but it would NOT insert the new Closed findings.