@contrast/contrast 2.0.2-beta.3 → 2.0.2-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +51 -1
- package/dist/audit/catalogueApplication/catalogueApplication.js +6 -10
- package/dist/audit/catalogueApplication/catalogueApplication.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/commonApi.js +3 -6
- package/dist/audit/languageAnalysisEngine/commonApi.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/filterProjectPath.js +2 -1
- package/dist/audit/languageAnalysisEngine/filterProjectPath.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js +9 -12
- package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/sendSnapshot.js +15 -19
- package/dist/audit/languageAnalysisEngine/sendSnapshot.js.map +1 -0
- package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +9 -9
- package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js.map +1 -0
- package/dist/audit/report/commonReportingFunctions.js +33 -48
- package/dist/audit/report/commonReportingFunctions.js.map +1 -0
- package/dist/audit/report/models/reportGuidanceModel.js +2 -5
- package/dist/audit/report/models/reportGuidanceModel.js.map +1 -0
- package/dist/audit/report/models/reportLibraryModel.js +3 -7
- package/dist/audit/report/models/reportLibraryModel.js.map +1 -0
- package/dist/audit/report/models/reportListModel.js +4 -9
- package/dist/audit/report/models/reportListModel.js.map +1 -0
- package/dist/audit/report/models/reportOutputModel.js +4 -9
- package/dist/audit/report/models/reportOutputModel.js.map +1 -0
- package/dist/audit/report/models/reportSeverityModel.js +2 -5
- package/dist/audit/report/models/reportSeverityModel.js.map +1 -0
- package/dist/audit/report/models/severityCountModel.js +3 -5
- package/dist/audit/report/models/severityCountModel.js.map +1 -0
- package/dist/audit/report/reportingFeature.js +27 -55
- package/dist/audit/report/reportingFeature.js.map +1 -0
- package/dist/audit/report/utils/reportUtils.js +28 -59
- package/dist/audit/report/utils/reportUtils.js.map +1 -0
- package/dist/audit/save.js +14 -16
- package/dist/audit/save.js.map +1 -0
- package/dist/cliConstants.js +17 -18
- package/dist/cliConstants.js.map +1 -0
- package/dist/commands/audit/auditConfig.js +7 -10
- package/dist/commands/audit/auditConfig.js.map +1 -0
- package/dist/commands/audit/auditController.js +9 -13
- package/dist/commands/audit/auditController.js.map +1 -0
- package/dist/commands/audit/help.js +23 -25
- package/dist/commands/audit/help.js.map +1 -0
- package/dist/commands/audit/processAudit.js +9 -12
- package/dist/commands/audit/processAudit.js.map +1 -0
- package/dist/commands/audit/saveFile.js +3 -6
- package/dist/commands/audit/saveFile.js.map +1 -0
- package/dist/commands/auth/auth.js +25 -24
- package/dist/commands/auth/auth.js.map +1 -0
- package/dist/commands/config/config.js +12 -13
- package/dist/commands/config/config.js.map +1 -0
- package/dist/commands/github/fingerprintConfig.js +8 -11
- package/dist/commands/github/fingerprintConfig.js.map +1 -0
- package/dist/commands/github/processFingerprint.js +12 -15
- package/dist/commands/github/processFingerprint.js.map +1 -0
- package/dist/commands/github/projectGroup.js +25 -32
- package/dist/commands/github/projectGroup.js.map +1 -0
- package/dist/commands/github/repoServices.js +11 -21
- package/dist/commands/github/repoServices.js.map +1 -0
- package/dist/commands/learn/learn.js +3 -6
- package/dist/commands/learn/learn.js.map +1 -0
- package/dist/commands/learn/processLearn.js +3 -6
- package/dist/commands/learn/processLearn.js.map +1 -0
- package/dist/commands/scan/processScan.js +11 -14
- package/dist/commands/scan/processScan.js.map +1 -0
- package/dist/common/HTTPClient.js +123 -94
- package/dist/common/HTTPClient.js.map +1 -0
- package/dist/common/autoDetection.js +26 -33
- package/dist/common/autoDetection.js.map +1 -0
- package/dist/common/baseRequest.js +17 -18
- package/dist/common/baseRequest.js.map +1 -0
- package/dist/common/commonHelp.js +13 -13
- package/dist/common/commonHelp.js.map +1 -0
- package/dist/common/errorHandling.js +30 -39
- package/dist/common/errorHandling.js.map +1 -0
- package/dist/common/fail.js +6 -12
- package/dist/common/fail.js.map +1 -0
- package/dist/common/versionChecker.js +16 -19
- package/dist/common/versionChecker.js.map +1 -0
- package/dist/constants/constants.js +44 -65
- package/dist/constants/constants.js.map +1 -0
- package/dist/constants/lambda.js +8 -5
- package/dist/constants/lambda.js.map +1 -0
- package/dist/constants/locales.js +6 -9
- package/dist/constants/locales.js.map +1 -0
- package/dist/index.js +36 -39
- package/dist/index.js.map +1 -0
- package/dist/lambda/analytics.js +6 -9
- package/dist/lambda/analytics.js.map +1 -0
- package/dist/lambda/arn.js +6 -9
- package/dist/lambda/arn.js.map +1 -0
- package/dist/lambda/aws.js +29 -34
- package/dist/lambda/aws.js.map +1 -0
- package/dist/lambda/cliError.js +13 -41
- package/dist/lambda/cliError.js.map +1 -0
- package/dist/lambda/constants.js +3 -4
- package/dist/lambda/constants.js.map +1 -0
- package/dist/lambda/help.js +39 -44
- package/dist/lambda/help.js.map +1 -0
- package/dist/lambda/lambda.js +61 -65
- package/dist/lambda/lambda.js.map +1 -0
- package/dist/lambda/lambdaUtils.js +38 -32
- package/dist/lambda/lambdaUtils.js.map +1 -0
- package/dist/lambda/logUtils.js +21 -17
- package/dist/lambda/logUtils.js.map +1 -0
- package/dist/lambda/scanDetailCompletion.js +19 -25
- package/dist/lambda/scanDetailCompletion.js.map +1 -0
- package/dist/lambda/scanRequest.js +34 -41
- package/dist/lambda/scanRequest.js.map +1 -0
- package/dist/lambda/scanResults.js +8 -10
- package/dist/lambda/scanResults.js.map +1 -0
- package/dist/lambda/types.js +5 -7
- package/dist/lambda/types.js.map +1 -0
- package/dist/lambda/utils.js +33 -35
- package/dist/lambda/utils.js.map +1 -0
- package/dist/sbom/generateSbom.js +6 -10
- package/dist/sbom/generateSbom.js.map +1 -0
- package/dist/scaAnalysis/common/auditReport.js +8 -12
- package/dist/scaAnalysis/common/auditReport.js.map +1 -0
- package/dist/scaAnalysis/common/commonReportingFunctionsSca.js +26 -32
- package/dist/scaAnalysis/common/commonReportingFunctionsSca.js.map +1 -0
- package/dist/scaAnalysis/common/formatMessage.js +8 -17
- package/dist/scaAnalysis/common/formatMessage.js.map +1 -0
- package/dist/scaAnalysis/common/models/ScaReportModel.js +4 -9
- package/dist/scaAnalysis/common/models/ScaReportModel.js.map +1 -0
- package/dist/scaAnalysis/common/scaParserForGoAndJava.js +10 -9
- package/dist/scaAnalysis/common/scaParserForGoAndJava.js.map +1 -0
- package/dist/scaAnalysis/common/scaServicesUpload.js +21 -22
- package/dist/scaAnalysis/common/scaServicesUpload.js.map +1 -0
- package/dist/scaAnalysis/common/treeUpload.js +7 -10
- package/dist/scaAnalysis/common/treeUpload.js.map +1 -0
- package/dist/scaAnalysis/common/utils/reportUtilsSca.js +21 -29
- package/dist/scaAnalysis/common/utils/reportUtilsSca.js.map +1 -0
- package/dist/scaAnalysis/dotnet/analysis.js +12 -18
- package/dist/scaAnalysis/dotnet/analysis.js.map +1 -0
- package/dist/scaAnalysis/dotnet/index.js +4 -7
- package/dist/scaAnalysis/dotnet/index.js.map +1 -0
- package/dist/scaAnalysis/go/goAnalysis.js +8 -11
- package/dist/scaAnalysis/go/goAnalysis.js.map +1 -0
- package/dist/scaAnalysis/go/goParseDeps.js +9 -7
- package/dist/scaAnalysis/go/goParseDeps.js.map +1 -0
- package/dist/scaAnalysis/go/goReadDepFile.js +10 -8
- package/dist/scaAnalysis/go/goReadDepFile.js.map +1 -0
- package/dist/scaAnalysis/java/analysis.js +23 -20
- package/dist/scaAnalysis/java/analysis.js.map +1 -0
- package/dist/scaAnalysis/java/index.js +7 -10
- package/dist/scaAnalysis/java/index.js.map +1 -0
- package/dist/scaAnalysis/java/javaBuildDepsParser.js +43 -43
- package/dist/scaAnalysis/java/javaBuildDepsParser.js.map +1 -0
- package/dist/scaAnalysis/javascript/analysis.js +16 -20
- package/dist/scaAnalysis/javascript/analysis.js.map +1 -0
- package/dist/scaAnalysis/javascript/index.js +17 -19
- package/dist/scaAnalysis/javascript/index.js.map +1 -0
- package/dist/scaAnalysis/javascript/scaServiceParser.js +8 -15
- package/dist/scaAnalysis/javascript/scaServiceParser.js.map +1 -0
- package/dist/scaAnalysis/legacy/legacyFlow.js +13 -15
- package/dist/scaAnalysis/legacy/legacyFlow.js.map +1 -0
- package/dist/scaAnalysis/php/analysis.js +15 -16
- package/dist/scaAnalysis/php/analysis.js.map +1 -0
- package/dist/scaAnalysis/php/index.js +5 -8
- package/dist/scaAnalysis/php/index.js.map +1 -0
- package/dist/scaAnalysis/php/phpNewServicesMapper.js +9 -12
- package/dist/scaAnalysis/php/phpNewServicesMapper.js.map +1 -0
- package/dist/scaAnalysis/processServicesFlow.js +50 -25
- package/dist/scaAnalysis/processServicesFlow.js.map +1 -0
- package/dist/scaAnalysis/python/analysis.js +16 -23
- package/dist/scaAnalysis/python/analysis.js.map +1 -0
- package/dist/scaAnalysis/python/index.js +4 -7
- package/dist/scaAnalysis/python/index.js.map +1 -0
- package/dist/scaAnalysis/repoMode/gradleParser.js +7 -13
- package/dist/scaAnalysis/repoMode/gradleParser.js.map +1 -0
- package/dist/scaAnalysis/repoMode/index.js +9 -12
- package/dist/scaAnalysis/repoMode/index.js.map +1 -0
- package/dist/scaAnalysis/repoMode/mavenParser.js +12 -12
- package/dist/scaAnalysis/repoMode/mavenParser.js.map +1 -0
- package/dist/scaAnalysis/ruby/analysis.js +32 -46
- package/dist/scaAnalysis/ruby/analysis.js.map +1 -0
- package/dist/scaAnalysis/ruby/index.js +5 -8
- package/dist/scaAnalysis/ruby/index.js.map +1 -0
- package/dist/scaAnalysis/scaAnalysis.js +49 -51
- package/dist/scaAnalysis/scaAnalysis.js.map +1 -0
- package/dist/scan/fileUtils.js +27 -36
- package/dist/scan/fileUtils.js.map +1 -0
- package/dist/scan/formatScanOutput.js +47 -61
- package/dist/scan/formatScanOutput.js.map +1 -0
- package/dist/scan/help.js +8 -11
- package/dist/scan/help.js.map +1 -0
- package/dist/scan/models/groupedResultsModel.js +2 -5
- package/dist/scan/models/groupedResultsModel.js.map +1 -0
- package/dist/scan/models/resultContentModel.js +2 -2
- package/dist/scan/models/resultContentModel.js.map +1 -0
- package/dist/scan/models/scanResultsModel.js +2 -5
- package/dist/scan/models/scanResultsModel.js.map +1 -0
- package/dist/scan/populateProjectIdAndProjectName.js +9 -12
- package/dist/scan/populateProjectIdAndProjectName.js.map +1 -0
- package/dist/scan/saveResults.js +3 -6
- package/dist/scan/saveResults.js.map +1 -0
- package/dist/scan/scan.js +24 -31
- package/dist/scan/scan.js.map +1 -0
- package/dist/scan/scanConfig.js +14 -12
- package/dist/scan/scanConfig.js.map +1 -0
- package/dist/scan/scanController.js +17 -20
- package/dist/scan/scanController.js.map +1 -0
- package/dist/scan/scanResults.js +27 -34
- package/dist/scan/scanResults.js.map +1 -0
- package/dist/telemetry/telemetry.js +29 -59
- package/dist/telemetry/telemetry.js.map +1 -0
- package/dist/utils/capabilities.js +2 -1
- package/dist/utils/capabilities.js.map +1 -0
- package/dist/utils/commonApi.js +15 -24
- package/dist/utils/commonApi.js.map +1 -0
- package/dist/utils/filterProjectPath.js +2 -1
- package/dist/utils/filterProjectPath.js.map +1 -0
- package/dist/utils/generalAPI.js +11 -17
- package/dist/utils/generalAPI.js.map +1 -0
- package/dist/utils/getConfig.js +8 -13
- package/dist/utils/getConfig.js.map +1 -0
- package/dist/utils/oraWrapper.js +7 -14
- package/dist/utils/oraWrapper.js.map +1 -0
- package/dist/utils/paramsUtil/commandlineParams.js +2 -5
- package/dist/utils/paramsUtil/commandlineParams.js.map +1 -0
- package/dist/utils/paramsUtil/configStoreParams.js +9 -10
- package/dist/utils/paramsUtil/configStoreParams.js.map +1 -0
- package/dist/utils/paramsUtil/envVariableParams.js +2 -3
- package/dist/utils/paramsUtil/envVariableParams.js.map +1 -0
- package/dist/utils/paramsUtil/paramHandler.js +12 -13
- package/dist/utils/paramsUtil/paramHandler.js.map +1 -0
- package/dist/utils/parsedCLIOptions.js +4 -7
- package/dist/utils/parsedCLIOptions.js.map +1 -0
- package/dist/utils/requestUtils.js +7 -13
- package/dist/utils/requestUtils.js.map +1 -0
- package/dist/utils/saveFile.js +8 -11
- package/dist/utils/saveFile.js.map +1 -0
- package/dist/utils/validationCheck.js +5 -11
- package/dist/utils/validationCheck.js.map +1 -0
- package/package.json +33 -42
- package/.prettierignore +0 -1
- package/bin/contrast.js +0 -2
- package/dist/audit/languageAnalysisEngine/util/requestUtils.js +0 -14
- package/dist/lambda/__mocks__/aws.js +0 -21
- package/dist/lambda/__mocks__/lambdaConfig.json +0 -42
- package/src/audit/catalogueApplication/catalogueApplication.js +0 -51
- package/src/audit/languageAnalysisEngine/commonApi.js +0 -20
- package/src/audit/languageAnalysisEngine/filterProjectPath.js +0 -21
- package/src/audit/languageAnalysisEngine/getProjectRootFilenames.js +0 -36
- package/src/audit/languageAnalysisEngine/sendSnapshot.js +0 -57
- package/src/audit/languageAnalysisEngine/util/requestUtils.js +0 -17
- package/src/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +0 -63
- package/src/audit/report/commonReportingFunctions.js +0 -412
- package/src/audit/report/models/reportGuidanceModel.ts +0 -5
- package/src/audit/report/models/reportLibraryModel.ts +0 -30
- package/src/audit/report/models/reportListModel.ts +0 -49
- package/src/audit/report/models/reportOutputModel.ts +0 -29
- package/src/audit/report/models/reportSeverityModel.ts +0 -18
- package/src/audit/report/models/severityCountModel.ts +0 -22
- package/src/audit/report/reportingFeature.ts +0 -110
- package/src/audit/report/utils/reportUtils.ts +0 -165
- package/src/audit/save.js +0 -67
- package/src/cliConstants.js +0 -523
- package/src/commands/audit/auditConfig.js +0 -18
- package/src/commands/audit/auditController.js +0 -50
- package/src/commands/audit/help.js +0 -72
- package/src/commands/audit/processAudit.js +0 -34
- package/src/commands/audit/saveFile.js +0 -15
- package/src/commands/auth/auth.js +0 -146
- package/src/commands/config/config.js +0 -41
- package/src/commands/github/fingerprintConfig.js +0 -19
- package/src/commands/github/processFingerprint.js +0 -37
- package/src/commands/github/projectGroup.js +0 -298
- package/src/commands/github/repoServices.js +0 -122
- package/src/commands/learn/learn.js +0 -10
- package/src/commands/learn/processLearn.js +0 -13
- package/src/commands/scan/processScan.js +0 -42
- package/src/common/HTTPClient.js +0 -775
- package/src/common/autoDetection.js +0 -209
- package/src/common/baseRequest.ts +0 -83
- package/src/common/commonHelp.js +0 -53
- package/src/common/errorHandling.js +0 -157
- package/src/common/fail.js +0 -79
- package/src/common/versionChecker.js +0 -75
- package/src/constants/constants.js +0 -71
- package/src/constants/lambda.js +0 -85
- package/src/constants/locales.js +0 -365
- package/src/index.ts +0 -142
- package/src/lambda/__mocks__/aws.ts +0 -32
- package/src/lambda/__mocks__/lambdaConfig.json +0 -42
- package/src/lambda/analytics.ts +0 -9
- package/src/lambda/arn.ts +0 -33
- package/src/lambda/aws.ts +0 -248
- package/src/lambda/cliError.ts +0 -72
- package/src/lambda/constants.ts +0 -11
- package/src/lambda/help.ts +0 -92
- package/src/lambda/lambda.ts +0 -230
- package/src/lambda/lambdaUtils.ts +0 -111
- package/src/lambda/logUtils.ts +0 -64
- package/src/lambda/scanDetailCompletion.ts +0 -78
- package/src/lambda/scanRequest.ts +0 -169
- package/src/lambda/scanResults.ts +0 -29
- package/src/lambda/types.ts +0 -36
- package/src/lambda/utils.ts +0 -188
- package/src/sbom/generateSbom.ts +0 -45
- package/src/scaAnalysis/common/auditReport.js +0 -59
- package/src/scaAnalysis/common/commonReportingFunctionsSca.js +0 -276
- package/src/scaAnalysis/common/formatMessage.js +0 -67
- package/src/scaAnalysis/common/models/ScaReportModel.ts +0 -81
- package/src/scaAnalysis/common/scaParserForGoAndJava.js +0 -41
- package/src/scaAnalysis/common/scaServicesUpload.js +0 -159
- package/src/scaAnalysis/common/treeUpload.js +0 -51
- package/src/scaAnalysis/common/utils/reportUtilsSca.ts +0 -123
- package/src/scaAnalysis/dotnet/analysis.js +0 -72
- package/src/scaAnalysis/dotnet/index.js +0 -11
- package/src/scaAnalysis/go/goAnalysis.js +0 -26
- package/src/scaAnalysis/go/goParseDeps.js +0 -203
- package/src/scaAnalysis/go/goReadDepFile.js +0 -34
- package/src/scaAnalysis/java/analysis.js +0 -148
- package/src/scaAnalysis/java/index.js +0 -29
- package/src/scaAnalysis/java/javaBuildDepsParser.js +0 -439
- package/src/scaAnalysis/javascript/analysis.js +0 -111
- package/src/scaAnalysis/javascript/index.js +0 -104
- package/src/scaAnalysis/javascript/scaServiceParser.js +0 -151
- package/src/scaAnalysis/legacy/legacyFlow.js +0 -43
- package/src/scaAnalysis/php/analysis.js +0 -78
- package/src/scaAnalysis/php/index.js +0 -28
- package/src/scaAnalysis/php/phpNewServicesMapper.js +0 -77
- package/src/scaAnalysis/processServicesFlow.js +0 -126
- package/src/scaAnalysis/python/analysis.js +0 -93
- package/src/scaAnalysis/python/index.js +0 -16
- package/src/scaAnalysis/repoMode/gradleParser.js +0 -88
- package/src/scaAnalysis/repoMode/index.js +0 -21
- package/src/scaAnalysis/repoMode/mavenParser.js +0 -138
- package/src/scaAnalysis/ruby/analysis.js +0 -413
- package/src/scaAnalysis/ruby/index.js +0 -16
- package/src/scaAnalysis/scaAnalysis.js +0 -172
- package/src/scan/fileUtils.js +0 -218
- package/src/scan/formatScanOutput.ts +0 -225
- package/src/scan/help.js +0 -56
- package/src/scan/models/groupedResultsModel.ts +0 -20
- package/src/scan/models/resultContentModel.ts +0 -86
- package/src/scan/models/scanResultsModel.ts +0 -55
- package/src/scan/populateProjectIdAndProjectName.js +0 -73
- package/src/scan/saveResults.js +0 -14
- package/src/scan/scan.ts +0 -68
- package/src/scan/scanConfig.js +0 -58
- package/src/scan/scanController.js +0 -98
- package/src/scan/scanResults.js +0 -171
- package/src/telemetry/telemetry.ts +0 -154
- package/src/utils/capabilities.js +0 -12
- package/src/utils/commonApi.js +0 -103
- package/src/utils/filterProjectPath.js +0 -25
- package/src/utils/generalAPI.js +0 -52
- package/src/utils/getConfig.ts +0 -34
- package/src/utils/oraWrapper.js +0 -29
- package/src/utils/paramsUtil/commandlineParams.js +0 -12
- package/src/utils/paramsUtil/configStoreParams.js +0 -19
- package/src/utils/paramsUtil/envVariableParams.js +0 -10
- package/src/utils/paramsUtil/paramHandler.js +0 -38
- package/src/utils/parsedCLIOptions.js +0 -32
- package/src/utils/requestUtils.js +0 -29
- package/src/utils/saveFile.js +0 -20
- package/src/utils/validationCheck.js +0 -39
|
@@ -1,25 +1,24 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const
|
|
12
|
-
const createSummaryMessageTop = (numberOfVulnerableLibraries, numberOfCves) => {
|
|
1
|
+
import { ReportList, ReportModelStructure, ReportCompositeKey } from '../../audit/report/models/reportListModel.js';
|
|
2
|
+
import { countVulnerableLibrariesBySeverity } from '../../audit/report/utils/reportUtils.js';
|
|
3
|
+
import { SeverityCountModel } from '../../audit/report/models/severityCountModel.js';
|
|
4
|
+
import { orderBy } from 'lodash-es';
|
|
5
|
+
import { ReportOutputModel, ReportOutputHeaderModel, ReportOutputBodyModel } from '../../audit/report/models/reportOutputModel.js';
|
|
6
|
+
import { CE_URL, CRITICAL_COLOUR, HIGH_COLOUR, MEDIUM_COLOUR, LOW_COLOUR, NOTE_COLOUR } from '../../constants/constants.js';
|
|
7
|
+
import Table from 'cli-table3';
|
|
8
|
+
import { findHighestSeverityCVESca, severityCountAllCVEsSca, findCVESeveritySca, orderByHighestPrioritySca } from './utils/reportUtilsSca.js';
|
|
9
|
+
import chalk from 'chalk';
|
|
10
|
+
import { buildFormattedHeaderNum } from '../../audit/report/commonReportingFunctions.js';
|
|
11
|
+
export const createSummaryMessageTop = (numberOfVulnerableLibraries, numberOfCves) => {
|
|
13
12
|
numberOfVulnerableLibraries === 1
|
|
14
13
|
? console.log(`\n\nFound 1 vulnerable library containing ${numberOfCves} CVE`)
|
|
15
14
|
: console.log(`\n\nFound ${numberOfVulnerableLibraries} vulnerable libraries containing ${numberOfCves} CVEs`);
|
|
16
15
|
};
|
|
17
|
-
const createSummaryMessageBottom = numberOfVulnerableLibraries => {
|
|
16
|
+
export const createSummaryMessageBottom = numberOfVulnerableLibraries => {
|
|
18
17
|
numberOfVulnerableLibraries === 1
|
|
19
18
|
? console.log(`Found 1 vulnerability`)
|
|
20
19
|
: console.log(`Found ${numberOfVulnerableLibraries} vulnerabilities`);
|
|
21
20
|
};
|
|
22
|
-
const printFormattedOutputSca = (config, reportModelList, numberOfVulnerableLibraries, numberOfCves) => {
|
|
21
|
+
export const printFormattedOutputSca = (config, reportModelList, numberOfVulnerableLibraries, numberOfCves) => {
|
|
23
22
|
createSummaryMessageTop(numberOfVulnerableLibraries, numberOfCves);
|
|
24
23
|
console.log();
|
|
25
24
|
const report = new ReportList();
|
|
@@ -54,11 +53,16 @@ const printFormattedOutputSca = (config, reportModelList, numberOfVulnerableLibr
|
|
|
54
53
|
const { criticalMessage, highMessage, mediumMessage, lowMessage, noteMessage } = buildFooter(outputOrderedByLowestSeverityAndLowestNumOfCvesFirst);
|
|
55
54
|
console.log(`${criticalMessage} | ${highMessage} | ${mediumMessage} | ${lowMessage} | ${noteMessage}`);
|
|
56
55
|
if (config.host !== CE_URL && config.projectId) {
|
|
57
|
-
console.log('\n' + chalk.bold(
|
|
58
|
-
|
|
56
|
+
console.log('\n' + chalk.bold('Check out your project’s SCA risk in Contrast.'));
|
|
57
|
+
if (config.repo && config.shortenedFilePath) {
|
|
58
|
+
console.log(`${config.host}/Contrast/static/ng/index.html#/${config.organizationId}/libraries?view=static&projects=${config.shortenedFilePath}`);
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
console.log(`${config.host}/Contrast/static/ng/index.html#/${config.organizationId}/libraries?view=static&projects=${config.name}`);
|
|
62
|
+
}
|
|
59
63
|
}
|
|
60
64
|
};
|
|
61
|
-
function getReportTable() {
|
|
65
|
+
export function getReportTable() {
|
|
62
66
|
return new Table({
|
|
63
67
|
chars: {
|
|
64
68
|
top: '',
|
|
@@ -83,7 +87,7 @@ function getReportTable() {
|
|
|
83
87
|
colWidths: [12, 1, 100]
|
|
84
88
|
});
|
|
85
89
|
}
|
|
86
|
-
function buildHeader(highestSeverity, contrastHeaderNum, libraryName, version, numOfCVEs) {
|
|
90
|
+
export function buildHeader(highestSeverity, contrastHeaderNum, libraryName, version, numOfCVEs) {
|
|
87
91
|
const vulnerabilityPluralised = numOfCVEs > 1 ? 'vulnerabilities' : 'vulnerability';
|
|
88
92
|
const formattedHeaderNum = buildFormattedHeaderNum(contrastHeaderNum);
|
|
89
93
|
const headerColour = chalk.hex(highestSeverity.colour);
|
|
@@ -93,13 +97,13 @@ function buildHeader(highestSeverity, contrastHeaderNum, libraryName, version, n
|
|
|
93
97
|
const introducesMessage = `introduces ${numOfCVEs} ${vulnerabilityPluralised}`;
|
|
94
98
|
return new ReportOutputHeaderModel(vulnMessage, introducesMessage);
|
|
95
99
|
}
|
|
96
|
-
function buildBody(cveArray, advice) {
|
|
100
|
+
export function buildBody(cveArray, advice) {
|
|
97
101
|
const orderedCvesWithSeverityAssigned = orderByHighestPrioritySca(cveArray.map(cve => findCVESeveritySca(cve)));
|
|
98
102
|
const issueMessage = getIssueRow(orderedCvesWithSeverityAssigned);
|
|
99
103
|
const adviceMessage = getAdviceRow(advice);
|
|
100
104
|
return new ReportOutputBodyModel(issueMessage, adviceMessage);
|
|
101
105
|
}
|
|
102
|
-
function getIssueRow(cveArray) {
|
|
106
|
+
export function getIssueRow(cveArray) {
|
|
103
107
|
const cveMessagesList = getIssueCveMsgList(cveArray);
|
|
104
108
|
return [chalk.bold('Issue'), ':', `${cveMessagesList.join(', ')}`];
|
|
105
109
|
}
|
|
@@ -129,7 +133,7 @@ const buildFooter = reportModelStructure => {
|
|
|
129
133
|
noteMessage
|
|
130
134
|
};
|
|
131
135
|
};
|
|
132
|
-
const getIssueCveMsgList = reportSeverityModels => {
|
|
136
|
+
export const getIssueCveMsgList = reportSeverityModels => {
|
|
133
137
|
const cveMessages = [];
|
|
134
138
|
reportSeverityModels.forEach(reportSeverityModel => {
|
|
135
139
|
const { colour, severity, name } = reportSeverityModel;
|
|
@@ -141,14 +145,4 @@ const getIssueCveMsgList = reportSeverityModels => {
|
|
|
141
145
|
});
|
|
142
146
|
return cveMessages;
|
|
143
147
|
};
|
|
144
|
-
|
|
145
|
-
createSummaryMessageTop,
|
|
146
|
-
createSummaryMessageBottom,
|
|
147
|
-
printFormattedOutputSca,
|
|
148
|
-
getReportTable,
|
|
149
|
-
buildHeader,
|
|
150
|
-
buildBody,
|
|
151
|
-
getIssueRow,
|
|
152
|
-
buildFormattedHeaderNum,
|
|
153
|
-
getIssueCveMsgList
|
|
154
|
-
};
|
|
148
|
+
//# sourceMappingURL=commonReportingFunctionsSca.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"commonReportingFunctionsSca.js","sourceRoot":"","sources":["../../../src/scaAnalysis/common/commonReportingFunctionsSca.js"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
const createJavaTSMessage = javaTree => {
|
|
1
|
+
export const createJavaTSMessage = javaTree => {
|
|
3
2
|
return {
|
|
4
3
|
java: {
|
|
5
4
|
mavenDependencyTrees: javaTree
|
|
6
5
|
}
|
|
7
6
|
};
|
|
8
7
|
};
|
|
9
|
-
const createJavaScriptTSMessage = js => {
|
|
8
|
+
export const createJavaScriptTSMessage = js => {
|
|
10
9
|
let message = {
|
|
11
10
|
node: {
|
|
12
11
|
packageJSON: js.packageJSON
|
|
@@ -21,24 +20,24 @@ const createJavaScriptTSMessage = js => {
|
|
|
21
20
|
}
|
|
22
21
|
return message;
|
|
23
22
|
};
|
|
24
|
-
const createGoTSMessage = goTree => {
|
|
23
|
+
export const createGoTSMessage = goTree => {
|
|
25
24
|
return {
|
|
26
25
|
go: {
|
|
27
26
|
goDependencyTrees: goTree
|
|
28
27
|
}
|
|
29
28
|
};
|
|
30
29
|
};
|
|
31
|
-
const createRubyTSMessage = rubyTree => {
|
|
30
|
+
export const createRubyTSMessage = rubyTree => {
|
|
32
31
|
return {
|
|
33
32
|
ruby: rubyTree
|
|
34
33
|
};
|
|
35
34
|
};
|
|
36
|
-
const createPythonTSMessage = pythonTree => {
|
|
35
|
+
export const createPythonTSMessage = pythonTree => {
|
|
37
36
|
return {
|
|
38
37
|
python: pythonTree
|
|
39
38
|
};
|
|
40
39
|
};
|
|
41
|
-
const createPhpTSMessage = phpTree => {
|
|
40
|
+
export const createPhpTSMessage = phpTree => {
|
|
42
41
|
return {
|
|
43
42
|
php: {
|
|
44
43
|
composerJSON: phpTree.composerJSON,
|
|
@@ -46,17 +45,9 @@ const createPhpTSMessage = phpTree => {
|
|
|
46
45
|
}
|
|
47
46
|
};
|
|
48
47
|
};
|
|
49
|
-
const createDotNetTSMessage = dotnetTree => {
|
|
48
|
+
export const createDotNetTSMessage = dotnetTree => {
|
|
50
49
|
return {
|
|
51
50
|
dotnet: dotnetTree
|
|
52
51
|
};
|
|
53
52
|
};
|
|
54
|
-
|
|
55
|
-
createJavaScriptTSMessage,
|
|
56
|
-
createJavaTSMessage,
|
|
57
|
-
createGoTSMessage,
|
|
58
|
-
createPhpTSMessage,
|
|
59
|
-
createRubyTSMessage,
|
|
60
|
-
createPythonTSMessage,
|
|
61
|
-
createDotNetTSMessage
|
|
62
|
-
};
|
|
53
|
+
//# sourceMappingURL=formatMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatMessage.js","sourceRoot":"","sources":["../../../src/scaAnalysis/common/formatMessage.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC,EAAE;IAC5C,OAAO;QACL,IAAI,EAAE;YACJ,oBAAoB,EAAE,QAAQ;SAC/B;KACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAG,EAAE,CAAC,EAAE;IAC5C,IAAI,OAAO,GAAG;QACZ,IAAI,EAAE;YACJ,WAAW,EAAE,EAAE,CAAC,WAAW;SAC5B;KACF,CAAA;IACD,IAAI,EAAE,CAAC,IAAI,KAAK,SAAS,EAAE;QACzB,OAAO,CAAC,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,CAAA;QAChD,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAA;KAC/C;SAAM;QACL,OAAO,CAAC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC,WAAW,CAAA;KAC1C;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE;IACxC,OAAO;QACL,EAAE,EAAE;YACF,iBAAiB,EAAE,MAAM;SAC1B;KACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,QAAQ,CAAC,EAAE;IAC5C,OAAO;QACL,IAAI,EAAE,QAAQ;KACf,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC,EAAE;IAChD,OAAO;QACL,MAAM,EAAE,UAAU;KACnB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,OAAO,CAAC,EAAE;IAC1C,OAAO;QACL,GAAG,EAAE;YACH,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;SAC3B;KACF,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,UAAU,CAAC,EAAE;IAChD,OAAO;QACL,MAAM,EAAE,UAAU;KACnB,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ScaReportRemediationAdviceModel = exports.ScaReportVulnerabilityModel = exports.ScaReportModel = void 0;
|
|
4
|
-
class ScaReportModel {
|
|
1
|
+
export class ScaReportModel {
|
|
5
2
|
constructor(library) {
|
|
6
3
|
this.uuid = library.uuid;
|
|
7
4
|
this.groupName = library.groupName;
|
|
@@ -21,8 +18,7 @@ class ScaReportModel {
|
|
|
21
18
|
this.remediationAdvice = library.remediationAdvice;
|
|
22
19
|
}
|
|
23
20
|
}
|
|
24
|
-
|
|
25
|
-
class ScaReportVulnerabilityModel {
|
|
21
|
+
export class ScaReportVulnerabilityModel {
|
|
26
22
|
constructor(name, description, cvss2Vector, severityValue, severity, cvss3Vector, cvss3SeverityValue, cvss3Severity, hasCvss3) {
|
|
27
23
|
this.name = name;
|
|
28
24
|
this.description = description;
|
|
@@ -35,11 +31,10 @@ class ScaReportVulnerabilityModel {
|
|
|
35
31
|
this.hasCvss3 = hasCvss3;
|
|
36
32
|
}
|
|
37
33
|
}
|
|
38
|
-
|
|
39
|
-
class ScaReportRemediationAdviceModel {
|
|
34
|
+
export class ScaReportRemediationAdviceModel {
|
|
40
35
|
constructor(closestStableVersion, latestStableVersion) {
|
|
41
36
|
this.closestStableVersion = closestStableVersion;
|
|
42
37
|
this.latestStableVersion = latestStableVersion;
|
|
43
38
|
}
|
|
44
39
|
}
|
|
45
|
-
|
|
40
|
+
//# sourceMappingURL=ScaReportModel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScaReportModel.js","sourceRoot":"","sources":["../../../../src/scaAnalysis/common/models/ScaReportModel.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,cAAc;IAkBzB,YAAY,OAAY;QACtB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;QAClC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAA;QACxC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACxB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;QAChC,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC9C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAA;QACpC,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAA;QAC5C,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;QACtC,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAA;QAChE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAA;QAC1C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAA;QAC5C,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC9C,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAA;IACpD,CAAC;CACF;AAED,MAAM,OAAO,2BAA2B;IAWtC,YACE,IAAY,EACZ,WAAmB,EACnB,WAAmB,EACnB,aAAqB,EACrB,QAAgB,EAChB,WAAmB,EACnB,kBAA0B,EAC1B,aAAqB,EACrB,QAAiB;QAEjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAA;QAC5C,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;CACF;AAED,MAAM,OAAO,+BAA+B;IAI1C,YAAY,oBAA4B,EAAE,mBAA2B;QACnE,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAA;QAChD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAA;IAChD,CAAC;CACF"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
const parseDependenciesForSCAServices = dependencyTreeObject => {
|
|
1
|
+
export const parseDependenciesForSCAServices = dependencyTreeObject => {
|
|
3
2
|
let parsedDependencyTree = {};
|
|
4
3
|
let subDeps;
|
|
5
4
|
for (let tree in dependencyTreeObject) {
|
|
6
5
|
let unParsedDependencyTree = dependencyTreeObject[tree];
|
|
7
6
|
for (let dependency in unParsedDependencyTree) {
|
|
8
7
|
subDeps = parseSubDependencies(unParsedDependencyTree[dependency].edges);
|
|
9
|
-
|
|
8
|
+
parsedDependencyTree[dependency] = {
|
|
10
9
|
name: unParsedDependencyTree[dependency].artifactID,
|
|
11
10
|
group: unParsedDependencyTree[dependency].group,
|
|
12
11
|
version: unParsedDependencyTree[dependency].version,
|
|
@@ -14,19 +13,21 @@ const parseDependenciesForSCAServices = dependencyTreeObject => {
|
|
|
14
13
|
productionDependency: true,
|
|
15
14
|
dependencies: subDeps
|
|
16
15
|
};
|
|
17
|
-
parsedDependencyTree[dependency] = parsedDependency;
|
|
18
16
|
}
|
|
19
17
|
}
|
|
20
18
|
return parsedDependencyTree;
|
|
21
19
|
};
|
|
22
|
-
const parseSubDependencies = dependencies => {
|
|
20
|
+
export const parseSubDependencies = dependencies => {
|
|
21
|
+
// converting:
|
|
22
|
+
// dependencies: {
|
|
23
|
+
// 'gopkg.in/check.v1@v0.0.0-2': 'gopkg.in/check.v1@v0.0.0-2'
|
|
24
|
+
// }
|
|
25
|
+
// to:
|
|
26
|
+
// dependencies: [ 'gopkg.in/check.v1@v0.0.0-2' ]
|
|
23
27
|
let subDeps = [];
|
|
24
28
|
for (let x in dependencies) {
|
|
25
29
|
subDeps.push(dependencies[x]);
|
|
26
30
|
}
|
|
27
31
|
return subDeps;
|
|
28
32
|
};
|
|
29
|
-
|
|
30
|
-
parseDependenciesForSCAServices,
|
|
31
|
-
parseSubDependencies
|
|
32
|
-
};
|
|
33
|
+
//# sourceMappingURL=scaParserForGoAndJava.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaParserForGoAndJava.js","sourceRoot":"","sources":["../../../src/scaAnalysis/common/scaParserForGoAndJava.js"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,+BAA+B,GAAG,oBAAoB,CAAC,EAAE;IACpE,IAAI,oBAAoB,GAAG,EAAE,CAAA;IAC7B,IAAI,OAAO,CAAA;IAEX,KAAK,IAAI,IAAI,IAAI,oBAAoB,EAAE;QACrC,IAAI,sBAAsB,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;QACvD,KAAK,IAAI,UAAU,IAAI,sBAAsB,EAAE;YAC7C,OAAO,GAAG,oBAAoB,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAA;YAExE,oBAAoB,CAAC,UAAU,CAAC,GAAG;gBACjC,IAAI,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC,UAAU;gBACnD,KAAK,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC,KAAK;gBAC/C,OAAO,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC,OAAO;gBACnD,gBAAgB,EAAE,sBAAsB,CAAC,UAAU,CAAC,CAAC,IAAI,KAAK,QAAQ;gBACtE,oBAAoB,EAAE,IAAI;gBAC1B,YAAY,EAAE,OAAO;aACtB,CAAA;SACF;KACF;IACD,OAAO,oBAAoB,CAAA;AAC7B,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC,EAAE;IACjD,cAAc;IACd,kBAAkB;IAClB,+DAA+D;IAC/D,IAAI;IACJ,MAAM;IACN,iDAAiD;IACjD,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,KAAK,IAAI,CAAC,IAAI,YAAY,EAAE;QAC1B,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;KAC9B;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const scaTreeUpload = async (analysis, config, reportSpinner) => {
|
|
1
|
+
import { getTimeout, getHttpClient, handleTimeout } from '../../utils/commonApi.js';
|
|
2
|
+
import { getAppVersion } from '../../constants/constants.js';
|
|
3
|
+
import { sleep } from '../../utils/requestUtils.js';
|
|
4
|
+
import { performance } from 'perf_hooks';
|
|
5
|
+
export const scaTreeUpload = async (analysis, config, reportSpinner) => {
|
|
7
6
|
if (config.projectId === '') {
|
|
8
7
|
console.log('We were unable to create/locate a project for this manifest, please try again or run with --debug for more information');
|
|
9
8
|
process.exit(1);
|
|
10
9
|
}
|
|
11
10
|
config.language = config.language === 'JAVASCRIPT' ? 'NODE' : config.language;
|
|
12
11
|
const startTime = performance.now();
|
|
13
|
-
const timeout =
|
|
12
|
+
const timeout = getTimeout(config);
|
|
14
13
|
const doINeedParent = config.repositoryId && config.language === 'JAVA';
|
|
15
14
|
const requestBody = {
|
|
16
15
|
parentPom: doINeedParent ? analysis.parentPom : null,
|
|
@@ -19,16 +18,16 @@ const scaTreeUpload = async (analysis, config, reportSpinner) => {
|
|
|
19
18
|
language: config.language,
|
|
20
19
|
tool: {
|
|
21
20
|
name: 'Contrast Codesec',
|
|
22
|
-
version:
|
|
21
|
+
version: getAppVersion()
|
|
23
22
|
}
|
|
24
23
|
};
|
|
25
24
|
if (config.debug || config.verbose) {
|
|
26
|
-
console.log('requestBody', requestBody);
|
|
25
|
+
console.log('requestBody', JSON.stringify(requestBody));
|
|
27
26
|
}
|
|
28
27
|
if (config.branch) {
|
|
29
28
|
requestBody.branchName = config.branch;
|
|
30
29
|
}
|
|
31
|
-
const client =
|
|
30
|
+
const client = getHttpClient(config);
|
|
32
31
|
const reportID = await client
|
|
33
32
|
.scaServiceIngest(requestBody, config)
|
|
34
33
|
.then(res => {
|
|
@@ -64,27 +63,30 @@ const scaTreeUpload = async (analysis, config, reportSpinner) => {
|
|
|
64
63
|
if (!keepChecking) {
|
|
65
64
|
return { reportArray: res.reportBody, reportId: reportID };
|
|
66
65
|
}
|
|
67
|
-
|
|
68
|
-
await
|
|
66
|
+
handleTimeout(startTime, timeout, reportSpinner);
|
|
67
|
+
await sleep(5000);
|
|
69
68
|
}
|
|
70
69
|
return { reportArray: res, reportID };
|
|
71
70
|
};
|
|
72
|
-
const noProjectUpload = async (analysis, config, reportSpinner) => {
|
|
71
|
+
export const noProjectUpload = async (analysis, config, reportSpinner) => {
|
|
73
72
|
config.language = config.language === 'JAVASCRIPT' ? 'NODE' : config.language;
|
|
74
73
|
const startTime = performance.now();
|
|
75
|
-
const timeout =
|
|
74
|
+
const timeout = getTimeout(config);
|
|
76
75
|
const requestBody = {
|
|
77
76
|
dependencyTree: analysis,
|
|
78
77
|
language: config.language,
|
|
79
78
|
tool: {
|
|
80
79
|
name: 'Contrast Codesec',
|
|
81
|
-
version:
|
|
80
|
+
version: getAppVersion()
|
|
82
81
|
}
|
|
83
82
|
};
|
|
84
83
|
if (config.branch) {
|
|
85
84
|
requestBody.branchName = config.branch;
|
|
86
85
|
}
|
|
87
|
-
|
|
86
|
+
if (config.debug || config.verbose) {
|
|
87
|
+
console.log('requestBody', JSON.stringify(requestBody));
|
|
88
|
+
}
|
|
89
|
+
const client = getHttpClient(config);
|
|
88
90
|
const reportID = await client
|
|
89
91
|
.noProjectIdUpload(requestBody, config)
|
|
90
92
|
.then(res => {
|
|
@@ -125,12 +127,9 @@ const noProjectUpload = async (analysis, config, reportSpinner) => {
|
|
|
125
127
|
if (!keepChecking) {
|
|
126
128
|
return { reportArray: res.reportBody, reportId: reportID };
|
|
127
129
|
}
|
|
128
|
-
|
|
129
|
-
await
|
|
130
|
+
handleTimeout(startTime, timeout, reportSpinner);
|
|
131
|
+
await sleep(5000);
|
|
130
132
|
}
|
|
131
133
|
return { reportArray: res, reportID };
|
|
132
134
|
};
|
|
133
|
-
|
|
134
|
-
scaTreeUpload,
|
|
135
|
-
noProjectUpload
|
|
136
|
-
};
|
|
135
|
+
//# sourceMappingURL=scaServicesUpload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scaServicesUpload.js","sourceRoot":"","sources":["../../../src/scaAnalysis/common/scaServicesUpload.js"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const
|
|
4
|
-
const commonSendSnapShot = async (analysis, config) => {
|
|
1
|
+
import { getHttpClient } from '../../utils/commonApi.js';
|
|
2
|
+
import { getAppVersion } from '../../constants/constants.js';
|
|
3
|
+
export const commonSendSnapShot = async (analysis, config) => {
|
|
5
4
|
let requestBody = {};
|
|
6
5
|
config.legacy === false
|
|
7
6
|
? (requestBody = sendToSCAServices(config, analysis))
|
|
8
7
|
: (requestBody = {
|
|
9
8
|
appID: config.applicationId,
|
|
10
|
-
cliVersion:
|
|
9
|
+
cliVersion: getAppVersion(),
|
|
11
10
|
snapshot: analysis
|
|
12
11
|
});
|
|
13
|
-
const client =
|
|
12
|
+
const client = getHttpClient(config);
|
|
14
13
|
return client
|
|
15
14
|
.sendSnapshot(requestBody, config)
|
|
16
15
|
.then(res => {
|
|
@@ -36,10 +35,8 @@ const sendToSCAServices = (config, analysis) => {
|
|
|
36
35
|
language: config.language,
|
|
37
36
|
tool: {
|
|
38
37
|
name: 'Contrast Codesec',
|
|
39
|
-
version:
|
|
38
|
+
version: getAppVersion()
|
|
40
39
|
}
|
|
41
40
|
};
|
|
42
41
|
};
|
|
43
|
-
|
|
44
|
-
commonSendSnapShot
|
|
45
|
-
};
|
|
42
|
+
//# sourceMappingURL=treeUpload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"treeUpload.js","sourceRoot":"","sources":["../../../src/scaAnalysis/common/treeUpload.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAE5D,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE;IAC3D,IAAI,WAAW,GAAG,EAAE,CAAA;IACpB,MAAM,CAAC,MAAM,KAAK,KAAK;QACrB,CAAC,CAAC,CAAC,WAAW,GAAG,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC,WAAW,GAAG;YACb,KAAK,EAAE,MAAM,CAAC,aAAa;YAC3B,UAAU,EAAE,aAAa,EAAE;YAC3B,QAAQ,EAAE,QAAQ;SACnB,CAAC,CAAA;IAEN,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAA;IACpC,OAAO,MAAM;SACV,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC;SACjC,IAAI,CAAC,GAAG,CAAC,EAAE;QACV,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE;YAC1B,OAAO,GAAG,CAAC,IAAI,CAAA;SAChB;aAAM;YACL,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE;gBAC1B,MAAM,IAAI,KAAK,CACb,8FACE,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,EACpD,yBAAyB,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAClD,CAAA;aACF;YACD,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,gCAAgC,CAAC,CAAA;SACnE;IACH,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,CAAC,EAAE;QACX,MAAM,GAAG,CAAA;IACX,CAAC,CAAC,CAAA;AACN,CAAC,CAAA;AAED,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;IAC7C,OAAO;QACL,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,cAAc,EAAE,QAAQ;QACxB,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,IAAI,EAAE;YACJ,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,aAAa,EAAE;SACzB;KACF,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,61 +1,53 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const reportSeverityModel_1 = require("../../../audit/report/models/reportSeverityModel");
|
|
7
|
-
const ScaReportModel_1 = require("../models/ScaReportModel");
|
|
8
|
-
function findHighestSeverityCVESca(cveArray) {
|
|
1
|
+
import { orderBy } from 'lodash-es';
|
|
2
|
+
import { CRITICAL_COLOUR, CRITICAL_PRIORITY, HIGH_COLOUR, HIGH_PRIORITY, LOW_COLOUR, LOW_PRIORITY, MEDIUM_COLOUR, MEDIUM_PRIORITY, NOTE_COLOUR, NOTE_PRIORITY } from '../../../constants/constants.js';
|
|
3
|
+
import { ReportSeverityModel } from '../../../audit/report/models/reportSeverityModel.js';
|
|
4
|
+
import { ScaReportModel } from '../models/ScaReportModel.js';
|
|
5
|
+
export function findHighestSeverityCVESca(cveArray) {
|
|
9
6
|
const mappedToReportSeverityModels = cveArray.map(cve => findCVESeveritySca(cve));
|
|
10
|
-
|
|
7
|
+
//order and get first
|
|
8
|
+
return orderBy(mappedToReportSeverityModels, cve => cve?.priority)[0];
|
|
11
9
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return (0, lodash_1.orderBy)(reportSeverityModel, ['priority'], ['asc']);
|
|
10
|
+
export function orderByHighestPrioritySca(reportSeverityModel) {
|
|
11
|
+
return orderBy(reportSeverityModel, ['priority'], ['asc']);
|
|
15
12
|
}
|
|
16
|
-
|
|
17
|
-
function findCVESeveritySca(vulnerabilityModel) {
|
|
13
|
+
export function findCVESeveritySca(vulnerabilityModel) {
|
|
18
14
|
const { name } = vulnerabilityModel;
|
|
19
15
|
if (vulnerabilityModel.cvss3Severity === 'CRITICAL' ||
|
|
20
16
|
vulnerabilityModel.severity === 'CRITICAL') {
|
|
21
|
-
return new
|
|
17
|
+
return new ReportSeverityModel('CRITICAL', CRITICAL_PRIORITY, CRITICAL_COLOUR, name);
|
|
22
18
|
}
|
|
23
19
|
else if (vulnerabilityModel.cvss3Severity === 'HIGH' ||
|
|
24
20
|
vulnerabilityModel.severity === 'HIGH') {
|
|
25
|
-
return new
|
|
21
|
+
return new ReportSeverityModel('HIGH', HIGH_PRIORITY, HIGH_COLOUR, name);
|
|
26
22
|
}
|
|
27
23
|
else if (vulnerabilityModel.cvss3Severity === 'MEDIUM' ||
|
|
28
24
|
vulnerabilityModel.severity === 'MEDIUM') {
|
|
29
|
-
return new
|
|
25
|
+
return new ReportSeverityModel('MEDIUM', MEDIUM_PRIORITY, MEDIUM_COLOUR, name);
|
|
30
26
|
}
|
|
31
27
|
else if (vulnerabilityModel.cvss3Severity === 'LOW' ||
|
|
32
28
|
vulnerabilityModel.severity === 'LOW') {
|
|
33
|
-
return new
|
|
29
|
+
return new ReportSeverityModel('LOW', LOW_PRIORITY, LOW_COLOUR, name);
|
|
34
30
|
}
|
|
35
31
|
else if (vulnerabilityModel.cvss3Severity === 'NOTE' ||
|
|
36
32
|
vulnerabilityModel.severity === 'NOTE') {
|
|
37
|
-
return new
|
|
33
|
+
return new ReportSeverityModel('NOTE', NOTE_PRIORITY, NOTE_COLOUR, name);
|
|
38
34
|
}
|
|
39
35
|
}
|
|
40
|
-
|
|
41
|
-
function convertGenericToTypedReportModelSca(reportArray) {
|
|
36
|
+
export function convertGenericToTypedReportModelSca(reportArray) {
|
|
42
37
|
return reportArray.map((library) => {
|
|
43
|
-
return new
|
|
38
|
+
return new ScaReportModel(library);
|
|
44
39
|
});
|
|
45
40
|
}
|
|
46
|
-
|
|
47
|
-
function severityCountAllLibrariesSca(vulnerableLibraries, severityCount) {
|
|
41
|
+
export function severityCountAllLibrariesSca(vulnerableLibraries, severityCount) {
|
|
48
42
|
vulnerableLibraries.forEach(lib => severityCountAllCVEsSca(lib.vulnerabilities, severityCount));
|
|
49
43
|
return severityCount;
|
|
50
44
|
}
|
|
51
|
-
|
|
52
|
-
function severityCountAllCVEsSca(cveArray, severityCount) {
|
|
45
|
+
export function severityCountAllCVEsSca(cveArray, severityCount) {
|
|
53
46
|
const severityCountInner = severityCount;
|
|
54
47
|
cveArray.forEach(cve => severityCountSingleCVESca(cve, severityCountInner));
|
|
55
48
|
return severityCountInner;
|
|
56
49
|
}
|
|
57
|
-
|
|
58
|
-
function severityCountSingleCVESca(cve, severityCount) {
|
|
50
|
+
export function severityCountSingleCVESca(cve, severityCount) {
|
|
59
51
|
if (cve.cvss3Severity === 'CRITICAL' || cve.severity === 'CRITICAL') {
|
|
60
52
|
severityCount.critical += 1;
|
|
61
53
|
}
|
|
@@ -73,4 +65,4 @@ function severityCountSingleCVESca(cve, severityCount) {
|
|
|
73
65
|
}
|
|
74
66
|
return severityCount;
|
|
75
67
|
}
|
|
76
|
-
|
|
68
|
+
//# sourceMappingURL=reportUtilsSca.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reportUtilsSca.js","sourceRoot":"","sources":["../../../../src/scaAnalysis/common/utils/reportUtilsSca.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
return new xml2js.Parser({
|
|
1
|
+
import { readFileSync } from 'fs';
|
|
2
|
+
import { Parser } from 'xml2js';
|
|
3
|
+
import i18n from 'i18n';
|
|
4
|
+
export const readAndParseProjectFile = projectFilePath => {
|
|
5
|
+
const projectFile = readFileSync(projectFilePath);
|
|
6
|
+
return new Parser({
|
|
8
7
|
explicitArray: false,
|
|
9
8
|
mergeAttrs: true
|
|
10
9
|
}).parseString(projectFile);
|
|
11
10
|
};
|
|
12
|
-
const readAndParseLockFile = lockFilePath => {
|
|
13
|
-
const lockFile = JSON.parse(
|
|
14
|
-
let count = 0;
|
|
11
|
+
export const readAndParseLockFile = lockFilePath => {
|
|
12
|
+
const lockFile = JSON.parse(readFileSync(lockFilePath).toString());
|
|
13
|
+
let count = 0; // Used to test if some nodes are deleted
|
|
15
14
|
for (const dependenciesNode in lockFile.dependencies) {
|
|
16
15
|
for (const innerNode in lockFile.dependencies[dependenciesNode]) {
|
|
17
16
|
const nodeValidation = JSON.stringify(lockFile.dependencies[dependenciesNode][innerNode]);
|
|
@@ -31,7 +30,7 @@ const readAndParseLockFile = lockFilePath => {
|
|
|
31
30
|
}
|
|
32
31
|
return lockFile;
|
|
33
32
|
};
|
|
34
|
-
const checkForCorrectFiles = languageFiles => {
|
|
33
|
+
export const checkForCorrectFiles = languageFiles => {
|
|
35
34
|
if (!languageFiles.includes('packages.lock.json')) {
|
|
36
35
|
throw new Error(i18n.__('languageAnalysisHasNoLockFile', '.NET'));
|
|
37
36
|
}
|
|
@@ -39,7 +38,7 @@ const checkForCorrectFiles = languageFiles => {
|
|
|
39
38
|
throw new Error(i18n.__('languageAnalysisProjectFileError', '.NET'));
|
|
40
39
|
}
|
|
41
40
|
};
|
|
42
|
-
const getDotNetDeps = (filePath, languageFiles) => {
|
|
41
|
+
export const getDotNetDeps = (filePath, languageFiles) => {
|
|
43
42
|
checkForCorrectFiles(languageFiles);
|
|
44
43
|
const projectFileName = languageFiles.find(fileName => fileName.includes('.csproj'));
|
|
45
44
|
const lockFileName = languageFiles.find(fileName => fileName.includes('.json'));
|
|
@@ -47,9 +46,4 @@ const getDotNetDeps = (filePath, languageFiles) => {
|
|
|
47
46
|
const lockFile = readAndParseLockFile(filePath + `/${lockFileName}`);
|
|
48
47
|
return { projectFile, lockFile };
|
|
49
48
|
};
|
|
50
|
-
|
|
51
|
-
getDotNetDeps,
|
|
52
|
-
readAndParseProjectFile,
|
|
53
|
-
readAndParseLockFile,
|
|
54
|
-
checkForCorrectFiles
|
|
55
|
-
};
|
|
49
|
+
//# sourceMappingURL=analysis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/dotnet/analysis.js"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const
|
|
4
|
-
const dotNetAnalysis = (config, languageFiles) => {
|
|
1
|
+
import { getDotNetDeps } from './analysis.js';
|
|
2
|
+
import { createDotNetTSMessage } from '../common/formatMessage.js';
|
|
3
|
+
export const dotNetAnalysis = (config, languageFiles) => {
|
|
5
4
|
const dotNetDeps = getDotNetDeps(config.file, languageFiles.DOTNET);
|
|
6
5
|
return createDotNetTSMessage(dotNetDeps);
|
|
7
6
|
};
|
|
8
|
-
|
|
9
|
-
dotNetAnalysis
|
|
10
|
-
};
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scaAnalysis/dotnet/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE;IACtD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IACnE,OAAO,qBAAqB,CAAC,UAAU,CAAC,CAAA;AAC1C,CAAC,CAAA"}
|