Prisma Cloud Application Security: Checkov가 csproj 파일에서 .NET framework 8.0으로 Azure Repos를 스캔할 때 빈 결과를 제공함
263
Created On 08/16/24 16:00 PM - Last Modified 04/22/26 19:39 PM
Symptom
Azure 디렉터리를 스캔하고 있는데 리포지토리의 패키지 정보를 자세히 설명하는 여러 개의 csproj 파일이 있다고 가정해 보겠습니다.
이러한 파일의 대상 프레임워크가 "net 6.0"인 경우 Checkov는 저장소를 잘 스캔하여 패키지 정보를 표시합니다. 나열된 프레임워크가 "net 8.0"인 경우 Checkov는 빈 결과를 생성합니다.
.csproj 파일의 대상 프레임워크 사양:
Environment
- 프리즈마 클라우드
- 마이크로소프트 애저
- 체코프
Cause
In the .csproj files, the target framework specified is "net 8.0". In other file, it's "net 6.0".
When running a Checkov scan on both files, the file with framework "net 6.0" works fine. However, "net 8.0" produces empty scan results.
.NET 8.0 사용
checkov -d ./src --support --hard-fail-on HIGH --framework sca_package --bc-api-key **************::************** --prisma-api-url https://api.prismacloud.io --output spdx --output json --output-file-path "SCA/" --repo-id "****/****" --branch "****"
{
"passed": 0,
"failed": 0,
"skipped": 0,
"parsing_errors": 0,
"resource_count": 0,
"checkov_version": "3.2.219"
}
--- OUTPUT DELIMITER ---
## Document Information
SPDXVersion: SPDX-2.3
DataLicense: CC0-1.0
SPDXID: SPDXRef-DOCUMENT
DocumentName: checkov-sbom
DocumentNamespace: https://spdx.org/spdxdocs/checkov-sbom-3.2.219-454a024b-d83b-4152-bf58-8e26789deb93
## Creation Information
Creator: Tool: checkov
Creator: Organization: bridgecrew (meet@bridgecrew.io)
Created: 2024-08-09T16:47:05Z
.NET 6.0 사용
checkov -d ./src --support --hard-fail-on HIGH --framework sca_package --bc-api-key **************::************** --prisma-api-url https://api.prismacloud.io --output spdx --output json --output-file-path "SCA/" --repo-id "****/****" --branch "****"
## Package Information PackageName: ag.framework.validators SPDXID: SPDXRef-ag.framework.validators PackageVersion: 1.2.0 PackageFileName: /Ag.Pmkt.Api.Test/Ag.Pmkt.Test.csproj PackageDownloadLocation: NONE FilesAnalyzed: true ## Package Information PackageName: coverlet.collector SPDXID: SPDXRef-coverlet.collector PackageVersion: 3.1.2 PackageFileName: /Ag.Pmkt.Api.Test/Ag.Pmkt.Test.csproj PackageDownloadLocation: NONE FilesAnalyzed: true ## Package Information PackageName: fluentvalidation.validators.unittestextension SPDXID: SPDXRef-fluentvalidation.validators.unittestextension PackageVersion: 1.11.0.2 PackageFileName: /Ag.Pmkt.Api.Test/Ag.Pmkt.Test.csproj PackageDownloadLocation: NONE FilesAnalyzed: true ...
With .NET 6.0, you are able to see package information from the csproj files. You can't with .NET 8.0.
Resolution
현재로서는 .NET 7.0 이하만 지원합니다. 대상 프레임워크가 이를 충족하면 Checkov가 파일을 스캔할 수 있습니다.
현재 더 높은 .NET 버전과의 호환성을 위해 노력하고 있습니다.