From a237ef2d0fc6f754b143ca017476f038c50c8f76 Mon Sep 17 00:00:00 2001 From: Edunova8 <112419832+Edunova8@users.noreply.github.com> Date: Thu, 2 Mar 2023 15:09:20 -0300 Subject: [PATCH 01/23] Create main.yml --- .github/workflows/main.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..30009a3 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,21 @@ +name: Checkmarx One Scan +on: + push: + branches: + - master +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Checkmarx One CLI Action + uses: checkmarx/ast-github-action@main #Github Action version + with: + project_name: ${{ github.repository }} + cx_tenant: beta_nova8 + base_uri: https://eu.ast.checkmarx.net/ + cx_client_id: ${{ secrets.AST }} + cx_client_secret: ${{ secrets.ASTSECRET }} + additional_params: --apikey ${{ secrets.API_KEY }} + ## additional_params: --threshold sast-high=1 From 9c5781533bec824b171c417cae121f19f522f910 Mon Sep 17 00:00:00 2001 From: Edunova8 <112419832+Edunova8@users.noreply.github.com> Date: Thu, 2 Mar 2023 15:22:03 -0300 Subject: [PATCH 02/23] Update main.yml --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 30009a3..f68dda7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,5 +17,5 @@ jobs: base_uri: https://eu.ast.checkmarx.net/ cx_client_id: ${{ secrets.AST }} cx_client_secret: ${{ secrets.ASTSECRET }} - additional_params: --apikey ${{ secrets.API_KEY }} + ## additional_params: --apikey ${{ secrets.API_KEY }} ## additional_params: --threshold sast-high=1 From 277fa0dc2dc77633309c3ee5ae802075bee1600d Mon Sep 17 00:00:00 2001 From: Fernando Barboza Date: Tue, 11 Apr 2023 18:28:08 -0300 Subject: [PATCH 03/23] HttpCookie-Remediation --- Controllers/AuthorizationsController.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Controllers/AuthorizationsController.cs b/Controllers/AuthorizationsController.cs index 566a4e9..2716c08 100644 --- a/Controllers/AuthorizationsController.cs +++ b/Controllers/AuthorizationsController.cs @@ -40,7 +40,8 @@ public IActionResult Post([FromBody] AuthorizationRequest authorizationRequest) [HttpGet("GetTokenSSO")] public IActionResult GetTokenSSO() { - var ssoCookieData = HttpContext.Request.Cookies["sso_ctx"]; + //var ssoCookieData = HttpContext.Request.Cookies["sso_ctx"]; + HttpCookie ssoCookieData = new HttpCookie(HttpContext.Request.Cookies["sso_ctx"]); if(String.IsNullOrEmpty(ssoCookieData)) { return Unauthorized(); From 36e2f82415c49360f8ca71974db2a3fd0903c6ec Mon Sep 17 00:00:00 2001 From: Fernando Barboza Date: Tue, 11 Apr 2023 18:42:48 -0300 Subject: [PATCH 04/23] Missing Object Level Authorization-Remediation --- Controllers/UsersController.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Controllers/UsersController.cs b/Controllers/UsersController.cs index d751bcf..230cfe8 100644 --- a/Controllers/UsersController.cs +++ b/Controllers/UsersController.cs @@ -36,7 +36,8 @@ public IActionResult Put(int id, [FromBody] Models.UserUpdateRequest user) return BadRequest(ModelState); } - var existingUser = _context.Users.SingleOrDefault(m => m.ID == id); + //var existingUser = _context.Users.SingleOrDefault(m => m.ID == id); + var existingUser = _context.Users.GetById(id); if(existingUser == null) { return NotFound(); } From 79126326b3786306b08ef51f1f4076558dfada1e Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Thu, 13 Jul 2023 15:13:02 -0300 Subject: [PATCH 05/23] Update 20230713 --- .github/workflows/main.yml | 2 +- .../1559651a-00f7-452c-8125-6a411b8d749e.vsidx | Bin 0 -> 103235 bytes .../FileContentIndex/read.lock | 0 .vs/Damm-Vulnerable-CSharp-API/v17/.wsuo | Bin 0 -> 31232 bytes .vs/ProjectSettings.json | 3 +++ .vs/VSWorkspaceState.json | 8 ++++++++ 6 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 .vs/Damm-Vulnerable-CSharp-API/FileContentIndex/1559651a-00f7-452c-8125-6a411b8d749e.vsidx create mode 100644 .vs/Damm-Vulnerable-CSharp-API/FileContentIndex/read.lock create mode 100644 .vs/Damm-Vulnerable-CSharp-API/v17/.wsuo create mode 100644 .vs/ProjectSettings.json create mode 100644 .vs/VSWorkspaceState.json diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f68dda7..28e0f53 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,4 +18,4 @@ jobs: cx_client_id: ${{ secrets.AST }} cx_client_secret: ${{ secrets.ASTSECRET }} ## additional_params: --apikey ${{ secrets.API_KEY }} - ## additional_params: --threshold sast-high=1 + ## additional_params: --threshold sast-high=1 \ No newline at end of file diff --git a/.vs/Damm-Vulnerable-CSharp-API/FileContentIndex/1559651a-00f7-452c-8125-6a411b8d749e.vsidx b/.vs/Damm-Vulnerable-CSharp-API/FileContentIndex/1559651a-00f7-452c-8125-6a411b8d749e.vsidx new file mode 100644 index 0000000000000000000000000000000000000000..b07a0a6d847dfcce07ef088f7b36ae51339e5dd1 GIT binary patch literal 103235 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 literal 0 HcmV?d00001 diff --git a/.vs/Damm-Vulnerable-CSharp-API/FileContentIndex/read.lock b/.vs/Damm-Vulnerable-CSharp-API/FileContentIndex/read.lock new file mode 100644 index 0000000..e69de29 diff --git a/.vs/Damm-Vulnerable-CSharp-API/v17/.wsuo b/.vs/Damm-Vulnerable-CSharp-API/v17/.wsuo new file mode 100644 index 0000000000000000000000000000000000000000..2a5a4354723cb8797b693550ab7c220f327f418e GIT binary patch literal 31232 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 literal 0 HcmV?d00001 diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json new file mode 100644 index 0000000..f8b4888 --- /dev/null +++ b/.vs/ProjectSettings.json @@ -0,0 +1,3 @@ +{ + "CurrentProjectSetting": null +} \ No newline at end of file diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json new file mode 100644 index 0000000..972924d --- /dev/null +++ b/.vs/VSWorkspaceState.json @@ -0,0 +1,8 @@ +{ + "ExpandedNodes": [ + "", + "\\Controllers" + ], + "SelectedNode": "\\Controllers\\UsersController.cs", + "PreviewInSolutionExplorer": false +} \ No newline at end of file From b8e057265ab8e59a260713a4ed37ee9ee42f14aa Mon Sep 17 00:00:00 2001 From: Edunova8 <112419832+Edunova8@users.noreply.github.com> Date: Mon, 17 Jul 2023 15:13:34 -0300 Subject: [PATCH 06/23] Update main.yml --- .github/workflows/main.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 28e0f53..b27e8b8 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,5 +17,4 @@ jobs: base_uri: https://eu.ast.checkmarx.net/ cx_client_id: ${{ secrets.AST }} cx_client_secret: ${{ secrets.ASTSECRET }} - ## additional_params: --apikey ${{ secrets.API_KEY }} - ## additional_params: --threshold sast-high=1 \ No newline at end of file + additional_params: --threshold sast-high=1 From 6e14e7364e7ef9a209d4fede4e0f13e58dc2a4d4 Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Wed, 20 Sep 2023 16:09:07 -0300 Subject: [PATCH 07/23] Settings update --- .vscode/settings.json | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .vscode/settings.json diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..6c2ff60 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,5 @@ +{ + "githubPullRequests.ignoredPullRequestBranches": [ + "master" + ] +} \ No newline at end of file From aa1510a28f9cc1ecdfb93deb0e77dd18dfa1aaae Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Wed, 27 Sep 2023 14:39:39 -0300 Subject: [PATCH 08/23] Disparo scan via IDE --- Controllers/ProductsController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Controllers/ProductsController.cs b/Controllers/ProductsController.cs index da4da5c..1984ee6 100644 --- a/Controllers/ProductsController.cs +++ b/Controllers/ProductsController.cs @@ -62,7 +62,7 @@ public void Export() } [HttpGet("search")] - public IActionResult Search(string keyword) + public IActionResult Search(string keywords) { if (String.IsNullOrEmpty(keyword)) { return Ok("Cannot search without a keyword"); From 9dbda4c68c27f9e065a5eaf940c9e26ecca30621 Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Mon, 2 Oct 2023 15:12:24 -0300 Subject: [PATCH 09/23] =?UTF-8?q?Altera=C3=A7=C3=A3o=20SQL=20Injection?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Controllers/ProductsController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Controllers/ProductsController.cs b/Controllers/ProductsController.cs index 1984ee6..da4da5c 100644 --- a/Controllers/ProductsController.cs +++ b/Controllers/ProductsController.cs @@ -62,7 +62,7 @@ public void Export() } [HttpGet("search")] - public IActionResult Search(string keywords) + public IActionResult Search(string keyword) { if (String.IsNullOrEmpty(keyword)) { return Ok("Cannot search without a keyword"); From b352d5cf709cc283432cb2dfefd32fe019dbeb7b Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Mon, 2 Oct 2023 17:50:21 -0300 Subject: [PATCH 10/23] =?UTF-8?q?Altera=C3=A7=C3=A3o=20SQL=20Injection?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Controllers/ProductsController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Controllers/ProductsController.cs b/Controllers/ProductsController.cs index da4da5c..491b1aa 100644 --- a/Controllers/ProductsController.cs +++ b/Controllers/ProductsController.cs @@ -62,7 +62,7 @@ public void Export() } [HttpGet("search")] - public IActionResult Search(string keyword) + public IActionResult Search(string keywordtres) { if (String.IsNullOrEmpty(keyword)) { return Ok("Cannot search without a keyword"); From 7eb40d675f1ea86ae1262c561efc5b3a49196d47 Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Wed, 4 Oct 2023 11:29:39 -0300 Subject: [PATCH 11/23] =?UTF-8?q?Altera=C3=A7=C3=A3o=20SQL=20Injection=202?= =?UTF-8?q?0231004?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Controllers/ProductsController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Controllers/ProductsController.cs b/Controllers/ProductsController.cs index 491b1aa..da4da5c 100644 --- a/Controllers/ProductsController.cs +++ b/Controllers/ProductsController.cs @@ -62,7 +62,7 @@ public void Export() } [HttpGet("search")] - public IActionResult Search(string keywordtres) + public IActionResult Search(string keyword) { if (String.IsNullOrEmpty(keyword)) { return Ok("Cannot search without a keyword"); From eddf8cdba2c15f50851bd8c60de8db4c9ed0d745 Mon Sep 17 00:00:00 2001 From: Fernando Barboza <124089373+fernando-barboza@users.noreply.github.com> Date: Wed, 25 Oct 2023 15:58:38 -0300 Subject: [PATCH 12/23] Update main.yml --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index b27e8b8..ca11fd0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,4 +17,4 @@ jobs: base_uri: https://eu.ast.checkmarx.net/ cx_client_id: ${{ secrets.AST }} cx_client_secret: ${{ secrets.ASTSECRET }} - additional_params: --threshold sast-high=1 + #additional_params: --threshold sast-high=1 From 0c47963a38fc729189872b7854eec278f7e3cf3c Mon Sep 17 00:00:00 2001 From: Fernando Barboza <124089373+fernando-barboza@users.noreply.github.com> Date: Wed, 25 Oct 2023 16:02:49 -0300 Subject: [PATCH 13/23] Update main.yml --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ca11fd0..998f4a7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -7,8 +7,8 @@ jobs: build: runs-on: ubuntu-latest steps: - - name: Checkout - uses: actions/checkout@v2 + #- name: Checkout + # uses: actions/checkout@v2 - name: Checkmarx One CLI Action uses: checkmarx/ast-github-action@main #Github Action version with: From cfdfc586f0850e16ca35f457fdcc18d4ff96e9eb Mon Sep 17 00:00:00 2001 From: Fernando Barboza <124089373+fernando-barboza@users.noreply.github.com> Date: Wed, 25 Oct 2023 17:56:08 -0300 Subject: [PATCH 14/23] Update main.yml --- .github/workflows/main.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 998f4a7..ca11fd0 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -7,8 +7,8 @@ jobs: build: runs-on: ubuntu-latest steps: - #- name: Checkout - # uses: actions/checkout@v2 + - name: Checkout + uses: actions/checkout@v2 - name: Checkmarx One CLI Action uses: checkmarx/ast-github-action@main #Github Action version with: From 0fff26ead9b63869af449e1ee87412b3573a4b66 Mon Sep 17 00:00:00 2001 From: Fernando Barboza <124089373+fernando-barboza@users.noreply.github.com> Date: Tue, 31 Oct 2023 15:01:55 -0300 Subject: [PATCH 15/23] Update main.yml --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index ca11fd0..43e88da 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,4 +17,4 @@ jobs: base_uri: https://eu.ast.checkmarx.net/ cx_client_id: ${{ secrets.AST }} cx_client_secret: ${{ secrets.ASTSECRET }} - #additional_params: --threshold sast-high=1 + additional_params: --threshold "sast-high=1; sca-high=1" From f9a162b54c0af534d91841a07f9725547613fef9 Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Thu, 9 Nov 2023 12:32:13 -0300 Subject: [PATCH 16/23] =?UTF-8?q?Commit=20demostra=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Controllers/ProductsController.cs | 2 +- Damm-Vulnerable-CSharp-API.sln | 25 +++++++++++++++++++++++++ dvcsharp-core-api.csproj | 10 +++------- 3 files changed, 29 insertions(+), 8 deletions(-) create mode 100644 Damm-Vulnerable-CSharp-API.sln diff --git a/Controllers/ProductsController.cs b/Controllers/ProductsController.cs index da4da5c..08e45c6 100644 --- a/Controllers/ProductsController.cs +++ b/Controllers/ProductsController.cs @@ -62,7 +62,7 @@ public void Export() } [HttpGet("search")] - public IActionResult Search(string keyword) + public IActionResult Search(string keywordjdioasjgoirjgoij) { if (String.IsNullOrEmpty(keyword)) { return Ok("Cannot search without a keyword"); diff --git a/Damm-Vulnerable-CSharp-API.sln b/Damm-Vulnerable-CSharp-API.sln new file mode 100644 index 0000000..4a9789c --- /dev/null +++ b/Damm-Vulnerable-CSharp-API.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.5.002.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "dvcsharp-core-api", "dvcsharp-core-api.csproj", "{86757448-E853-40A0-8BBD-13E8B77ACB38}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {86757448-E853-40A0-8BBD-13E8B77ACB38}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {86757448-E853-40A0-8BBD-13E8B77ACB38}.Debug|Any CPU.Build.0 = Debug|Any CPU + {86757448-E853-40A0-8BBD-13E8B77ACB38}.Release|Any CPU.ActiveCfg = Release|Any CPU + {86757448-E853-40A0-8BBD-13E8B77ACB38}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {8305D38D-03A2-4466-B287-430247E98B83} + EndGlobalSection +EndGlobal diff --git a/dvcsharp-core-api.csproj b/dvcsharp-core-api.csproj index fd4be0f..55d73c6 100644 --- a/dvcsharp-core-api.csproj +++ b/dvcsharp-core-api.csproj @@ -1,14 +1,12 @@ - netcoreapp2.0 - - + @@ -16,15 +14,13 @@ + - - - - + \ No newline at end of file From 4c95f37d0a1c966597d7ddb1322641acd7e94826 Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Thu, 9 Nov 2023 12:38:35 -0300 Subject: [PATCH 17/23] =?UTF-8?q?Commit=20demostra=C3=A7=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Controllers/ProductsController.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Controllers/ProductsController.cs b/Controllers/ProductsController.cs index 08e45c6..da4da5c 100644 --- a/Controllers/ProductsController.cs +++ b/Controllers/ProductsController.cs @@ -62,7 +62,7 @@ public void Export() } [HttpGet("search")] - public IActionResult Search(string keywordjdioasjgoirjgoij) + public IActionResult Search(string keyword) { if (String.IsNullOrEmpty(keyword)) { return Ok("Cannot search without a keyword"); From b3496357e51a0e0cb536b183202b82c7f7ab7249 Mon Sep 17 00:00:00 2001 From: "fernando.barboza" Date: Tue, 21 Nov 2023 15:36:46 -0300 Subject: [PATCH 18/23] =?UTF-8?q?Remedia=C3=A7=C3=A3o=20guiada=20por=20I.A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-compose.yml b/docker-compose.yml index 6f5bcf5..1d34bb2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,4 +7,4 @@ services: - .:/app ports: - "5000:5000" - + host: "0.0.0.0" \ No newline at end of file From 144c6dcb209171ec76c8f2f3244f33bfaf8275b0 Mon Sep 17 00:00:00 2001 From: Edunova8 <112419832+Edunova8@users.noreply.github.com> Date: Tue, 19 Dec 2023 11:52:54 -0300 Subject: [PATCH 19/23] Update main.yml --- .github/workflows/main.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 43e88da..1e1b8a7 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -17,4 +17,5 @@ jobs: base_uri: https://eu.ast.checkmarx.net/ cx_client_id: ${{ secrets.AST }} cx_client_secret: ${{ secrets.ASTSECRET }} - additional_params: --threshold "sast-high=1; sca-high=1" + ## additional_params: --apikey ${{ secrets.API_KEY }} + additional_params: --threshold sast-high=1 From 5e5afd390284196a4327b0a1ec9063e92e717fc5 Mon Sep 17 00:00:00 2001 From: Edunova8 <112419832+Edunova8@users.noreply.github.com> Date: Fri, 26 Jan 2024 11:34:04 -0300 Subject: [PATCH 20/23] Update main.yml --- .github/workflows/main.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1e1b8a7..3925a68 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,9 +13,9 @@ jobs: uses: checkmarx/ast-github-action@main #Github Action version with: project_name: ${{ github.repository }} - cx_tenant: beta_nova8 - base_uri: https://eu.ast.checkmarx.net/ - cx_client_id: ${{ secrets.AST }} - cx_client_secret: ${{ secrets.ASTSECRET }} + cx_tenant: bradesco-poc + base_uri: https://deu.ast.checkmarx.net/ + cx_client_id: ${{ secrets.CANARY_OATH }} + cx_client_secret: ${{ secrets.CANARY_SECRET }} ## additional_params: --apikey ${{ secrets.API_KEY }} - additional_params: --threshold sast-high=1 + ##additional_params: --threshold sast-high=1 From 8159be026565a88559819312349453f7a07ff87f Mon Sep 17 00:00:00 2001 From: Prevelate8 <159483729+Prevelate8@users.noreply.github.com> Date: Sun, 16 Jun 2024 18:14:33 -0300 Subject: [PATCH 21/23] Set up CI with Azure Pipelines [skip ci] --- azure-pipelines.yml | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 azure-pipelines.yml diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 0000000..18cf4d1 --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,25 @@ +# Starter pipeline +- task: Checkmarx AST@2 + inputs: + CheckmarxService: 'AST-admin' + projectName: '$(Build.Repository.Name)' + branchName: '$(Build.SourceBranchName)' + tenantName: 'beta_nova8' +# Start with a minimal pipeline that you can customize to build and deploy your code. +# Add steps that build, run tests, deploy, and more: +# https://aka.ms/yaml + +trigger: +- master + +pool: + vmImage: ubuntu-latest + +steps: +- script: echo Hello, world! + displayName: 'Run a one-line script' + +- script: | + echo Add other tasks to build, test, and deploy your project. + echo See https://aka.ms/yaml + displayName: 'Run a multi-line script' From 44418f68cfd772f462c0618d0ba472fabd86e02b Mon Sep 17 00:00:00 2001 From: Prevelate8 <159483729+Prevelate8@users.noreply.github.com> Date: Sun, 16 Jun 2024 18:34:49 -0300 Subject: [PATCH 22/23] Update azure-pipelines.yml for Azure Pipelines --- azure-pipelines.yml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 18cf4d1..c77037c 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -1,16 +1,12 @@ # Starter pipeline -- task: Checkmarx AST@2 - inputs: - CheckmarxService: 'AST-admin' - projectName: '$(Build.Repository.Name)' - branchName: '$(Build.SourceBranchName)' - tenantName: 'beta_nova8' + # Start with a minimal pipeline that you can customize to build and deploy your code. # Add steps that build, run tests, deploy, and more: # https://aka.ms/yaml trigger: - master +- main pool: vmImage: ubuntu-latest @@ -23,3 +19,10 @@ steps: echo Add other tasks to build, test, and deploy your project. echo See https://aka.ms/yaml displayName: 'Run a multi-line script' + +- task: Checkmarx AST@2 + inputs: + CheckmarxService: 'AST-admin' + projectName: '$(Build.Repository.Name)' + branchName: '$(Build.SourceBranchName)' + tenantName: 'beta_nova8' From 5c4d3d08a723a579a4f6834c3d24dff47d74aed4 Mon Sep 17 00:00:00 2001 From: Edunova8 <112419832+Edunova8@users.noreply.github.com> Date: Mon, 15 Jul 2024 10:52:47 -0300 Subject: [PATCH 23/23] Update main.yml --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 3925a68..be6486d 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,4 +18,4 @@ jobs: cx_client_id: ${{ secrets.CANARY_OATH }} cx_client_secret: ${{ secrets.CANARY_SECRET }} ## additional_params: --apikey ${{ secrets.API_KEY }} - ##additional_params: --threshold sast-high=1 + additional_params: --async