Skip to content

Commit

Permalink
Do not supply a skip message when result is not skipped, fix bug wher…
Browse files Browse the repository at this point in the history
…e a skip message was not provided when a test was skipped, fix some of the verbiage and formatting.

Signed-off-by: Amndeep Singh Mann <[email protected]>
  • Loading branch information
Amndeep7 committed Jul 28, 2024
1 parent 9212f36 commit cde9ee2
Show file tree
Hide file tree
Showing 7 changed files with 21 additions and 699 deletions.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -34,35 +34,30 @@
"results": [
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\internal\\file\\tar.go\nLine: 83\nColumn: 14",
"message": "HIGH confidence of rule violation at:\n82: \t\tcase tar.TypeReg:\n83: \t\t\tf, err := os.OpenFile(target, os.O_CREATE|os.O_RDWR, os.FileMode(header.Mode))\n84: \t\t\tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\grype\\presenter\\template\\presenter.go\nLine: 52\nColumn: 27",
"message": "HIGH confidence of rule violation at:\n51: \n52: \ttemplateContents, err := os.ReadFile(expandedPathToTemplateFile)\n53: \tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\grype\\pkg\\syft_sbom_provider.go\nLine: 96\nColumn: 12",
"message": "HIGH confidence of rule violation at:\n95: func isPossibleSBOM(userInput string) bool {\n96: \tf, err := os.Open(userInput)\n97: \tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\grype\\pkg\\syft_sbom_provider.go\nLine: 87\nColumn: 15",
"message": "HIGH confidence of rule violation at:\n86: \n87: \tsbom, err := os.Open(expandedPath)\n88: \tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\cmd\\report_writer.go\nLine: 19\nColumn: 22",
"message": "HIGH confidence of rule violation at:\n18: \tdefault:\n19: \t\treportFile, err := os.OpenFile(path, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)\n20: \n",
"start_time": ""
Expand All @@ -89,7 +84,6 @@
"results": [
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G302 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\cmd\\report_writer.go\nLine: 19\nColumn: 22",
"message": "HIGH confidence of rule violation at:\n18: \tdefault:\n19: \t\treportFile, err := os.OpenFile(path, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)\n20: \n",
"start_time": ""
Expand All @@ -116,15 +110,14 @@
"results": [
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G301 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\internal\\file\\tar.go\nLine: 77\nColumn: 15",
"message": "HIGH confidence of rule violation at:\n76: \t\t\tif _, err := os.Stat(target); err != nil {\n77: \t\t\t\tif err := os.MkdirAll(target, 0755); err != nil {\n78: \t\t\t\t\treturn fmt.Errorf(\"failed to mkdir (%s): %w\", target, err)\n",
"start_time": ""
}
]
}
],
"sha256": "a6012052657380bab7a50dcb2e5452c19b0d02bd29212c07cbf57d9cadb8204d"
"sha256": "3968d46e62c53b3dc1977f9598d9ad93192f9ae13237d0c493b945e7bd27c28d"
}
],
"passthrough": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,35 +34,30 @@
"results": [
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\internal\\file\\tar.go\nLine: 83\nColumn: 14",
"message": "HIGH confidence of rule violation at:\n82: \t\tcase tar.TypeReg:\n83: \t\t\tf, err := os.OpenFile(target, os.O_CREATE|os.O_RDWR, os.FileMode(header.Mode))\n84: \t\t\tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\grype\\presenter\\template\\presenter.go\nLine: 52\nColumn: 27",
"message": "HIGH confidence of rule violation at:\n51: \n52: \ttemplateContents, err := os.ReadFile(expandedPathToTemplateFile)\n53: \tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\grype\\pkg\\syft_sbom_provider.go\nLine: 96\nColumn: 12",
"message": "HIGH confidence of rule violation at:\n95: func isPossibleSBOM(userInput string) bool {\n96: \tf, err := os.Open(userInput)\n97: \tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\grype\\pkg\\syft_sbom_provider.go\nLine: 87\nColumn: 15",
"message": "HIGH confidence of rule violation at:\n86: \n87: \tsbom, err := os.Open(expandedPath)\n88: \tif err != nil {\n",
"start_time": ""
},
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G304 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\cmd\\report_writer.go\nLine: 19\nColumn: 22",
"message": "HIGH confidence of rule violation at:\n18: \tdefault:\n19: \t\treportFile, err := os.OpenFile(path, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)\n20: \n",
"start_time": ""
Expand All @@ -89,7 +84,6 @@
"results": [
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G302 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\cmd\\report_writer.go\nLine: 19\nColumn: 22",
"message": "HIGH confidence of rule violation at:\n18: \tdefault:\n19: \t\treportFile, err := os.OpenFile(path, os.O_RDWR|os.O_CREATE|os.O_TRUNC, 0644)\n20: \n",
"start_time": ""
Expand All @@ -116,15 +110,14 @@
"results": [
{
"status": "failed",
"skip_message": "N/A",
"code_desc": "Rule G301 violation detected at:\nFile: C:\\Users\\AGILLUM\\OneDrive - The MITRE Corporation\\Documents\\Code\\grype-0.34.4\\internal\\file\\tar.go\nLine: 77\nColumn: 15",
"message": "HIGH confidence of rule violation at:\n76: \t\t\tif _, err := os.Stat(target); err != nil {\n77: \t\t\t\tif err := os.MkdirAll(target, 0755); err != nil {\n78: \t\t\t\t\treturn fmt.Errorf(\"failed to mkdir (%s): %w\", target, err)\n",
"start_time": ""
}
]
}
],
"sha256": "a6012052657380bab7a50dcb2e5452c19b0d02bd29212c07cbf57d9cadb8204d"
"sha256": "3968d46e62c53b3dc1977f9598d9ad93192f9ae13237d0c493b945e7bd27c28d"
}
],
"passthrough": {
Expand Down
10 changes: 5 additions & 5 deletions libs/hdf-converters/src/gosec-mapper.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,25 +31,25 @@ function formatStatus(input: Record<string, unknown>): string {
}

// If a gosec rule violation is suppressed, forward the given justification
function formatSkipMessage(input: Record<string, unknown>): string {
function formatSkipMessage(input: Record<string, unknown>): string | undefined {
const suppressions = _.get(input, 'suppressions');

// If test is not skipped
if (`${suppressions}` === 'null') {
return 'N/A';
return undefined;
}

// If test is skipped and there are no justifications, report that none are given
if (!Array.isArray(suppressions)) {
return '';
return 'No justification provided';
}
// otherwise, supply the justifications
return suppressions
.map(
(suppression) =>
`${suppression.justification ? suppression.justification : 'No reason provided'} (${suppression.kind})`
`${suppression.justification ? suppression.justification : 'No justification provided'} (${suppression.kind})`
)
.join(' ');
.join('\n');
}

// Report gosec rule violation and violation location
Expand Down

0 comments on commit cde9ee2

Please sign in to comment.