VulnCheck Exploit & Vulnerability Intelligence는 오픈 소스 소프트웨어 라이브러리 패키지와 운영 체제 패키지 모두에서 광범위한 보안 관련 문제 탐지를 지원합니다.
VulnCheck 연구팀은 패키지 관리 생태계에서 새로운 위험 행동을 지속적으로 추적합니다. VulnCheck Exploit & Vulnerability Intelligence는 다음과 같은 탐지 유형을 Package URL로 조회할 수 있도록 지원합니다:
패키지가 악성 콘텐츠를 포함하는 것으로 알려진 경우 malicious 속성이 설정됩니다. 가능한 경우 VulnCheck는 해당 패키지를 악성으로 판단한 출처 참조를 함께 제공합니다.
{
"_benchmark": 0.047808,
"_meta": {
"purl_struct": {
"type": "npm",
"namespace": "",
"name": "aliyundrive",
"version": "6.0.4",
"qualifiers": null,
"subpath": ""
},
"timestamp": "2023-12-01T20:11:54.921991593Z",
"total_documents": 2
},
"data": {
"cves": [],
"research_attributes": {
"is_malicious": true,
"malicious_source": "https://blog.phylum.io/dozens-of-npm-packages-caught-attempting-to-deploy-reverse-shell/"
}
}
}
malicious 태그는 현재 gem, npm, nuget, pypi에서 지원됩니다.
패키지의 소스 저장소가 더 이상 존재하지 않는 경우 abandoned 속성이 설정됩니다. 이는 해당 패키지가 더 이상 업데이트되지 않음을 의미합니다.
{
"_benchmark": 0.050773,
"_meta": {
"purl_struct": {
"type": "golang",
"namespace": "github.com/paysuper",
"name": "paysuper-reporter",
"version": "v1.4.2",
"qualifiers": null,
"subpath": ""
},
"timestamp": "2023-12-01T20:08:09.215541236Z",
"total_documents": 1
},
"data": {
"cves": [],
"research_attributes": {
"abandoned": true
}
}
}
abandoned 속성은 현재 golang에서 지원됩니다.
저장소가 리포재킹에 취약한 경우 repo_hijackable 속성이 설정됩니다. 이는 공격자가 업데이트 과정에서 악성 코드를 주입할 수 있어 특히 위험할 수 있습니다.
{
"_benchmark": 0.040295,
"_meta": {
"purl_struct": {
"type": "golang",
"namespace": "github.com/zerobounty",
"name": "tile38-client",
"version": "v0.10.2",
"qualifiers": null,
"subpath": ""
},
"timestamp": "2023-12-01T20:09:49.124292153Z",
"total_documents": 1
},
"data": {
"cves": [],
"research_attributes": {
"repo_hijackable": true
}
}
}
repo_hijackable 태그는 현재 golang에서 지원됩니다.
연구팀이 인기 있는 패키지 이름의 오타 변형을 관찰할 경우 squatted_package 속성이 설정됩니다. 이러한 패키지는 종종 악성이거나 이후 악성 콘텐츠로 업데이트될 수 있습니다. squatted_package 태그는 해당 패키지가 차지하려는 원래 저장소를 나타냅니다.
{
"_benchmark": 0.03596,
"_meta": {
"purl_struct": {
"type": "gem",
"namespace": "",
"name": "activmodel",
"version": "5.2.1",
"qualifiers": null,
"subpath": ""
},
"timestamp": "2023-12-01T20:36:40.01706222Z",
"total_documents": 1
},
"data": {
"cves": [],
"research_attributes": {
"squatted_package": "activemodel"
}
}
}
typosquatting 속성은 현재 gem, golang, npm, nuget, pypi에서 지원됩니다.