mirror of
https://github.com/aquasecurity/trivy.git
synced 2025-12-07 21:30:46 -08:00
Compare commits
143 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
cdabe7fc9e | ||
|
|
b0fe439309 | ||
|
|
6685cd4e21 | ||
|
|
7a683bd02e | ||
|
|
6ed03a83a5 | ||
|
|
182cb800a8 | ||
|
|
2acd1cafd0 | ||
|
|
dd35bfd1a1 | ||
|
|
1f17e71dce | ||
|
|
0954f6b1bb | ||
|
|
6b29bf1c71 | ||
|
|
f6afdf0145 | ||
|
|
412847d6a2 | ||
|
|
5b2786213a | ||
|
|
6ed25c19e6 | ||
|
|
e2c483f856 | ||
|
|
5c5e0cb86d | ||
|
|
b9b84cd963 | ||
|
|
e517bcc2b2 | ||
|
|
7f5a6d479e | ||
|
|
8de09ddf37 | ||
|
|
e08ae8d01d | ||
|
|
a00d719ed2 | ||
|
|
08ca1b00b7 | ||
|
|
7b86f81e29 | ||
|
|
8cd4afeaf1 | ||
|
|
b606b621e5 | ||
|
|
5c2b14b910 | ||
|
|
a19a023f1f | ||
|
|
e6cef75162 | ||
|
|
1371f72cfb | ||
|
|
8ecaa2f057 | ||
|
|
8132174754 | ||
|
|
bcc285095d | ||
|
|
cb369727cd | ||
|
|
9bdbeaba66 | ||
|
|
d85cb77123 | ||
|
|
1bee83ccc4 | ||
|
|
4d1894327e | ||
|
|
1391b3bf47 | ||
|
|
b6d5b82c48 | ||
|
|
9dfb0fe3a9 | ||
|
|
455546975c | ||
|
|
c189aa6a0a | ||
|
|
8442528fa7 | ||
|
|
d09787e150 | ||
|
|
0285a89c7c | ||
|
|
7d7784fecb | ||
|
|
ca6f196001 | ||
|
|
e621cf2bc1 | ||
|
|
906ab5483e | ||
|
|
1549c25709 | ||
|
|
fe1d07e58c | ||
|
|
793a1aa3c8 | ||
|
|
4a94477532 | ||
|
|
9bc2b1949c | ||
|
|
49691ba85e | ||
|
|
87ff0c1bbc | ||
|
|
de30c3f8d6 | ||
|
|
4c3bfb89a4 | ||
|
|
8b21cfe7eb | ||
|
|
46700f7b74 | ||
|
|
014be7e143 | ||
|
|
b3ff2c35ea | ||
|
|
9c786de8f9 | ||
|
|
188e108d7c | ||
|
|
7d7842f2f3 | ||
|
|
901a3715cb | ||
|
|
095b5ce97c | ||
|
|
1d3f70e07f | ||
|
|
5e308da81a | ||
|
|
2231e4068d | ||
|
|
b3680f0016 | ||
|
|
89527796f6 | ||
|
|
165d593fdb | ||
|
|
d8b09628f0 | ||
|
|
d35e8ec351 | ||
|
|
f50b0ce8af | ||
|
|
ed8607b710 | ||
|
|
ea28d3b6f3 | ||
|
|
827cea3245 | ||
|
|
b2a0d83518 | ||
|
|
85e0139f32 | ||
|
|
80d5df0ceb | ||
|
|
3a54e5b644 | ||
|
|
acc6a9bd01 | ||
|
|
96af6dc499 | ||
|
|
675e1b4118 | ||
|
|
8ca484f538 | ||
|
|
9a25f4fbe4 | ||
|
|
467ec46cd3 | ||
|
|
52feff2213 | ||
|
|
add65f2f0c | ||
|
|
20f2bae49b | ||
|
|
8eb9df8447 | ||
|
|
88aaffa957 | ||
|
|
469c0b41df | ||
|
|
4a34f72f22 | ||
|
|
4d721e1410 | ||
|
|
9c91da8a2b | ||
|
|
5b9d942313 | ||
|
|
d6b37cb87e | ||
|
|
9c6f077818 | ||
|
|
0b5d936dbe | ||
|
|
6eebed33b2 | ||
|
|
43085a80bc | ||
|
|
4f90b114ea | ||
|
|
d9fa353a06 | ||
|
|
9a1d7460f6 | ||
|
|
d18d17b861 | ||
|
|
4b57c0d4e6 | ||
|
|
ccd9b2d2c5 | ||
|
|
ec770cd819 | ||
|
|
b7ec633fb2 | ||
|
|
7aabff1236 | ||
|
|
9dc1bdffb1 | ||
|
|
2ac672a663 | ||
|
|
11ae6b29d5 | ||
|
|
f201f59e27 | ||
|
|
25d45e1ac5 | ||
|
|
298ba99b8f | ||
|
|
65cbe3cac3 | ||
|
|
f94e8dcf04 | ||
|
|
9629303a0f | ||
|
|
020c4a3b14 | ||
|
|
2f2d1a908b | ||
|
|
03ad8a3cd0 | ||
|
|
1218e111ef | ||
|
|
78b7529172 | ||
|
|
e2bcb44687 | ||
|
|
a57c27eeec | ||
|
|
926f323a72 | ||
|
|
aa20adb22b | ||
|
|
3e0779a78d | ||
|
|
09442d65f2 | ||
|
|
415b99dab3 | ||
|
|
35b038edd3 | ||
|
|
34a95c1556 | ||
|
|
b2821420fd | ||
|
|
216a33b4cd | ||
|
|
ad0bb7ce23 | ||
|
|
17b84f6c09 | ||
|
|
7629f7f0d6 |
@@ -7,44 +7,18 @@ defaults: &defaults
|
||||
CGO_ENABLED: "0"
|
||||
|
||||
jobs:
|
||||
unit-test:
|
||||
<<: *defaults
|
||||
steps:
|
||||
- checkout
|
||||
- run:
|
||||
name: Check if there's anything to fix with gofmt
|
||||
command: |
|
||||
if test -z "$(gofmt -l .)"; then
|
||||
echo "Congrats! There is nothing to fix."
|
||||
else
|
||||
echo "The following lines should be fixed."
|
||||
gofmt -s -d .
|
||||
exit 1
|
||||
fi
|
||||
- run:
|
||||
name: Test
|
||||
command: make test
|
||||
integration-test:
|
||||
<<: *defaults
|
||||
parameters:
|
||||
docker_version:
|
||||
type: string
|
||||
steps:
|
||||
- checkout
|
||||
- setup_remote_docker:
|
||||
version: << parameters.docker_version >>
|
||||
- run:
|
||||
name: Integration Test
|
||||
command: make test-integration
|
||||
release:
|
||||
<<: *defaults
|
||||
steps:
|
||||
- checkout
|
||||
- setup_remote_docker:
|
||||
version: 18.06.0-ce
|
||||
version: 19.03.13
|
||||
- run:
|
||||
name: setup docker
|
||||
name: login to Docker Hub
|
||||
command: echo $DOCKER_PASS | docker login --username $DOCKER_USER --password-stdin
|
||||
- run:
|
||||
name: login to GitHub Container Registry
|
||||
command: echo $GITHUB_TOKEN | docker login ghcr.io -u $GITHUB_USER --password-stdin
|
||||
- run:
|
||||
name: Release
|
||||
command: goreleaser --rm-dist
|
||||
@@ -70,9 +44,6 @@ workflows:
|
||||
version: 2
|
||||
release:
|
||||
jobs:
|
||||
- unit-test
|
||||
- integration-test:
|
||||
docker_version: 18.09.3
|
||||
- release:
|
||||
filters:
|
||||
branches:
|
||||
|
||||
@@ -1,2 +1,6 @@
|
||||
.git
|
||||
.github
|
||||
.cache
|
||||
.circleci
|
||||
integration
|
||||
imgs
|
||||
|
||||
14
.github/ISSUE_TEMPLATE/BUG_REPORT.md
vendored
14
.github/ISSUE_TEMPLATE/BUG_REPORT.md
vendored
@@ -1,31 +1,31 @@
|
||||
---
|
||||
name: Bug Report
|
||||
labels: bug
|
||||
labels: kind/bug
|
||||
about: If something isn't working as expected.
|
||||
---
|
||||
|
||||
**Description**
|
||||
## Description
|
||||
|
||||
<!--
|
||||
Briefly describe the problem you are having in a few paragraphs.
|
||||
-->
|
||||
|
||||
**What did you expect to happen?**
|
||||
## What did you expect to happen?
|
||||
|
||||
|
||||
**What happened instead?**
|
||||
## What happened instead?
|
||||
|
||||
|
||||
**Output of run with `-debug`:**
|
||||
## Output of run with `-debug`:
|
||||
|
||||
```
|
||||
(paste your output here)
|
||||
```
|
||||
|
||||
**Output of `trivy -v`:**
|
||||
## Output of `trivy -v`:
|
||||
|
||||
```
|
||||
(paste your output here)
|
||||
```
|
||||
|
||||
**Additional details (base image name, container registry info...):**
|
||||
## Additional details (base image name, container registry info...):
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md
vendored
2
.github/ISSUE_TEMPLATE/FEATURE_REQUEST.md
vendored
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: Feature Request
|
||||
labels: enhancement
|
||||
labels: kind/feature
|
||||
about: I have a suggestion (and might want to implement myself)!
|
||||
---
|
||||
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md
vendored
2
.github/ISSUE_TEMPLATE/SUPPORT_QUESTION.md
vendored
@@ -1,6 +1,6 @@
|
||||
---
|
||||
name: Support Question
|
||||
labels: question
|
||||
labels: triage/support
|
||||
about: If you have a question about Trivy.
|
||||
---
|
||||
|
||||
|
||||
44
.github/workflows/test.yaml
vendored
44
.github/workflows/test.yaml
vendored
@@ -1,17 +1,57 @@
|
||||
name: Test
|
||||
on: pull_request
|
||||
jobs:
|
||||
test:
|
||||
name: Test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Lint
|
||||
uses: golangci/golangci-lint-action@v2
|
||||
with:
|
||||
version: v1.31
|
||||
args: --deadline=30m
|
||||
|
||||
- name: Run unit tests
|
||||
run: make test
|
||||
|
||||
- name: Upload code coverage
|
||||
uses: codecov/codecov-action@v1
|
||||
with:
|
||||
files: ./coverage.txt
|
||||
|
||||
integration:
|
||||
name: Integration Test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v1
|
||||
with:
|
||||
go-version: 1.15.x
|
||||
id: go
|
||||
|
||||
- name: Check out code into the Go module directory
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Run integration tests
|
||||
run: make test-integration
|
||||
|
||||
build-test:
|
||||
name: Build Test
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v2
|
||||
- name: Set up go
|
||||
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@v1
|
||||
with:
|
||||
go-version: 1.13.x
|
||||
go-version: 1.15.x
|
||||
|
||||
- name: Run GoReleaser
|
||||
uses: goreleaser/goreleaser-action@v1
|
||||
with:
|
||||
version: latest
|
||||
args: release --snapshot --rm-dist --skip-publish
|
||||
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -18,4 +18,5 @@
|
||||
thumbs.db
|
||||
|
||||
# test fixtures
|
||||
coverage.txt
|
||||
integration/testdata/fixtures/
|
||||
|
||||
71
.golangci.yaml
Normal file
71
.golangci.yaml
Normal file
@@ -0,0 +1,71 @@
|
||||
linters-settings:
|
||||
errcheck:
|
||||
check-type-assertions: true
|
||||
check-blank: true
|
||||
govet:
|
||||
check-shadowing: false
|
||||
gofmt:
|
||||
simplify: false
|
||||
golint:
|
||||
min-confidence: 0
|
||||
gocyclo:
|
||||
min-complexity: 10
|
||||
maligned:
|
||||
suggest-new: true
|
||||
dupl:
|
||||
threshold: 100
|
||||
goconst:
|
||||
min-len: 3
|
||||
min-occurrences: 3
|
||||
misspell:
|
||||
locale: US
|
||||
goimports:
|
||||
local-prefixes: github.com/aquasecurity
|
||||
|
||||
linters:
|
||||
disable-all: true
|
||||
enable:
|
||||
- structcheck
|
||||
- ineffassign
|
||||
- typecheck
|
||||
- govet
|
||||
- errcheck
|
||||
- varcheck
|
||||
- deadcode
|
||||
- golint
|
||||
- gosec
|
||||
- unconvert
|
||||
- goconst
|
||||
- gocyclo
|
||||
- gofmt
|
||||
- goimports
|
||||
- maligned
|
||||
- misspell
|
||||
|
||||
run:
|
||||
skip-files:
|
||||
- ".*._mock.go$"
|
||||
- ".*._test.go$"
|
||||
- "integration/*"
|
||||
|
||||
issues:
|
||||
exclude-rules:
|
||||
- linters:
|
||||
- gosec
|
||||
text: "G304: Potential file inclusion"
|
||||
- linters:
|
||||
- gosec
|
||||
text: "Deferring unsafe method"
|
||||
- linters:
|
||||
- errcheck
|
||||
text: "Close` is not checked"
|
||||
- linters:
|
||||
- errcheck
|
||||
text: "os.*` is not checked"
|
||||
- linters:
|
||||
- golint
|
||||
text: "a blank import should be only in a main or test package"
|
||||
exclude:
|
||||
- "should have a package comment, unless it's in another file for this package"
|
||||
exclude-use-default: false
|
||||
max-same-issues: 0
|
||||
@@ -1,5 +1,5 @@
|
||||
FROM alpine:3.11
|
||||
RUN apk --no-cache add ca-certificates git rpm
|
||||
FROM alpine:3.12
|
||||
RUN apk --no-cache add ca-certificates git
|
||||
COPY trivy /usr/local/bin/trivy
|
||||
COPY contrib/gitlab.tpl contrib/gitlab.tpl
|
||||
COPY contrib/*.tpl contrib/
|
||||
ENTRYPOINT ["trivy"]
|
||||
|
||||
15
Makefile
15
Makefile
@@ -12,7 +12,11 @@ $(GOBIN)/wire:
|
||||
|
||||
.PHONY: wire
|
||||
wire: $(GOBIN)/wire
|
||||
wire gen ./...
|
||||
wire gen ./pkg/... ./internal/...
|
||||
|
||||
.PHONY: mock
|
||||
mock: $(GOBIN)/mockery
|
||||
mockery -all -inpkg -case=snake -dir $(DIR)
|
||||
|
||||
.PHONY: deps
|
||||
deps:
|
||||
@@ -24,7 +28,7 @@ $(GOBIN)/golangci-lint:
|
||||
|
||||
.PHONY: test
|
||||
test:
|
||||
go test -v -short ./...
|
||||
go test -v -short -coverprofile=coverage.txt -covermode=atomic ./...
|
||||
|
||||
integration/testdata/fixtures/*.tar.gz:
|
||||
git clone https://github.com/aquasecurity/trivy-test-images.git integration/testdata/fixtures
|
||||
@@ -56,3 +60,10 @@ install:
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -rf integration/testdata/fixtures/
|
||||
|
||||
$(GOBIN)/labeler:
|
||||
GO111MODULE=off go get github.com/knqyf263/labeler
|
||||
|
||||
.PHONY: label
|
||||
label: $(GOBIN)/labeler
|
||||
labeler apply misc/triage/labels.yaml -r aquasecurity/trivy -l 5
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM circleci/golang:1.13-buster
|
||||
FROM circleci/golang:1.15-buster
|
||||
|
||||
RUN sudo apt-get -y update \
|
||||
&& sudo apt-get -y install rpm reprepro createrepo distro-info
|
||||
|
||||
@@ -5,7 +5,7 @@ UBUNTU_RELEASES=$(ubuntu-distro-info --supported)
|
||||
|
||||
cd trivy-repo/deb
|
||||
|
||||
for release in $(reprepro ls trivy | awk -F "|" '{print $3}' | sed 's/ //g'); do
|
||||
for release in ${DEBIAN_RELEASES[@]} ${UBUNTU_RELEASES[@]}; do
|
||||
echo "Removing deb package of $release"
|
||||
reprepro -A i386 remove $release trivy
|
||||
reprepro -A amd64 remove $release trivy
|
||||
@@ -19,4 +19,4 @@ done
|
||||
|
||||
git add .
|
||||
git commit -m "Update deb packages"
|
||||
git push origin master
|
||||
git push origin main
|
||||
|
||||
@@ -23,5 +23,5 @@ done
|
||||
|
||||
git add .
|
||||
git commit -m "Update rpm packages"
|
||||
git push origin master
|
||||
git push origin main
|
||||
|
||||
|
||||
12
codecov.yml
Normal file
12
codecov.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
coverage:
|
||||
status:
|
||||
project:
|
||||
default:
|
||||
informational: true
|
||||
target: auto
|
||||
threshold: 100%
|
||||
patch:
|
||||
default:
|
||||
informational: true
|
||||
target: auto
|
||||
threshold: 100%
|
||||
@@ -13,7 +13,7 @@ Trivy_container_scanning:
|
||||
- export TRIVY_VERSION=${TRIVY_VERSION:-v0.4.3}
|
||||
- apk add --no-cache curl docker-cli
|
||||
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
|
||||
- curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/master/contrib/install.sh | sh -s -- -b /usr/local/bin ${TRIVY_VERSION}
|
||||
- curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b /usr/local/bin ${TRIVY_VERSION}
|
||||
- curl -sSL -o /tmp/trivy-gitlab.tpl https://github.com/aquasecurity/trivy/raw/${TRIVY_VERSION}/contrib/gitlab.tpl
|
||||
script:
|
||||
- trivy --exit-code 0 --cache-dir .trivycache/ --no-progress --format template --template "@/tmp/trivy-gitlab.tpl" -o gl-container-scanning-report.json $IMAGE
|
||||
|
||||
78
contrib/asff.tpl
Normal file
78
contrib/asff.tpl
Normal file
@@ -0,0 +1,78 @@
|
||||
[
|
||||
{{- $t_first := true -}}
|
||||
{{- range . -}}
|
||||
{{- $target := .Target -}}
|
||||
{{- range .Vulnerabilities -}}
|
||||
{{- if $t_first -}}
|
||||
{{- $t_first = false -}}
|
||||
{{- else -}}
|
||||
,
|
||||
{{- end -}}
|
||||
{{- $trivyProductSev := 0 -}}
|
||||
{{- $trivyNormalizedSev := 0 -}}
|
||||
{{- if eq .Severity "LOW" -}}
|
||||
{{- $trivyProductSev = 1 -}}
|
||||
{{- $trivyNormalizedSev = 10 -}}
|
||||
{{- else if eq .Severity "MEDIUM" -}}
|
||||
{{- $trivyProductSev = 4 -}}
|
||||
{{- $trivyNormalizedSev = 40 -}}
|
||||
{{- else if eq .Severity "HIGH" -}}
|
||||
{{- $trivyProductSev = 7 -}}
|
||||
{{- $trivyNormalizedSev = 70 -}}
|
||||
{{- else if eq .Severity "CRITICAL" -}}
|
||||
{{- $trivyProductSev = 9 -}}
|
||||
{{- $trivyNormalizedSev = 90 -}}
|
||||
{{- end }}
|
||||
{{- $description := .Description -}}
|
||||
{{- if gt (len $description ) 1021 -}}
|
||||
{{- $description = (slice $description 0 1021) | printf "%v .." -}}
|
||||
{{- end}}
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "{{ $target }}/{{ .VulnerabilityID }}",
|
||||
"ProductArn": "arn:aws:securityhub:{{ getEnv "AWS_REGION" }}::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "{{ getEnv "AWS_ACCOUNT_ID" }}",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "{{ getCurrentTime }}",
|
||||
"UpdatedAt": "{{ getCurrentTime }}",
|
||||
"Severity": {
|
||||
"Product": {{ $trivyProductSev }},
|
||||
"Normalized": {{ $trivyNormalizedSev }}
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to {{ .VulnerabilityID }} in container {{ $target }}",
|
||||
"Description": {{ escapeString $description | printf "%q" }},
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "{{ .PrimaryURL }}"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "{{ $target }}",
|
||||
"Partition": "aws",
|
||||
"Region": "{{ getEnv "AWS_REGION" }}",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "{{ $target }}" },
|
||||
"Other": {
|
||||
"CVE ID": "{{ .VulnerabilityID }}",
|
||||
"CVE Title": {{ .Title | printf "%q" }},
|
||||
"PkgName": "{{ .PkgName }}",
|
||||
"Installed Package": "{{ .InstalledVersion }}",
|
||||
"Patched Package": "{{ .FixedVersion }}",
|
||||
"NvdCvssScoreV3": "{{ (index .CVSS "nvd").V3Score }}",
|
||||
"NvdCvssVectorV3": "{{ (index .CVSS "nvd").V3Vector }}",
|
||||
"NvdCvssScoreV2": "{{ (index .CVSS "nvd").V2Score }}",
|
||||
"NvdCvssVectorV2": "{{ (index .CVSS "nvd").V2Vector }}"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
}
|
||||
{{- end -}}
|
||||
{{- end }}
|
||||
]
|
||||
94
contrib/example_policy/advanced.rego
Normal file
94
contrib/example_policy/advanced.rego
Normal file
@@ -0,0 +1,94 @@
|
||||
package trivy
|
||||
|
||||
import data.lib.trivy
|
||||
|
||||
default ignore = false
|
||||
|
||||
nvd_v3_vector = v {
|
||||
v := input.CVSS.nvd.v3
|
||||
}
|
||||
|
||||
# Ignore a vulnerability which requires high privilege
|
||||
ignore {
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
cvss_vector.PrivilegesRequired == "High"
|
||||
}
|
||||
|
||||
# Ignore a vulnerability which requires user interaction
|
||||
ignore {
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
cvss_vector.UserInteraction == "Required"
|
||||
}
|
||||
|
||||
ignore {
|
||||
input.PkgName == "openssl"
|
||||
|
||||
# Split CVSSv3 vector
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
|
||||
# Evaluate Attack Vector
|
||||
ignore_attack_vectors := {"Physical", "Local"}
|
||||
cvss_vector.AttackVector == ignore_attack_vectors[_]
|
||||
}
|
||||
|
||||
ignore {
|
||||
input.PkgName == "openssl"
|
||||
|
||||
# Evaluate severity
|
||||
input.Severity == {"LOW", "MEDIUM", "HIGH"}[_]
|
||||
|
||||
# Evaluate CWE-ID
|
||||
deny_cwe_ids := {
|
||||
"CWE-119", # Improper Restriction of Operations within the Bounds of a Memory Buffer
|
||||
"CWE-200", # Exposure of Sensitive Information to an Unauthorized Actor
|
||||
}
|
||||
|
||||
count({x | x := input.CweIDs[_]; x == deny_cwe_ids[_]}) == 0
|
||||
}
|
||||
|
||||
ignore {
|
||||
input.PkgName == "bash"
|
||||
|
||||
# Split CVSSv3 vector
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
|
||||
# Evaluate Attack Vector
|
||||
ignore_attack_vectors := {"Physical", "Local", "Adjacent"}
|
||||
cvss_vector.AttackVector == ignore_attack_vectors[_]
|
||||
|
||||
# Evaluate severity
|
||||
input.Severity == {"LOW", "MEDIUM", "HIGH"}[_]
|
||||
}
|
||||
|
||||
ignore {
|
||||
input.PkgName == "django"
|
||||
|
||||
# Split CVSSv3 vector
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
|
||||
# Evaluate Attack Vector
|
||||
ignore_attack_vectors := {"Physical", "Local"}
|
||||
cvss_vector.AttackVector == ignore_attack_vectors[_]
|
||||
|
||||
# Evaluate severity
|
||||
input.Severity == {"LOW", "MEDIUM"}[_]
|
||||
|
||||
# Evaluate CWE-ID
|
||||
deny_cwe_ids := {
|
||||
"CWE-89", # SQL Injection
|
||||
"CWE-78", # OS Command Injection
|
||||
}
|
||||
|
||||
count({x | x := input.CweIDs[_]; x == deny_cwe_ids[_]}) == 0
|
||||
}
|
||||
|
||||
ignore {
|
||||
input.PkgName == "jquery"
|
||||
|
||||
# Split CVSSv3 vector
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
|
||||
# Evaluate CWE-ID
|
||||
deny_cwe_ids := {"CWE-79"} # XSS
|
||||
count({x | x := input.CweIDs[_]; x == deny_cwe_ids[_]}) == 0
|
||||
}
|
||||
45
contrib/example_policy/basic.rego
Normal file
45
contrib/example_policy/basic.rego
Normal file
@@ -0,0 +1,45 @@
|
||||
package trivy
|
||||
|
||||
import data.lib.trivy
|
||||
|
||||
default ignore = false
|
||||
|
||||
ignore_pkgs := {"bash", "bind-license", "rpm", "vim", "vim-minimal"}
|
||||
|
||||
ignore_severities := {"LOW", "MEDIUM"}
|
||||
|
||||
nvd_v3_vector = v {
|
||||
v := input.CVSS.nvd.v3
|
||||
}
|
||||
|
||||
ignore {
|
||||
input.PkgName == ignore_pkgs[_]
|
||||
}
|
||||
|
||||
ignore {
|
||||
input.Severity == ignore_severities[_]
|
||||
}
|
||||
|
||||
# Ignore a vulnerability which is not remotely exploitable
|
||||
ignore {
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
cvss_vector.AttackVector != "Network"
|
||||
}
|
||||
|
||||
# Ignore a vulnerability which requires high privilege
|
||||
ignore {
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
cvss_vector.PrivilegesRequired == "High"
|
||||
}
|
||||
|
||||
# Ignore a vulnerability which requires user interaction
|
||||
ignore {
|
||||
cvss_vector := trivy.parse_cvss_vector_v3(nvd_v3_vector)
|
||||
cvss_vector.UserInteraction == "Required"
|
||||
}
|
||||
|
||||
# Ignore CSRF
|
||||
ignore {
|
||||
# https://cwe.mitre.org/data/definitions/352.html
|
||||
input.CweIDs[_] == "CWE-352"
|
||||
}
|
||||
@@ -12,9 +12,11 @@
|
||||
,
|
||||
{{- end }}
|
||||
{
|
||||
"id": "{{ .VulnerabilityID }}",
|
||||
"category": "container_scanning",
|
||||
"message": {{ .Title | printf "%q" }},
|
||||
"description": {{ .Description | printf "%q" }},
|
||||
{{- /* cve is a deprecated key, use id instead */}}
|
||||
"cve": "{{ .VulnerabilityID }}",
|
||||
"severity": {{ if eq .Severity "UNKNOWN" -}}
|
||||
"Unknown"
|
||||
@@ -29,6 +31,7 @@
|
||||
{{- else -}}
|
||||
"{{ .Severity }}"
|
||||
{{- end }},
|
||||
{{- /* TODO: Define confidence */}}
|
||||
"confidence": "Unknown",
|
||||
"solution": {{ if .FixedVersion -}}
|
||||
"Upgrade {{ .PkgName }} to {{ .FixedVersion }}"
|
||||
@@ -56,7 +59,7 @@
|
||||
"type": "cve",
|
||||
"name": "{{ .VulnerabilityID }}",
|
||||
"value": "{{ .VulnerabilityID }}",
|
||||
"url": ""
|
||||
"url": "{{ .PrimaryURL }}"
|
||||
}
|
||||
],
|
||||
"links": [
|
||||
|
||||
123
contrib/html.tpl
Normal file
123
contrib/html.tpl
Normal file
@@ -0,0 +1,123 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
{{- if . }}
|
||||
<style>
|
||||
* {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.group-header th {
|
||||
font-size: 200%;
|
||||
}
|
||||
.sub-header th {
|
||||
font-size: 150%;
|
||||
}
|
||||
table, th, td {
|
||||
border: 1px solid black;
|
||||
border-collapse: collapse;
|
||||
white-space: nowrap;
|
||||
padding: .3em;
|
||||
}
|
||||
table {
|
||||
margin: 0 auto;
|
||||
}
|
||||
.severity {
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
color: #fafafa;
|
||||
}
|
||||
.severity-LOW .severity { background-color: #5fbb31; }
|
||||
.severity-MEDIUM .severity { background-color: #e9c600; }
|
||||
.severity-HIGH .severity { background-color: #ff8800; }
|
||||
.severity-CRITICAL .severity { background-color: #e40000; }
|
||||
.severity-UNKNOWN .severity { background-color: #747474; }
|
||||
.severity-LOW { background-color: #5fbb3160; }
|
||||
.severity-MEDIUM { background-color: #e9c60060; }
|
||||
.severity-HIGH { background-color: #ff880060; }
|
||||
.severity-CRITICAL { background-color: #e4000060; }
|
||||
.severity-UNKNOWN { background-color: #74747460; }
|
||||
table tr td:first-of-type {
|
||||
font-weight: bold;
|
||||
}
|
||||
.links a,
|
||||
.links[data-more-links=on] a {
|
||||
display: block;
|
||||
}
|
||||
.links[data-more-links=off] a:nth-of-type(1n+5) {
|
||||
display: none;
|
||||
}
|
||||
a.toggle-more-links { cursor: pointer; }
|
||||
</style>
|
||||
<title>{{- escapeXML ( index . 0 ).Target }} - Trivy Report - {{ getCurrentTime }}</title>
|
||||
<script>
|
||||
window.onload = function() {
|
||||
document.querySelectorAll('td.links').forEach(function(linkCell) {
|
||||
var links = [].concat.apply([], linkCell.querySelectorAll('a'));
|
||||
[].sort.apply(links, function(a, b) {
|
||||
return a.href > b.href ? 1 : -1;
|
||||
});
|
||||
links.forEach(function(link, idx) {
|
||||
if (links.length > 3 && 3 === idx) {
|
||||
var toggleLink = document.createElement('a');
|
||||
toggleLink.innerText = "Toggle more links";
|
||||
toggleLink.href = "#toggleMore";
|
||||
toggleLink.setAttribute("class", "toggle-more-links");
|
||||
linkCell.appendChild(toggleLink);
|
||||
}
|
||||
linkCell.appendChild(link);
|
||||
});
|
||||
});
|
||||
document.querySelectorAll('a.toggle-more-links').forEach(function(toggleLink) {
|
||||
toggleLink.onclick = function() {
|
||||
var expanded = toggleLink.parentElement.getAttribute("data-more-links");
|
||||
toggleLink.parentElement.setAttribute("data-more-links", "on" === expanded ? "off" : "on");
|
||||
return false;
|
||||
};
|
||||
});
|
||||
};
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>{{- escapeXML ( index . 0 ).Target }} - Trivy Report - {{ getCurrentTime }}</h1>
|
||||
<table>
|
||||
{{- range . }}
|
||||
<tr class="group-header"><th colspan="6">{{ escapeXML .Type }}</th></tr>
|
||||
{{- if (eq (len .Vulnerabilities) 0) }}
|
||||
<tr><th colspan="6">No Vulnerabilities found</th></tr>
|
||||
{{- else }}
|
||||
<tr class="sub-header">
|
||||
<th>Package</th>
|
||||
<th>Vulnerability ID</th>
|
||||
<th>Severity</th>
|
||||
<th>Installed Version</th>
|
||||
<th>Fixed Version</th>
|
||||
<th>Links</th>
|
||||
</tr>
|
||||
{{- range .Vulnerabilities }}
|
||||
<tr class="severity-{{ escapeXML .Vulnerability.Severity }}">
|
||||
<td class="pkg-name">{{ escapeXML .PkgName }}</td>
|
||||
<td>{{ escapeXML .VulnerabilityID }}</td>
|
||||
<td class="severity">{{ escapeXML .Vulnerability.Severity }}</td>
|
||||
<td class="pkg-version">{{ escapeXML .InstalledVersion }}</td>
|
||||
<td>{{ escapeXML .FixedVersion }}</td>
|
||||
<td class="links" data-more-links="off">
|
||||
{{- range .Vulnerability.References }}
|
||||
<a href={{ escapeXML . | printf "%q" }}>{{ escapeXML . }}</a>
|
||||
{{- end }}
|
||||
</td>
|
||||
</tr>
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
</table>
|
||||
{{- else }}
|
||||
</head>
|
||||
<body>
|
||||
<h1>Trivy Returned Empty Report</h1>
|
||||
{{- end }}
|
||||
</body>
|
||||
</html>
|
||||
@@ -72,6 +72,7 @@ get_binaries() {
|
||||
freebsd/armv7) BINARIES="trivy" ;;
|
||||
linux/386) BINARIES="trivy" ;;
|
||||
linux/amd64) BINARIES="trivy" ;;
|
||||
linux/ppc64le) BINARIES="trivy" ;;
|
||||
linux/arm64) BINARIES="trivy" ;;
|
||||
linux/armv7) BINARIES="trivy" ;;
|
||||
openbsd/386) BINARIES="trivy" ;;
|
||||
@@ -110,6 +111,7 @@ adjust_os() {
|
||||
amd64) OS=64bit ;;
|
||||
arm) OS=ARM ;;
|
||||
arm64) OS=ARM64 ;;
|
||||
ppc64le) OS=PPC64LE ;;
|
||||
darwin) OS=macOS ;;
|
||||
dragonfly) OS=DragonFlyBSD ;;
|
||||
freebsd) OS=FreeBSD ;;
|
||||
@@ -126,6 +128,7 @@ adjust_arch() {
|
||||
amd64) ARCH=64bit ;;
|
||||
arm) ARCH=ARM ;;
|
||||
arm64) ARCH=ARM64 ;;
|
||||
ppc64le) OS=PPC64LE ;;
|
||||
darwin) ARCH=macOS ;;
|
||||
dragonfly) ARCH=DragonFlyBSD ;;
|
||||
freebsd) ARCH=FreeBSD ;;
|
||||
@@ -209,6 +212,7 @@ uname_arch() {
|
||||
x86) arch="386" ;;
|
||||
i686) arch="386" ;;
|
||||
i386) arch="386" ;;
|
||||
ppc64le) arch="ppc64le" ;;
|
||||
aarch64) arch="arm64" ;;
|
||||
armv5*) arch="armv5" ;;
|
||||
armv6*) arch="armv6" ;;
|
||||
|
||||
18
contrib/junit.tpl
Normal file
18
contrib/junit.tpl
Normal file
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" ?>
|
||||
<testsuites>
|
||||
{{- range . -}}
|
||||
{{- $failures := len .Vulnerabilities }}
|
||||
<testsuite tests="1" failures="{{ $failures }}" time="" name="{{ .Target }}" errors="0" skipped="0">
|
||||
{{- if not (eq .Type "") }}
|
||||
<properties>
|
||||
<property name="type" value="{{ .Type }}"></property>
|
||||
</properties>
|
||||
{{- end -}}
|
||||
{{ range .Vulnerabilities }}
|
||||
<testcase classname="{{ .PkgName }}-{{ .InstalledVersion }}" name="[{{ .Vulnerability.Severity }}] {{ .VulnerabilityID }}" time="">
|
||||
<failure message={{escapeXML .Title | printf "%q" }} type="description">{{escapeXML .Description | printf "%q" }}</failure>
|
||||
</testcase>
|
||||
{{- end }}
|
||||
</testsuite>
|
||||
{{- end }}
|
||||
</testsuites>
|
||||
84
contrib/sarif.tpl
Normal file
84
contrib/sarif.tpl
Normal file
@@ -0,0 +1,84 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
|
||||
"version": "2.1.0",
|
||||
"runs": [
|
||||
{
|
||||
"tool": {
|
||||
"driver": {
|
||||
"name": "Trivy",
|
||||
"informationUri": "https://github.com/aquasecurity/trivy",
|
||||
"fullName": "Trivy Vulnerability Scanner",
|
||||
"version": "v0.15.0",
|
||||
"rules": [
|
||||
{{- $t_first := true }}
|
||||
{{- range . }}
|
||||
{{- range .Vulnerabilities -}}
|
||||
{{- if $t_first -}}
|
||||
{{- $t_first = false -}}
|
||||
{{ else -}}
|
||||
,
|
||||
{{- end }}
|
||||
{
|
||||
"id": "[{{ .Vulnerability.Severity }}] {{ .VulnerabilityID }}",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": {{ printf "%v Package: %v" .VulnerabilityID .PkgName | printf "%q" }}
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": {{ endWithPeriod (escapeString .Title) | printf "%q" }}
|
||||
},
|
||||
"helpUri": "{{ .PrimaryURL }}",
|
||||
"help": {
|
||||
"text": {{ printf "Vulnerability %v\nSeverity: %v\nPackage: %v\nInstalled Version: %v\nFixed Version: %v\nLink: [%v](%v)" .VulnerabilityID .Vulnerability.Severity .PkgName .InstalledVersion .FixedVersion .VulnerabilityID .PrimaryURL | printf "%q"}},
|
||||
"markdown": {{ printf "**Vulnerability %v**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|%v|%v|%v|%v|[%v](%v)|\n" .VulnerabilityID .Vulnerability.Severity .PkgName .InstalledVersion .FixedVersion .VulnerabilityID .PrimaryURL | printf "%q"}}
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"{{ .Vulnerability.Severity }}",
|
||||
{{ .PkgName | printf "%q" }}
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
]
|
||||
}
|
||||
},
|
||||
"results": [
|
||||
{{- $t_first := true }}
|
||||
{{- range . }}
|
||||
{{- range $index, $vulnerability := .Vulnerabilities -}}
|
||||
{{- if $t_first -}}
|
||||
{{- $t_first = false -}}
|
||||
{{ else -}}
|
||||
,
|
||||
{{- end }}
|
||||
{
|
||||
"ruleId": "[{{ $vulnerability.Vulnerability.Severity }}] {{ $vulnerability.VulnerabilityID }}",
|
||||
"ruleIndex": {{ $index }},
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": {{ endWithPeriod (escapeString $vulnerability.Description) | printf "%q" }}
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
],
|
||||
"columnKind": "utf16CodeUnits"
|
||||
}
|
||||
]
|
||||
}
|
||||
55
docs/air-gap.md
Normal file
55
docs/air-gap.md
Normal file
@@ -0,0 +1,55 @@
|
||||
# Air-gapped environment
|
||||
Trivy can be used in air-gapped environments.
|
||||
|
||||
## Download the vulnerability database
|
||||
At first, you need to download the vulnerability database for use in air-gapped environments.
|
||||
Go to [trivy-db](https://github.com/aquasecurity/trivy-db/releases) and download `trivy-offline.db.tgz` in the latest release.
|
||||
If you download `trivy-light-offline.db.tgz`, you have to run Trivy with `--light` option.
|
||||
|
||||
```
|
||||
$ wget https://github.com/aquasecurity/trivy-db/releases/latest/download/trivy-offline.db.tgz
|
||||
```
|
||||
|
||||
|
||||
## Transfer the DB file into the air-gapped environment
|
||||
The way of transfer depends on the environment.
|
||||
|
||||
```
|
||||
$ rsync -av -e ssh /path/to/trivy-offline.db.tgz [user]@[host]:dst
|
||||
```
|
||||
|
||||
## Put the DB file in Trivy's cache directory
|
||||
You have to know where to put the DB file. The following command shows the default cache directory.
|
||||
|
||||
```
|
||||
$ ssh user@host
|
||||
$ trivy -h | grep cache
|
||||
--cache-dir value cache directory (default: "/home/myuser/.cache/trivy") [$TRIVY_CACHE_DIR]
|
||||
```
|
||||
|
||||
Put the DB file in the cache directory + `/db`.
|
||||
|
||||
```
|
||||
$ mkdir -p /home/myuser/.cache/trivy/db
|
||||
$ cd /home/myuser/.cache/trivy/db
|
||||
$ mv /path/to/trivy-offline.db.tgz .
|
||||
```
|
||||
|
||||
Then, decompress it.
|
||||
`trivy-offline.db.tgz` file includes two files, `trivy.db` and `metadata.json`.
|
||||
|
||||
```
|
||||
$ tar xvf trivy-offline.db.tgz
|
||||
x trivy.db
|
||||
x metadata.json
|
||||
$ rm trivy-offline.db.tgz
|
||||
```
|
||||
|
||||
In an air-gapped environment it is your responsibility to update the Trivy database on a regular basis, so that the scanner can detect recently-identified vulnerabilities.
|
||||
|
||||
## Run Trivy with --skip-update option
|
||||
In an air-gapped environment, specify `--skip-update` so that Trivy doesn't attempt to download the latest database file.
|
||||
|
||||
```
|
||||
$ trivy image --skip-update alpine:3.12
|
||||
```
|
||||
78
docs/contrib/help-wanted.md
Normal file
78
docs/contrib/help-wanted.md
Normal file
@@ -0,0 +1,78 @@
|
||||
# Overview
|
||||
|
||||
We use two labels [help wanted](#help-wanted) and [good first
|
||||
issue](#good-first-issue) to identify issues that have been specially groomed
|
||||
for new contributors. The `good first issue` label is a subset of `help wanted`
|
||||
label, indicating that members have committed to providing extra assistance for
|
||||
new contributors. All `good first issue` items also have the `help wanted`
|
||||
label.
|
||||
|
||||
## Help Wanted
|
||||
|
||||
Items marked with the `help wanted` label need to ensure that they are:
|
||||
|
||||
- **Low Barrier to Entry**
|
||||
|
||||
It should be tractable for new contributors. Documentation on how that type of
|
||||
change should be made should already exist.
|
||||
|
||||
- **Clear Task**
|
||||
|
||||
The task is agreed upon and does not require further discussions in the
|
||||
community. Call out if that area of code is untested and requires new
|
||||
fixtures.
|
||||
|
||||
API / CLI behavior is decided and included in the OP issue, for example: "The
|
||||
new command syntax is `trivy --format yaml IMAGE_NAME`"_ with
|
||||
expected validations called out.
|
||||
|
||||
- **Goldilocks priority**
|
||||
|
||||
Not too high that a core contributor should do it, but not too low that it
|
||||
isn't useful enough for a core contributor to spend time to review it, answer
|
||||
questions, help get it into a release, etc.
|
||||
|
||||
- **Up-To-Date**
|
||||
|
||||
Often these issues become obsolete and have already been done, are no longer
|
||||
desired, no longer make sense, have changed priority or difficulty , etc.
|
||||
|
||||
|
||||
## Good First Issue
|
||||
|
||||
Items marked with the `good first issue` label are intended for _first-time
|
||||
contributors_. It indicates that members will keep an eye out for these pull
|
||||
requests and shepherd it through our processes.
|
||||
|
||||
These items need to ensure that they follow the guidelines for `help wanted`
|
||||
labels (above) in addition to meeting the following criteria:
|
||||
|
||||
- **No Barrier to Entry**
|
||||
|
||||
The task is something that a new contributor can tackle without advanced
|
||||
setup, or domain knowledge.
|
||||
|
||||
- **Solution Explained**
|
||||
|
||||
The recommended solution is clearly described in the issue.
|
||||
|
||||
- **Provides Context**
|
||||
|
||||
If background knowledge is required, this should be explicitly mentioned and a
|
||||
list of suggested readings included.
|
||||
|
||||
- **Gives Examples**
|
||||
|
||||
Link to examples of similar implementations so new contributors have a
|
||||
reference guide for their changes.
|
||||
|
||||
- **Identifies Relevant Code**
|
||||
|
||||
The relevant code and tests to be changed should be linked in the issue.
|
||||
|
||||
- **Ready to Test**
|
||||
|
||||
There should be existing tests that can be modified, or existing test cases
|
||||
fit to be copied. If the area of code doesn't have tests, before labeling the
|
||||
issue, add a test fixture. This prep often makes a great `help wanted` task!
|
||||
|
||||
195
docs/contrib/triage.md
Normal file
195
docs/contrib/triage.md
Normal file
@@ -0,0 +1,195 @@
|
||||
Triage is an important part of maintaining the health of the trivy repo.
|
||||
A well organized repo allows maintainers to prioritize feature requests, fix bugs, and respond to users facing difficulty with the tool as quickly as possible.
|
||||
|
||||
Triage includes:
|
||||
- Labeling issues
|
||||
- Responding to issues
|
||||
- Closing issues
|
||||
|
||||
# Daily Triage
|
||||
Daily triage has two goals:
|
||||
|
||||
1. Responsiveness for new issues
|
||||
1. Responsiveness when explicitly requested information was provided
|
||||
|
||||
It covers:
|
||||
|
||||
1. Issues without a `kind/` or `triage/` label
|
||||
1. Issues without a `priority/` label
|
||||
1. `triage/needs-information` issues which the user has followed up on, and now require a response.
|
||||
|
||||
## Categorization
|
||||
|
||||
The most important level of categorizing the issue is defining what type it is.
|
||||
We typically want at least one of the following labels on every issue, and some issues may fall into multiple categories:
|
||||
|
||||
- `triage/support` - The default for most incoming issues
|
||||
- `kind/bug` - When it’s a bug or we aren’t delivering the best user experience
|
||||
|
||||
Other possibilities:
|
||||
- `kind/feature`- Identify new feature requests
|
||||
- `kind/testing` - Update or fix unit/integration tests
|
||||
- `kind/cleanup` - Cleaning up/refactoring the codebase
|
||||
- `kind/documentation` - Updates or additions to trivy documentation
|
||||
|
||||
If the issue is specific to a driver for OS packages or libraries:
|
||||
|
||||
**co/[driver for OS packages]**
|
||||
|
||||
- `co/alpine`
|
||||
- `co/amazon`
|
||||
- `co/debian`
|
||||
- `co/oracle`
|
||||
- `co/photon`
|
||||
- `co/redhat`
|
||||
- `co/suse`
|
||||
- `co/ubuntu`
|
||||
|
||||
**co/[driver for libraries of programming languages]**
|
||||
|
||||
- `co/bundler`
|
||||
- `co/cargo`
|
||||
- `co/composer`
|
||||
- `co/npm`
|
||||
- `co/yarn`
|
||||
- `co/pipenv`
|
||||
- `co/poetry`
|
||||
|
||||
|
||||
**Help wanted?**
|
||||
|
||||
`Good First Issue` - bug has a proposed solution, can be implemented w/o further discussion.
|
||||
|
||||
`Help wanted` - if the bug could use help from a contributor
|
||||
|
||||
|
||||
## Prioritization
|
||||
If the issue is not `triage/support`, it needs a priority label.
|
||||
|
||||
`priority/critical-urgent` - someones top priority ASAP, such as security issue, user-visible bug, or build breakage. Rarely used.
|
||||
|
||||
`priority/important-soon`: in time for the next two releases. It should be attached to a milestone.
|
||||
|
||||
`priority/important-longterm`: 2-4 releases from now
|
||||
|
||||
`priority/backlog`: agreed that this would be good to have, but no one is available at the moment. Consider tagging as `help wanted`
|
||||
|
||||
`priority/awaiting-more-evidence`: may be useful, but there is not yet enough support.
|
||||
|
||||
|
||||
# Weekly Triage
|
||||
|
||||
Weekly triage has three goals:
|
||||
|
||||
1. Catching up on unresponded issues
|
||||
1. Reviewing and closing PR’s
|
||||
1. Closing stale issues
|
||||
|
||||
|
||||
## Post-Release Triage
|
||||
|
||||
Post-release triage occurs after a major release (around every 4-6 weeks).
|
||||
It focuses on:
|
||||
|
||||
1. Closing bugs that have been resolved by the release
|
||||
1. Reprioritizing bugs that have not been resolved by the release
|
||||
1. Letting users know if we believe that there is still an issue
|
||||
|
||||
This includes reviewing:
|
||||
|
||||
1. Every issue that hasn’t been touched in the last 2 days
|
||||
1. Re-evaluation of long-term issues
|
||||
1. Re-evaluation of short-term issues
|
||||
|
||||
|
||||
## Responding to Issues
|
||||
|
||||
### Needs More Information
|
||||
A sample response to ask for more info:
|
||||
|
||||
> I don’t yet have a clear way to replicate this issue. Do you mind adding some additional details. Here is additional information that would be helpful:
|
||||
>
|
||||
> \* The exact `trivy` command line used
|
||||
>
|
||||
> \* The exact image you want to scan
|
||||
>
|
||||
> \* The full output of the `trivy` command, preferably with `--debug` for extra logging.
|
||||
>
|
||||
>
|
||||
> Thank you for sharing your experience!
|
||||
|
||||
|
||||
Then: Label with `triage/needs-information`.
|
||||
|
||||
### Issue might be resolved
|
||||
If you think a release may have resolved an issue, ask the author to see if their issue has been resolved:
|
||||
|
||||
> Could you please check to see if trivy <x> addresses this issue? We've made some changes with how this is handled, and improved the trivy logs output to help us debug tricky cases like this.
|
||||
|
||||
Then: Label with `triage/needs-information`.
|
||||
|
||||
|
||||
## Closing with Care
|
||||
|
||||
Issues typically need to be closed for the following reasons:
|
||||
|
||||
- The issue has been addressed
|
||||
- The issue is a duplicate of an existing issue
|
||||
- There has been a lack of information over a long period of time
|
||||
|
||||
In any of these situations, we aim to be kind when closing the issue, and offer the author action items should they need to reopen their issue or still require a solution.
|
||||
|
||||
Samples responses for these situations include:
|
||||
|
||||
### Issue has been addressed
|
||||
|
||||
>@author: I believe this issue is now addressed by trivy v1.0.0, as it <reason>. If you still see this issue with trivy v1.0 or higher, please reopen this issue.
|
||||
>
|
||||
>Thank you for reporting this issue!
|
||||
|
||||
Then: Close the issue
|
||||
|
||||
### Duplicate Issue
|
||||
|
||||
>This issue appears to be a duplicate of #X, do you mind if we move the conversation there?
|
||||
>
|
||||
>This way we can centralize the content relating to the issue. If you feel that this issue is not in fact a duplicate, please re-open it. If you have additional information to share, please add it to the new issue.
|
||||
>
|
||||
>Thank you for reporting this!
|
||||
|
||||
Then: Label with `triage/duplicate` and close the issue.
|
||||
|
||||
### Lack of Information
|
||||
If an issue hasn't been active for more than four weeks, and the author has been pinged at least once, then the issue can be closed.
|
||||
|
||||
>Hey @author -- hopefully it's OK if I close this - there wasn't enough information to make it actionable, and some time has already passed. If you are able to provide additional details, you may reopen it at any point.
|
||||
>
|
||||
>Here is additional information that may be helpful to us:
|
||||
>
|
||||
>\* Whether the issue occurs with the latest trivy release
|
||||
>
|
||||
>\* The exact `trivy` command line used
|
||||
>
|
||||
>\* The exact image you want to scan
|
||||
>
|
||||
>\* The full output of the `trivy` command, preferably with `--debug` for extra logging.
|
||||
>
|
||||
>
|
||||
>Thank you for sharing your experience!
|
||||
|
||||
Then: Close the issue.
|
||||
|
||||
## Help Wanted issues
|
||||
|
||||
We use two labels [help wanted](https://github.com/aquasecurity/trivy/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22)
|
||||
and [good first issue](https://github.com/aquasecurity/trivy/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)
|
||||
to identify issues that have been specially groomed for new contributors.
|
||||
|
||||
We have specific [guidelines](/docs/contrib/help-wanted.md)
|
||||
for how to use these labels. If you see an issue that satisfies these
|
||||
guidelines, you can add the `help wanted` label and the `good first issue` label.
|
||||
Please note that adding the `good first issue` label must also
|
||||
add the `help wanted` label.
|
||||
|
||||
If an issue has these labels but does not satisfy the guidelines, please
|
||||
ask for more details to be added to the issue or remove the labels.
|
||||
29
docs/integration/security-hub.md
Normal file
29
docs/integration/security-hub.md
Normal file
@@ -0,0 +1,29 @@
|
||||
# AWS Security Hub
|
||||
|
||||
## Upload findings to Security Hub
|
||||
|
||||
In the following example using the template `asff.tpl`, [ASFF](https://docs.aws.amazon.com/securityhub/latest/userguide/securityhub-findings-format.html) file can be generated.
|
||||
|
||||
```
|
||||
$ AWS_REGION=us-west-1 AWS_ACCOUNT_ID=123456789012 trivy image --format template --template "@contrib/asff.tpl" -o report.asff golang:1.12-alpine
|
||||
```
|
||||
|
||||
ASFF template needs AWS_REGION and AWS_ACCOUNT_ID from environment variables.
|
||||
|
||||
Then, you can upload it with AWS CLI.
|
||||
|
||||
```
|
||||
$ aws securityhub batch-import-findings --findings file://report.asff
|
||||
```
|
||||
|
||||
## Customize
|
||||
You can customize [asff.tpl](../../contrib/asff.tpl).
|
||||
|
||||
```
|
||||
$ export AWS_REGION=us-west-1
|
||||
$ export AWS_ACCOUNT_ID=123456789012
|
||||
$ trivy image --format template --template "@your-asff.tpl" -o report.asff golang:1.12-alpine
|
||||
```
|
||||
|
||||
## Reference
|
||||
https://aws.amazon.com/blogs/security/how-to-build-ci-cd-pipeline-container-vulnerability-scanning-trivy-and-aws-security-hub/
|
||||
49
go.mod
49
go.mod
@@ -1,33 +1,56 @@
|
||||
module github.com/aquasecurity/trivy
|
||||
|
||||
go 1.13
|
||||
go 1.15
|
||||
|
||||
require (
|
||||
github.com/aquasecurity/fanal v0.0.0-20200413182139-9213b79eba1a
|
||||
github.com/aquasecurity/go-dep-parser v0.0.0-20190819075924-ea223f0ef24b
|
||||
github.com/aquasecurity/trivy-db v0.0.0-20200331122722-2adcf16a2a26
|
||||
github.com/aquasecurity/bolt-fixtures v0.0.0-20200903104109-d34e7f983986
|
||||
github.com/aquasecurity/fanal v0.0.0-20210119051230-28c249da7cfd
|
||||
github.com/aquasecurity/go-dep-parser v0.0.0-20201028043324-889d4a92b8e0
|
||||
github.com/aquasecurity/go-gem-version v0.0.0-20201115065557-8eed6fe000ce
|
||||
github.com/aquasecurity/go-npm-version v0.0.0-20201110091526-0b796d180798
|
||||
github.com/aquasecurity/go-pep440-version v0.0.0-20210121094942-22b2f8951d46
|
||||
github.com/aquasecurity/go-version v0.0.0-20210121072130-637058cfe492
|
||||
github.com/aquasecurity/trivy-db v0.0.0-20210105160501-c5bf4e153277
|
||||
github.com/caarlos0/env/v6 v6.0.0
|
||||
github.com/cenkalti/backoff v2.2.1+incompatible
|
||||
github.com/cheggaaa/pb/v3 v3.0.3
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.0 // indirect
|
||||
github.com/docker/docker v1.4.2-0.20190924003213-a8608b5b67c7
|
||||
github.com/genuinetools/reg v0.16.0
|
||||
github.com/golang/protobuf v1.3.3
|
||||
github.com/docker/go-connections v0.4.0
|
||||
github.com/elazarl/goproxy v0.0.0-20200809112317-0581fc3aee2d // indirect
|
||||
github.com/elazarl/goproxy/ext v0.0.0-20200809112317-0581fc3aee2d // indirect
|
||||
github.com/go-redis/redis/v8 v8.4.0
|
||||
github.com/goccy/go-yaml v1.8.2 // indirect
|
||||
github.com/golang/protobuf v1.4.2
|
||||
github.com/google/go-containerregistry v0.0.0-20200331213917-3d03ed9b1ca2
|
||||
github.com/google/go-github/v28 v28.1.1
|
||||
github.com/google/wire v0.3.0
|
||||
github.com/gopherjs/gopherjs v0.0.0-20200217142428-fce0ec30dd00 // indirect
|
||||
github.com/knqyf263/go-apk-version v0.0.0-20200609155635-041fdbb8563f
|
||||
github.com/knqyf263/go-deb-version v0.0.0-20190517075300-09fca494f03d
|
||||
github.com/knqyf263/go-rpm-version v0.0.0-20170716094938-74609b86c936
|
||||
github.com/knqyf263/go-version v1.1.1
|
||||
github.com/kylelemons/godebug v1.1.0
|
||||
github.com/mattn/go-colorable v0.1.4 // indirect
|
||||
github.com/mattn/go-runewidth v0.0.9 // indirect
|
||||
github.com/olekukonko/tablewriter v0.0.2-0.20190607075207-195002e6e56a
|
||||
github.com/open-policy-agent/opa v0.21.1
|
||||
github.com/smartystreets/assertions v1.2.0 // indirect
|
||||
github.com/smartystreets/goconvey v1.6.4 // indirect
|
||||
github.com/spf13/afero v1.2.2
|
||||
github.com/stretchr/testify v1.4.0
|
||||
github.com/stretchr/objx v0.3.0 // indirect
|
||||
github.com/stretchr/testify v1.6.1
|
||||
github.com/testcontainers/testcontainers-go v0.3.1
|
||||
github.com/twitchtv/twirp v5.10.1+incompatible
|
||||
github.com/urfave/cli v1.22.1
|
||||
github.com/urfave/cli/v2 v2.3.0
|
||||
go.uber.org/atomic v1.5.1 // indirect
|
||||
go.uber.org/multierr v1.4.0 // indirect
|
||||
go.uber.org/zap v1.13.0
|
||||
golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543
|
||||
k8s.io/utils v0.0.0-20191114184206-e782cd3c129f
|
||||
golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0 // indirect
|
||||
golang.org/x/oauth2 v0.0.0-20201208152858-08078c50e5b5
|
||||
golang.org/x/sys v0.0.0-20201006155630-ac719f4daadf // indirect
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1
|
||||
google.golang.org/protobuf v1.25.0
|
||||
gopkg.in/check.v1 v1.0.0-20200902074654-038fdea0a05b // indirect
|
||||
gopkg.in/go-playground/validator.v9 v9.31.0 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.0-20200615113413-eeeca48fe776 // indirect
|
||||
k8s.io/utils v0.0.0-20201110183641-67b214c5f920
|
||||
)
|
||||
|
||||
@@ -12,21 +12,25 @@ builds:
|
||||
goos:
|
||||
- darwin
|
||||
- linux
|
||||
- freebsd
|
||||
- openbsd
|
||||
goarch:
|
||||
- amd64
|
||||
- 386
|
||||
- arm
|
||||
- arm64
|
||||
- ppc64le
|
||||
goarm:
|
||||
- 7
|
||||
ignore:
|
||||
- goos: darwin
|
||||
goarch: 386
|
||||
|
||||
nfpms:
|
||||
-
|
||||
formats:
|
||||
- deb
|
||||
- rpm
|
||||
dependencies:
|
||||
- rpm
|
||||
vendor: "aquasecurity"
|
||||
homepage: "https://github.com/aquasecurity"
|
||||
maintainer: "Teppei Fukuda <knqyf263@gmail.com>"
|
||||
@@ -38,6 +42,7 @@ nfpms:
|
||||
386: 32bit
|
||||
arm: ARM
|
||||
arm64: ARM64
|
||||
ppc64le: PPC64LE
|
||||
darwin: macOS
|
||||
linux: Linux
|
||||
openbsd: OpenBSD
|
||||
@@ -54,6 +59,7 @@ archives:
|
||||
386: 32bit
|
||||
arm: ARM
|
||||
arm64: ARM64
|
||||
ppc64le: PPC64LE
|
||||
darwin: macOS
|
||||
linux: Linux
|
||||
openbsd: OpenBSD
|
||||
@@ -63,15 +69,14 @@ archives:
|
||||
files:
|
||||
- README.md
|
||||
- LICENSE
|
||||
- contrib/gitlab.tpl
|
||||
- contrib/*.tpl
|
||||
|
||||
|
||||
brews:
|
||||
-
|
||||
github:
|
||||
tap:
|
||||
owner: aquasecurity
|
||||
name: homebrew-trivy
|
||||
dependencies:
|
||||
- rpm
|
||||
homepage: "https://github.com/aquasecurity/trivy"
|
||||
description: ""
|
||||
test: |
|
||||
@@ -81,6 +86,8 @@ dockers:
|
||||
- image_templates:
|
||||
- "docker.io/aquasec/trivy:{{ .Version }}"
|
||||
- "docker.io/aquasec/trivy:latest"
|
||||
- "ghcr.io/aquasecurity/trivy:{{ .Version }}"
|
||||
- "ghcr.io/aquasecurity/trivy:latest"
|
||||
binaries:
|
||||
- trivy
|
||||
build_flag_templates:
|
||||
@@ -93,4 +100,5 @@ dockers:
|
||||
- "--label=org.label-schema.vcs=https://github.com/aquasecurity/trivy"
|
||||
- "--label=org.label-schema.vcs-ref={{ .FullCommit }}"
|
||||
extra_files:
|
||||
- contrib/gitlab.tpl
|
||||
- contrib/
|
||||
|
||||
|
||||
22
helm/trivy/.helmignore
Normal file
22
helm/trivy/.helmignore
Normal file
@@ -0,0 +1,22 @@
|
||||
# Patterns to ignore when building packages.
|
||||
# This supports shell glob matching, relative path matching, and
|
||||
# negation (prefixed with !). Only one pattern per line.
|
||||
.DS_Store
|
||||
# Common VCS dirs
|
||||
.git/
|
||||
.gitignore
|
||||
.bzr/
|
||||
.bzrignore
|
||||
.hg/
|
||||
.hgignore
|
||||
.svn/
|
||||
# Common backup files
|
||||
*.swp
|
||||
*.bak
|
||||
*.tmp
|
||||
*~
|
||||
# Various IDEs
|
||||
.project
|
||||
.idea/
|
||||
*.tmproj
|
||||
.vscode/
|
||||
11
helm/trivy/Chart.yaml
Normal file
11
helm/trivy/Chart.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
apiVersion: v2
|
||||
name: trivy
|
||||
version: 0.4.2
|
||||
appVersion: "0.15.0"
|
||||
description: Trivy helm chart
|
||||
keywords:
|
||||
- scanner
|
||||
- trivy
|
||||
- vulnerability
|
||||
sources:
|
||||
- https://github.com/aquasecurity/trivy
|
||||
88
helm/trivy/README.md
Normal file
88
helm/trivy/README.md
Normal file
@@ -0,0 +1,88 @@
|
||||
# Trivy Scanner
|
||||
|
||||
Trivy vulnerability scanner standalone installation.
|
||||
|
||||
## TL;DR;
|
||||
|
||||
```
|
||||
$ helm install trivy . --namespace trivy --create-namespace
|
||||
```
|
||||
|
||||
## Introduction
|
||||
|
||||
This chart bootstraps a Trivy deployment on a [Kubernetes](http://kubernetes.io) cluster using the
|
||||
[Helm](https://helm.sh) package manager.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Kubernetes 1.12+
|
||||
- Helm 3+
|
||||
|
||||
## Installing the Chart
|
||||
|
||||
To install the chart with the release name `my-release`:
|
||||
|
||||
```
|
||||
$ helm install my-release .
|
||||
```
|
||||
|
||||
The command deploys Trivy on the Kubernetes cluster in the default configuration. The [Parameters](#parameters)
|
||||
section lists the parameters that can be configured during installation.
|
||||
|
||||
> **Tip**: List all releases using `helm list`.
|
||||
|
||||
## Uninstalling the Chart
|
||||
|
||||
To uninstall/delete the `my-release` deployment:
|
||||
|
||||
```
|
||||
$ helm delete my-release
|
||||
```
|
||||
|
||||
The command removes all the Kubernetes components associated with the chart and deletes the release.
|
||||
|
||||
## Parameters
|
||||
|
||||
The following table lists the configurable parameters of the Trivy chart and their default values.
|
||||
|
||||
| Parameter | Description | Default |
|
||||
|---------------------------------------|-------------------------------------------------------------------------|----------------|
|
||||
| `image.registry` | Image registry | `docker.io` |
|
||||
| `image.repository` | Image name | `aquasec/trivy` |
|
||||
| `image.tag` | Image tag | `{TAG_NAME}` |
|
||||
| `image.pullPolicy` | Image pull policy | `IfNotPresent` |
|
||||
| `image.pullSecret` | The name of an imagePullSecret used to pull trivy image from e.g. Docker Hub or a private registry | |
|
||||
| `replicaCount` | Number of Trivy Pods to run | `1` |
|
||||
| `trivy.debugMode` | The flag to enable or disable Trivy debug mode | `false` |
|
||||
| `trivy.gitHubToken` | The GitHub access token to download Trivy DB. More info: https://github.com/aquasecurity/trivy#github-rate-limiting | |
|
||||
| `trivy.skipUpdate` | The flag to enable or disable Trivy DB downloads from GitHub | `false` |
|
||||
| `trivy.cache.redis.enabled` | Enable Redis as caching backend | `false` |
|
||||
| `trivy.cache.redis.url` | Specify redis connection url, e.g. redis://redis.redis.svc:6379 | `` |
|
||||
| `service.type` | Kubernetes service type | `ClusterIP` |
|
||||
| `service.port` | Kubernetes service port | `4954` |
|
||||
| `httpProxy` | The URL of the HTTP proxy server | |
|
||||
| `httpsProxy` | The URL of the HTTPS proxy server | |
|
||||
| `noProxy` | The URLs that the proxy settings do not apply to | |
|
||||
| `nodeSelector` | Node labels for pod assignment | |
|
||||
| `affinity` | Affinity settings for pod assignment | |
|
||||
| `tolerations` | Tolerations for pod assignment | |
|
||||
|
||||
The above parameters map to the env variables defined in [trivy](https://github.com/aquasecurity/trivy#configuration).
|
||||
|
||||
Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
|
||||
|
||||
```
|
||||
$ helm install my-release . \
|
||||
--namespace my-namespace \
|
||||
--set "service.port=9090" \
|
||||
--set "trivy.vulnType=os\,library"
|
||||
```
|
||||
|
||||
## Storage
|
||||
|
||||
This chart uses a PersistentVolumeClaim to reduce the number of database downloads between POD restarts or updates. The storageclass should have the reclaim policy `Retain`.
|
||||
|
||||
## Caching
|
||||
|
||||
You can specify a Redis server as cache backend. This Redis server has to be already present. You can use the [bitname chart](https://bitnami.com/stack/redis/helm).
|
||||
More Information about the caching backends can be found [here](https://github.com/aquasecurity/trivy#specify-cache-backend).
|
||||
2
helm/trivy/templates/NOTES.txt
Normal file
2
helm/trivy/templates/NOTES.txt
Normal file
@@ -0,0 +1,2 @@
|
||||
You should be able to access Trivy server installation within
|
||||
the cluster at http://{{ include "trivy.fullname" . }}.{{ .Release.Namespace }}:{{ .Values.service.port }}
|
||||
55
helm/trivy/templates/_helpers.tpl
Normal file
55
helm/trivy/templates/_helpers.tpl
Normal file
@@ -0,0 +1,55 @@
|
||||
{{/* vim: set filetype=mustache: */}}
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "trivy.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
If release name contains chart name it will be used as a full name.
|
||||
*/}}
|
||||
{{- define "trivy.fullname" -}}
|
||||
{{- if .Values.fullnameOverride -}}
|
||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- if contains $name .Release.Name -}}
|
||||
{{- .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- else -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create chart name and version as used by the chart label.
|
||||
*/}}
|
||||
{{- define "trivy.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "trivy.labels" -}}
|
||||
app.kubernetes.io/name: {{ include "trivy.name" . }}
|
||||
helm.sh/chart: {{ include "trivy.chart" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper imageRef as used by the container template spec.
|
||||
*/}}
|
||||
{{- define "trivy.imageRef" -}}
|
||||
{{- $registryName := .Values.image.registry -}}
|
||||
{{- $repositoryName := .Values.image.repository -}}
|
||||
{{- $tag := .Values.image.tag | toString -}}
|
||||
{{- printf "%s/%s:%s" $registryName $repositoryName $tag -}}
|
||||
{{- end -}}
|
||||
35
helm/trivy/templates/ingress.yaml
Normal file
35
helm/trivy/templates/ingress.yaml
Normal file
@@ -0,0 +1,35 @@
|
||||
{{- if .Values.ingress.enabled -}}
|
||||
{{- $fullName := include "trivy.fullname" . -}}
|
||||
apiVersion: networking.k8s.io/v1beta1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
{{- with .Values.ingress.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .Values.ingress.tls }}
|
||||
tls:
|
||||
{{- range .Values.ingress.tls }}
|
||||
- hosts:
|
||||
{{- range .hosts }}
|
||||
- {{ . | quote }}
|
||||
{{- end }}
|
||||
secretName: {{ .secretName }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
rules:
|
||||
{{- range .Values.ingress.hosts }}
|
||||
- host: {{ .host | quote }}
|
||||
http:
|
||||
paths:
|
||||
- path: /
|
||||
backend:
|
||||
serviceName: {{ $fullName }}
|
||||
servicePort: {{ $.Values.service.port -}}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
38
helm/trivy/templates/podsecuritypolicy.yaml
Normal file
38
helm/trivy/templates/podsecuritypolicy.yaml
Normal file
@@ -0,0 +1,38 @@
|
||||
{{- if .Values.rbac.pspEnabled }}
|
||||
apiVersion: policy/v1beta1
|
||||
kind: PodSecurityPolicy
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
spec:
|
||||
privileged: false
|
||||
allowPrivilegeEscalation: false
|
||||
volumes:
|
||||
- 'configMap'
|
||||
- 'emptyDir'
|
||||
- 'persistentVolumeClaim'
|
||||
- 'secret'
|
||||
- 'projected'
|
||||
- 'downwardAPI'
|
||||
hostNetwork: false
|
||||
hostIPC: false
|
||||
hostPID: false
|
||||
runAsUser:
|
||||
rule: 'MustRunAsNonRoot'
|
||||
seLinux:
|
||||
rule: 'RunAsAny'
|
||||
supplementalGroups:
|
||||
rule: 'MustRunAs'
|
||||
ranges:
|
||||
- min: 1
|
||||
max: 65535
|
||||
fsGroup:
|
||||
rule: 'MustRunAs'
|
||||
ranges:
|
||||
- min: 1
|
||||
max: 65535
|
||||
readOnlyRootFilesystem: true
|
||||
requiredDropCapabilities:
|
||||
- ALL
|
||||
{{- end }}
|
||||
16
helm/trivy/templates/role.yaml
Normal file
16
helm/trivy/templates/role.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
{{- if .Values.rbac.create }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: Role
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
{{- if .Values.rbac.pspEnabled }}
|
||||
rules:
|
||||
- apiGroups: ['policy']
|
||||
resources: ['podsecuritypolicies']
|
||||
verbs: ['use']
|
||||
resourceNames: [{{ include "trivy.fullname" . }}]
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
16
helm/trivy/templates/rolebinding.yaml
Normal file
16
helm/trivy/templates/rolebinding.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
{{- if .Values.rbac.create }}
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
{{- end }}
|
||||
9
helm/trivy/templates/secret.yaml
Normal file
9
helm/trivy/templates/secret.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
type: Opaque
|
||||
data:
|
||||
gitHubToken: {{ .Values.trivy.gitHubToken | default "" | b64enc | quote }}
|
||||
17
helm/trivy/templates/service.yaml
Normal file
17
helm/trivy/templates/service.yaml
Normal file
@@ -0,0 +1,17 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
spec:
|
||||
type: {{ .Values.service.type | default "ClusterIP" }}
|
||||
selector:
|
||||
app.kubernetes.io/name: {{ include "trivy.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
ports:
|
||||
- name: trivy-http
|
||||
protocol: TCP
|
||||
port: {{ .Values.service.port | default 4954 }}
|
||||
targetPort: {{ .Values.service.port | default 4954 }}
|
||||
sessionAffinity: ClientIP
|
||||
7
helm/trivy/templates/serviceaccount.yaml
Normal file
7
helm/trivy/templates/serviceaccount.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
127
helm/trivy/templates/statefulset.yaml
Normal file
127
helm/trivy/templates/statefulset.yaml
Normal file
@@ -0,0 +1,127 @@
|
||||
apiVersion: apps/v1
|
||||
kind: StatefulSet
|
||||
metadata:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
labels:
|
||||
{{ include "trivy.labels" . | indent 4 }}
|
||||
spec:
|
||||
podManagementPolicy: "Parallel"
|
||||
serviceName: {{ include "trivy.fullname" . }}
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
app.kubernetes.io/name: {{ include "trivy.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- if .Values.persistence.enabled }}
|
||||
volumeClaimTemplates:
|
||||
- metadata:
|
||||
name: data
|
||||
spec:
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .Values.persistence.size }}
|
||||
accessModes:
|
||||
- {{ .Values.persistence.accessMode }}
|
||||
storageClassName: {{ .Values.persistence.storageClass }}
|
||||
{{- end }}
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app.kubernetes.io/name: {{ include "trivy.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
spec:
|
||||
serviceAccountName: {{ include "trivy.fullname" . }}
|
||||
automountServiceAccountToken: false
|
||||
{{- if .Values.podSecurityContext }}
|
||||
securityContext:
|
||||
{{ toYaml .Values.podSecurityContext | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.image.pullSecret }}
|
||||
imagePullSecrets:
|
||||
- name: {{ .Values.image.pullSecret }}
|
||||
{{- end }}
|
||||
{{- if .Values.nodeSelector }}
|
||||
nodeSelector:
|
||||
{{ toYaml .Values.nodeSelector | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.tolerations }}
|
||||
tolerations:
|
||||
{{ toYaml .Values.tolerations | indent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity:
|
||||
{{ toYaml .Values.affinity | indent 8 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: main
|
||||
image: {{ template "trivy.imageRef" . }}
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy | quote }}
|
||||
{{- if .Values.securityContext }}
|
||||
securityContext:
|
||||
{{ toYaml .Values.securityContext | indent 12 }}
|
||||
{{- end }}
|
||||
args:
|
||||
- server
|
||||
env:
|
||||
- name: "TRIVY_LISTEN"
|
||||
value: "0.0.0.0:{{ .Values.service.port | default 4954 }}"
|
||||
- name: "TRIVY_CACHE_DIR"
|
||||
value: "/home/scanner/.cache/trivy"
|
||||
{{- if .Values.trivy.cache.redis.enabled }}
|
||||
- name: "TRIVY_CACHE_BACKEND"
|
||||
value: {{ .Values.trivy.cache.redis.url | quote }}
|
||||
{{- end }}
|
||||
- name: "TRIVY_DEBUG"
|
||||
value: {{ .Values.trivy.debugMode | default false | quote }}
|
||||
- name: "TRIVY_SKIP_UPDATE"
|
||||
value: {{ .Values.trivy.skipUpdate | default false | quote }}
|
||||
- name: "GITHUB_TOKEN"
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ include "trivy.fullname" . }}
|
||||
key: gitHubToken
|
||||
- name: "HTTP_PROXY"
|
||||
value: {{ .Values.httpProxy | quote }}
|
||||
- name: "HTTPS_PROXY"
|
||||
value: {{ .Values.httpsProxy | quote }}
|
||||
- name: "NO_PROXY"
|
||||
value: {{ .Values.noProxy | quote }}
|
||||
ports:
|
||||
- name: trivy-http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
scheme: HTTP
|
||||
path: /healthz
|
||||
port: trivy-http
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
failureThreshold: 10
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
scheme: HTTP
|
||||
path: /healthz
|
||||
port: trivy-http
|
||||
initialDelaySeconds: 5
|
||||
periodSeconds: 10
|
||||
successThreshold: 1
|
||||
failureThreshold: 3
|
||||
volumeMounts:
|
||||
- mountPath: /tmp
|
||||
name: tmp-data
|
||||
readOnly: false
|
||||
- mountPath: /home/scanner/.cache
|
||||
name: data
|
||||
readOnly: false
|
||||
{{- if .Values.resources }}
|
||||
resources:
|
||||
{{ toYaml .Values.resources | indent 12 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
- name: tmp-data
|
||||
emptyDir: {}
|
||||
{{- if not .Values.persistence.enabled }}
|
||||
- name: data
|
||||
emptyDir: {}
|
||||
{{- end }}
|
||||
112
helm/trivy/values.yaml
Normal file
112
helm/trivy/values.yaml
Normal file
@@ -0,0 +1,112 @@
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
image:
|
||||
registry: docker.io
|
||||
repository: aquasec/trivy
|
||||
tag: 0.15.0
|
||||
pullPolicy: IfNotPresent
|
||||
pullSecret: ""
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
persistence:
|
||||
enabled: true
|
||||
storageClass: ""
|
||||
accessMode: ReadWriteOnce
|
||||
size: 5Gi
|
||||
|
||||
resources:
|
||||
requests:
|
||||
cpu: 200m
|
||||
memory: 512Mi
|
||||
limits:
|
||||
cpu: 1
|
||||
memory: 1Gi
|
||||
|
||||
rbac:
|
||||
create: true
|
||||
pspEnabled: true
|
||||
|
||||
podSecurityContext:
|
||||
runAsUser: 65534
|
||||
runAsNonRoot: true
|
||||
fsGroup: 65534
|
||||
|
||||
securityContext:
|
||||
privileged: false
|
||||
readOnlyRootFilesystem: true
|
||||
|
||||
## Node labels for pod assignment
|
||||
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
|
||||
nodeSelector: {}
|
||||
|
||||
## Affinity settings for pod assignment
|
||||
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
|
||||
affinity: {}
|
||||
|
||||
## Tolerations for pod assignment
|
||||
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
||||
tolerations: []
|
||||
|
||||
trivy:
|
||||
# debugMode the flag to enable Trivy debug mode
|
||||
debugMode: false
|
||||
# gitHubToken the GitHub access token to download Trivy DB
|
||||
#
|
||||
# Trivy DB contains vulnerability information from NVD, Red Hat, and many other upstream vulnerability databases.
|
||||
# It is downloaded by Trivy from the GitHub release page https://github.com/aquasecurity/trivy-db/releases and cached
|
||||
# in the local file system (`/home/scanner/.cache/trivy/db/trivy.db`). In addition, the database contains the update
|
||||
# timestamp so Trivy can detect whether it should download a newer version from the Internet or use the cached one.
|
||||
# Currently, the database is updated every 12 hours and published as a new release to GitHub.
|
||||
#
|
||||
# Anonymous downloads from GitHub are subject to the limit of 60 requests per hour. Normally such rate limit is enough
|
||||
# for production operations. If, for any reason, it's not enough, you could increase the rate limit to 5000
|
||||
# requests per hour by specifying the GitHub access token. For more details on GitHub rate limiting please consult
|
||||
# https://developer.github.com/v3/#rate-limiting
|
||||
#
|
||||
# You can create a GitHub token by following the instructions in
|
||||
# https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line
|
||||
gitHubToken: ""
|
||||
# skipUpdate the flag to enable or disable Trivy DB downloads from GitHub
|
||||
#
|
||||
# You might want to enable this flag in test or CI/CD environments to avoid GitHub rate limiting issues.
|
||||
# If the flag is enabled you have to manually download the `trivy.db` file and mount it in the
|
||||
# `/home/scanner/.cache/trivy/db/trivy.db` path (see `cacheDir`).
|
||||
skipUpdate: false
|
||||
# Trivy supports filesystem and redis as caching backend
|
||||
# https://github.com/aquasecurity/trivy#specify-cache-backend
|
||||
# This location is only used for the cache, not the db storage: https://github.com/aquasecurity/trivy/issues/765#issue-756010345
|
||||
#
|
||||
# In case you specify redis as backend, make sure you installed a redis server yourself, e.g.
|
||||
# https://bitnami.com/stack/redis/helm
|
||||
#
|
||||
# In case redis is not enabled, the filesystem will be used
|
||||
cache:
|
||||
redis:
|
||||
enabled: false
|
||||
url: "" # e.g. redis://redis.redis.svc:6379
|
||||
|
||||
service:
|
||||
# type Kubernetes service type
|
||||
type: ClusterIP
|
||||
# port Kubernetes service port
|
||||
port: 4954
|
||||
|
||||
ingress:
|
||||
enabled: false
|
||||
annotations: {}
|
||||
# kubernetes.io/ingress.class: nginx
|
||||
hosts:
|
||||
- host: trivy.example.com
|
||||
tls: []
|
||||
# - secretName: trivy-example-tls
|
||||
# hosts:
|
||||
# - trivy.example.com
|
||||
|
||||
# httpProxy the URL of the HTTP proxy server
|
||||
httpProxy:
|
||||
# httpsProxy the URL of the HTTPS proxy server
|
||||
httpsProxy:
|
||||
# noProxy the URLs that the proxy settings do not apply to
|
||||
noProxy:
|
||||
BIN
imgs/logo.png
BIN
imgs/logo.png
Binary file not shown.
|
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 8.7 KiB |
BIN
imgs/usage.gif
BIN
imgs/usage.gif
Binary file not shown.
|
Before Width: | Height: | Size: 3.9 MiB After Width: | Height: | Size: 3.6 MiB |
@@ -12,24 +12,29 @@ import (
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/aquasecurity/trivy/internal"
|
||||
"github.com/docker/go-connections/nat"
|
||||
"github.com/stretchr/testify/assert"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
testcontainers "github.com/testcontainers/testcontainers-go"
|
||||
"github.com/urfave/cli/v2"
|
||||
|
||||
"github.com/aquasecurity/trivy/internal"
|
||||
"github.com/aquasecurity/trivy/pkg/report"
|
||||
)
|
||||
|
||||
type args struct {
|
||||
Format string
|
||||
TemplatePath string
|
||||
Version string
|
||||
IgnoreUnfixed bool
|
||||
Severity []string
|
||||
IgnoreIDs []string
|
||||
Input string
|
||||
ClientToken string
|
||||
ClientTokenHeader string
|
||||
}
|
||||
|
||||
func TestClientServer(t *testing.T) {
|
||||
type args struct {
|
||||
Version string
|
||||
IgnoreUnfixed bool
|
||||
Severity []string
|
||||
IgnoreIDs []string
|
||||
Input string
|
||||
ClientToken string
|
||||
ClientTokenHeader string
|
||||
ServerToken string
|
||||
ServerTokenHeader string
|
||||
}
|
||||
cases := []struct {
|
||||
name string
|
||||
testArgs args
|
||||
@@ -44,18 +49,6 @@ func TestClientServer(t *testing.T) {
|
||||
},
|
||||
golden: "testdata/alpine-310.json.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with token",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/alpine-310.tar.gz",
|
||||
ClientToken: "token",
|
||||
ClientTokenHeader: "Trivy-Token",
|
||||
ServerToken: "token",
|
||||
ServerTokenHeader: "Trivy-Token",
|
||||
},
|
||||
golden: "testdata/alpine-310.json.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with --ignore-unfixed option",
|
||||
testArgs: args{
|
||||
@@ -85,6 +78,26 @@ func TestClientServer(t *testing.T) {
|
||||
},
|
||||
golden: "testdata/alpine-310-ignore-cveids.json.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with gitlab template",
|
||||
testArgs: args{
|
||||
Format: "template",
|
||||
TemplatePath: "@../contrib/gitlab.tpl",
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/alpine-310.tar.gz",
|
||||
},
|
||||
golden: "testdata/alpine-310.gitlab.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with sarif template",
|
||||
testArgs: args{
|
||||
Format: "template",
|
||||
TemplatePath: "@../contrib/sarif.tpl",
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/alpine-310.tar.gz",
|
||||
},
|
||||
golden: "testdata/alpine-310.sarif.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.9 integration",
|
||||
testArgs: args{
|
||||
@@ -160,16 +173,6 @@ func TestClientServer(t *testing.T) {
|
||||
},
|
||||
golden: "testdata/centos-7-ignore-unfixed.json.golden",
|
||||
},
|
||||
{
|
||||
name: "centos 7 integration with critical severity",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
IgnoreUnfixed: true,
|
||||
Severity: []string{"CRITICAL"},
|
||||
Input: "testdata/fixtures/centos-7.tar.gz",
|
||||
},
|
||||
golden: "testdata/centos-7-critical.json.golden",
|
||||
},
|
||||
{
|
||||
name: "centos 7 integration with low and high severity",
|
||||
testArgs: args{
|
||||
@@ -301,6 +304,74 @@ func TestClientServer(t *testing.T) {
|
||||
},
|
||||
golden: "testdata/photon-30.json.golden",
|
||||
},
|
||||
{
|
||||
name: "buxybox with Cargo.lock integration",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/busybox-with-lockfile.tar.gz",
|
||||
},
|
||||
golden: "testdata/busybox-with-lockfile.json.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with ASFF template",
|
||||
testArgs: args{
|
||||
Format: "template",
|
||||
TemplatePath: "@../contrib/asff.tpl",
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/alpine-310.tar.gz",
|
||||
},
|
||||
golden: "testdata/alpine-310.asff.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with html template",
|
||||
testArgs: args{
|
||||
Format: "template",
|
||||
TemplatePath: "@../contrib/html.tpl",
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/alpine-310.tar.gz",
|
||||
},
|
||||
golden: "testdata/alpine-310.html.golden",
|
||||
},
|
||||
}
|
||||
|
||||
app, addr, cacheDir := setup(t, setupOptions{})
|
||||
|
||||
for _, c := range cases {
|
||||
t.Run(c.name, func(t *testing.T) {
|
||||
report.Now = func() time.Time {
|
||||
return time.Date(2020, 8, 10, 7, 28, 17, 958601, time.UTC)
|
||||
}
|
||||
os.Setenv("AWS_REGION", "test-region")
|
||||
os.Setenv("AWS_ACCOUNT_ID", "123456789012")
|
||||
osArgs, outputFile, cleanup := setupClient(t, c.testArgs, addr, cacheDir, c.golden)
|
||||
defer cleanup()
|
||||
|
||||
// Run Trivy client
|
||||
err := app.Run(osArgs)
|
||||
require.NoError(t, err)
|
||||
|
||||
compare(t, c.golden, outputFile)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestClientServerWithToken(t *testing.T) {
|
||||
cases := []struct {
|
||||
name string
|
||||
testArgs args
|
||||
golden string
|
||||
wantErr string
|
||||
}{
|
||||
{
|
||||
name: "alpine 3.10 integration with token",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/alpine-310.tar.gz",
|
||||
ClientToken: "token",
|
||||
ClientTokenHeader: "Trivy-Token",
|
||||
},
|
||||
golden: "testdata/alpine-310.json.golden",
|
||||
},
|
||||
{
|
||||
name: "invalid token",
|
||||
testArgs: args{
|
||||
@@ -308,8 +379,6 @@ func TestClientServer(t *testing.T) {
|
||||
Input: "testdata/fixtures/distroless-base.tar.gz",
|
||||
ClientToken: "invalidtoken",
|
||||
ClientTokenHeader: "Trivy-Token",
|
||||
ServerToken: "token",
|
||||
ServerTokenHeader: "Trivy-Token",
|
||||
},
|
||||
wantErr: "twirp error unauthenticated: invalid token",
|
||||
},
|
||||
@@ -320,47 +389,26 @@ func TestClientServer(t *testing.T) {
|
||||
Input: "testdata/fixtures/distroless-base.tar.gz",
|
||||
ClientToken: "valid-token",
|
||||
ClientTokenHeader: "Trivy-Token",
|
||||
ServerToken: "valid-token",
|
||||
ServerTokenHeader: "Invalid",
|
||||
},
|
||||
wantErr: "twirp error unauthenticated: invalid token",
|
||||
},
|
||||
}
|
||||
|
||||
serverToken := "token"
|
||||
serverTokenHeader := "Trivy-Token"
|
||||
app, addr, cacheDir := setup(t, setupOptions{
|
||||
token: serverToken,
|
||||
tokenHeader: serverTokenHeader,
|
||||
})
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
for _, c := range cases {
|
||||
t.Run(c.name, func(t *testing.T) {
|
||||
// Copy DB file
|
||||
cacheDir, err := gunzipDB()
|
||||
require.NoError(t, err)
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
port, err := getFreePort()
|
||||
require.NoError(t, err, c.name)
|
||||
addr := fmt.Sprintf("localhost:%d", port)
|
||||
|
||||
go func() {
|
||||
// Setup CLI App
|
||||
app := internal.NewApp(c.testArgs.Version)
|
||||
app.Writer = ioutil.Discard
|
||||
osArgs := setupServer(addr, c.testArgs.ServerToken, c.testArgs.ServerTokenHeader, cacheDir)
|
||||
|
||||
// Run Trivy server
|
||||
require.NoError(t, app.Run(osArgs), c.name)
|
||||
}()
|
||||
|
||||
ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)
|
||||
require.NoError(t, waitPort(ctx, addr), c.name)
|
||||
|
||||
// Setup CLI App
|
||||
app := internal.NewApp(c.testArgs.Version)
|
||||
app.Writer = ioutil.Discard
|
||||
|
||||
osArgs, outputFile, cleanup := setupClient(t, c.testArgs.IgnoreUnfixed, c.testArgs.Severity,
|
||||
c.testArgs.IgnoreIDs, addr, c.testArgs.ClientToken, c.testArgs.ClientTokenHeader, c.testArgs.Input, cacheDir, c.golden)
|
||||
osArgs, outputFile, cleanup := setupClient(t, c.testArgs, addr, cacheDir, c.golden)
|
||||
defer cleanup()
|
||||
|
||||
// Run Trivy client
|
||||
err = app.Run(osArgs)
|
||||
err := app.Run(osArgs)
|
||||
|
||||
if c.wantErr != "" {
|
||||
require.NotNil(t, err, c.name)
|
||||
@@ -370,54 +418,139 @@ func TestClientServer(t *testing.T) {
|
||||
assert.NoError(t, err, c.name)
|
||||
}
|
||||
|
||||
// Compare want and got
|
||||
want, err := ioutil.ReadFile(c.golden)
|
||||
assert.NoError(t, err)
|
||||
got, err := ioutil.ReadFile(outputFile)
|
||||
assert.NoError(t, err)
|
||||
|
||||
assert.JSONEq(t, string(want), string(got))
|
||||
compare(t, c.golden, outputFile)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func setupServer(addr, token, tokenHeader, cacheDir string) []string {
|
||||
osArgs := []string{"trivy", "server", "--skip-update", "--cache-dir", cacheDir, "--listen", addr}
|
||||
func TestClientServerWithRedis(t *testing.T) {
|
||||
// Set up a Redis container
|
||||
ctx := context.Background()
|
||||
redisC, addr := setupRedis(t, ctx)
|
||||
|
||||
// Set up Trivy server
|
||||
app, addr, cacheDir := setup(t, setupOptions{cacheBackend: addr})
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
// Test parameters
|
||||
testArgs := args{
|
||||
Version: "dev",
|
||||
Input: "testdata/fixtures/centos-7.tar.gz",
|
||||
}
|
||||
golden := "testdata/centos-7.json.golden"
|
||||
|
||||
t.Run("centos 7", func(t *testing.T) {
|
||||
osArgs, outputFile, cleanup := setupClient(t, testArgs, addr, cacheDir, golden)
|
||||
defer cleanup()
|
||||
|
||||
// Run Trivy client
|
||||
err := app.Run(osArgs)
|
||||
require.NoError(t, err)
|
||||
|
||||
compare(t, golden, outputFile)
|
||||
})
|
||||
|
||||
// Terminate the Redis container
|
||||
require.NoError(t, redisC.Terminate(ctx))
|
||||
|
||||
t.Run("sad path", func(t *testing.T) {
|
||||
osArgs, _, cleanup := setupClient(t, testArgs, addr, cacheDir, golden)
|
||||
defer cleanup()
|
||||
|
||||
// Run Trivy client
|
||||
err := app.Run(osArgs)
|
||||
require.NotNil(t, err)
|
||||
assert.Contains(t, err.Error(), "connect: connection refused")
|
||||
})
|
||||
}
|
||||
|
||||
type setupOptions struct {
|
||||
token string
|
||||
tokenHeader string
|
||||
cacheBackend string
|
||||
}
|
||||
|
||||
func setup(t *testing.T, options setupOptions) (*cli.App, string, string) {
|
||||
t.Helper()
|
||||
version := "dev"
|
||||
|
||||
// Copy DB file
|
||||
cacheDir, err := gunzipDB()
|
||||
assert.NoError(t, err)
|
||||
|
||||
port, err := getFreePort()
|
||||
assert.NoError(t, err)
|
||||
addr := fmt.Sprintf("localhost:%d", port)
|
||||
|
||||
go func() {
|
||||
// Setup CLI App
|
||||
app := internal.NewApp(version)
|
||||
app.Writer = ioutil.Discard
|
||||
osArgs := setupServer(addr, options.token, options.tokenHeader, cacheDir, options.cacheBackend)
|
||||
|
||||
// Run Trivy server
|
||||
app.Run(osArgs)
|
||||
}()
|
||||
|
||||
ctx, _ := context.WithTimeout(context.Background(), 5*time.Second)
|
||||
err = waitPort(ctx, addr)
|
||||
assert.NoError(t, err)
|
||||
|
||||
// Setup CLI App
|
||||
app := internal.NewApp(version)
|
||||
app.Writer = ioutil.Discard
|
||||
|
||||
return app, addr, cacheDir
|
||||
}
|
||||
|
||||
func setupServer(addr, token, tokenHeader, cacheDir, cacheBackend string) []string {
|
||||
osArgs := []string{"trivy", "--cache-dir", cacheDir, "server", "--skip-update", "--listen", addr}
|
||||
if token != "" {
|
||||
osArgs = append(osArgs, []string{"--token", token, "--token-header", tokenHeader}...)
|
||||
}
|
||||
if cacheBackend != "" {
|
||||
osArgs = append(osArgs, "--cache-backend", cacheBackend)
|
||||
}
|
||||
return osArgs
|
||||
}
|
||||
|
||||
func setupClient(t *testing.T, ignoreUnfixed bool, severity, ignoreIDs []string,
|
||||
addr, token, tokenHeader, input, cacheDir, golden string) ([]string, string, func()) {
|
||||
func setupClient(t *testing.T, c args, addr string, cacheDir string, golden string) ([]string, string, func()) {
|
||||
t.Helper()
|
||||
osArgs := []string{"trivy", "client", "--cache-dir", cacheDir,
|
||||
"--format", "json", "--remote", "http://" + addr}
|
||||
if ignoreUnfixed {
|
||||
osArgs := []string{"trivy", "--cache-dir", cacheDir, "client", "--remote", "http://" + addr}
|
||||
|
||||
if c.Format != "" {
|
||||
osArgs = append(osArgs, "--format", c.Format)
|
||||
if c.TemplatePath != "" {
|
||||
osArgs = append(osArgs, "--template", c.TemplatePath)
|
||||
}
|
||||
} else {
|
||||
osArgs = append(osArgs, "--format", "json")
|
||||
}
|
||||
|
||||
if c.IgnoreUnfixed {
|
||||
osArgs = append(osArgs, "--ignore-unfixed")
|
||||
}
|
||||
if len(severity) != 0 {
|
||||
if len(c.Severity) != 0 {
|
||||
osArgs = append(osArgs,
|
||||
[]string{"--severity", strings.Join(severity, ",")}...,
|
||||
[]string{"--severity", strings.Join(c.Severity, ",")}...,
|
||||
)
|
||||
}
|
||||
|
||||
var err error
|
||||
var ignoreTmpDir string
|
||||
if len(ignoreIDs) != 0 {
|
||||
if len(c.IgnoreIDs) != 0 {
|
||||
ignoreTmpDir, err = ioutil.TempDir("", "ignore")
|
||||
require.NoError(t, err, "failed to create a temp dir")
|
||||
trivyIgnore := filepath.Join(ignoreTmpDir, ".trivyignore")
|
||||
err = ioutil.WriteFile(trivyIgnore, []byte(strings.Join(ignoreIDs, "\n")), 0444)
|
||||
err = ioutil.WriteFile(trivyIgnore, []byte(strings.Join(c.IgnoreIDs, "\n")), 0444)
|
||||
require.NoError(t, err, "failed to write .trivyignore")
|
||||
osArgs = append(osArgs, []string{"--ignorefile", trivyIgnore}...)
|
||||
}
|
||||
if token != "" {
|
||||
osArgs = append(osArgs, []string{"--token", token, "--token-header", tokenHeader}...)
|
||||
if c.ClientToken != "" {
|
||||
osArgs = append(osArgs, []string{"--token", c.ClientToken, "--token-header", c.ClientTokenHeader}...)
|
||||
}
|
||||
if input != "" {
|
||||
osArgs = append(osArgs, []string{"--input", input}...)
|
||||
if c.Input != "" {
|
||||
osArgs = append(osArgs, []string{"--input", c.Input}...)
|
||||
}
|
||||
|
||||
// Setup the output file
|
||||
@@ -440,3 +573,44 @@ func setupClient(t *testing.T, ignoreUnfixed bool, severity, ignoreIDs []string,
|
||||
osArgs = append(osArgs, []string{"--output", outputFile}...)
|
||||
return osArgs, outputFile, cleanup
|
||||
}
|
||||
|
||||
func setupRedis(t *testing.T, ctx context.Context) (testcontainers.Container, string) {
|
||||
t.Helper()
|
||||
imageName := "redis:5.0"
|
||||
port := "6379/tcp"
|
||||
req := testcontainers.ContainerRequest{
|
||||
Name: "redis",
|
||||
Image: imageName,
|
||||
ExposedPorts: []string{port},
|
||||
}
|
||||
|
||||
redis, err := testcontainers.GenericContainer(ctx, testcontainers.GenericContainerRequest{
|
||||
ContainerRequest: req,
|
||||
Started: true,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
|
||||
ip, err := redis.Host(ctx)
|
||||
require.NoError(t, err)
|
||||
|
||||
p, err := redis.MappedPort(ctx, nat.Port(port))
|
||||
require.NoError(t, err)
|
||||
|
||||
addr := fmt.Sprintf("redis://%s:%s", ip, p.Port())
|
||||
return redis, addr
|
||||
}
|
||||
|
||||
func compare(t *testing.T, wantFile, gotFile string) {
|
||||
t.Helper()
|
||||
// Compare want and got
|
||||
want, err := ioutil.ReadFile(wantFile)
|
||||
assert.NoError(t, err)
|
||||
got, err := ioutil.ReadFile(gotFile)
|
||||
assert.NoError(t, err)
|
||||
|
||||
if strings.HasSuffix(wantFile, ".json.golden") {
|
||||
assert.JSONEq(t, string(want), string(got))
|
||||
} else {
|
||||
assert.EqualValues(t, string(want), string(got))
|
||||
}
|
||||
}
|
||||
|
||||
23
integration/data/auth_config/config.yml
Normal file
23
integration/data/auth_config/config.yml
Normal file
@@ -0,0 +1,23 @@
|
||||
server:
|
||||
addr: ":5001"
|
||||
certificate: "/certs/cert.pem"
|
||||
key: "/certs/key.pem"
|
||||
|
||||
token:
|
||||
issuer: "Trivy auth server" # Must match issuer in the Registry config.
|
||||
expiration: 900
|
||||
|
||||
users:
|
||||
# Password is specified as a BCrypt hash. Use `htpasswd -nB USERNAME` to generate.
|
||||
"admin":
|
||||
password: "$2y$05$LO.vzwpWC5LZGqThvEfznu8qhb5SGqvBSWY1J3yZ4AxtMRZ3kN5jC" # badmin
|
||||
"test":
|
||||
password: "$2y$05$WuwBasGDAgr.QCbGIjKJaep4dhxeai9gNZdmBnQXqpKly57oNutya" # 123
|
||||
|
||||
acl:
|
||||
- match: {account: "admin"}
|
||||
actions: ["*"]
|
||||
comment: "Admin has full access to everything."
|
||||
- match: {account: "test"}
|
||||
actions: ["pull"]
|
||||
comment: "User \"test\" can pull stuff."
|
||||
18
integration/data/certs/cert.pem
Normal file
18
integration/data/certs/cert.pem
Normal file
@@ -0,0 +1,18 @@
|
||||
-----BEGIN CERTIFICATE-----
|
||||
MIIC+jCCAeKgAwIBAgIRAJLJ5vw48YZwoHlC8i6VdHswDQYJKoZIhvcNAQELBQAw
|
||||
EjEQMA4GA1UEChMHQWNtZSBDbzAeFw0yMDA1MDMxMTU2MzhaFw0yMTA1MDMxMTU2
|
||||
MzhaMBIxEDAOBgNVBAoTB0FjbWUgQ28wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw
|
||||
ggEKAoIBAQDhnepAL1Atd1xVh/TOZpTK7yHwtOrtGWNEqNkFbcyD7x9CNgUkxjO8
|
||||
nc4ynEo4ARpLj+2VDLIwi93weCFj6mcz2tdHi7n0eiPR7+PSNMNpPFwablLOEtaX
|
||||
XVqHhJNsHcJx6okX6ullksJoRnZGu+n1LvGRMMLWjS3UJZA6+1pujoifyrx9YXLU
|
||||
qSjkRRv3Ly8HmAPJq0T19uCZiJ8qbrW1Vx3hdUILL4OlJmpjZvGKMRnolinko2Vk
|
||||
0pHH5MWz0iUbqWQjHZmQWi0rDHRAFbuCqQdmFsEneXmUzExXZbyHwrTH/mrjJTCJ
|
||||
YmtR7Eq80AxsWnXNI3Z0mVQ9/nZDsT31AgMBAAGjSzBJMA4GA1UdDwEB/wQEAwIF
|
||||
oDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMBQGA1UdEQQNMAuC
|
||||
CWxvY2FsaG9zdDANBgkqhkiG9w0BAQsFAAOCAQEAG7spAmpZVKOV913WhKZp8o1+
|
||||
T6v/b6KUOAZ0iWXeGWO7LwnRaulkyauGav9xJUpfEw7Z/57qwTVIGZD6mZF6tt77
|
||||
FsXXiQJA88LrQnt1BRTeNK8sRp4S3N1hrtY3akTit/dyQcfh3NSDttzkYsoUu0qT
|
||||
DUkXD0b4eDmaD47+0Z6eIVp3aEcPMzpiy6qWc5fMjMeHjtYF4lBSF0JTWzmxNUGl
|
||||
fiGhMJStQK/n73t58O7h5Adva5wRV+Km6pa+6SfOxPNUjsxXjG0LzWA9dJg/q2rs
|
||||
k/ouIE05BfB3z538ncQVBTwfPMClbIiJhAs3b6ej22+j/O+vbFBmdfkpVpFRtg==
|
||||
-----END CERTIFICATE-----
|
||||
28
integration/data/certs/key.pem
Normal file
28
integration/data/certs/key.pem
Normal file
@@ -0,0 +1,28 @@
|
||||
-----BEGIN PRIVATE KEY-----
|
||||
MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQDhnepAL1Atd1xV
|
||||
h/TOZpTK7yHwtOrtGWNEqNkFbcyD7x9CNgUkxjO8nc4ynEo4ARpLj+2VDLIwi93w
|
||||
eCFj6mcz2tdHi7n0eiPR7+PSNMNpPFwablLOEtaXXVqHhJNsHcJx6okX6ullksJo
|
||||
RnZGu+n1LvGRMMLWjS3UJZA6+1pujoifyrx9YXLUqSjkRRv3Ly8HmAPJq0T19uCZ
|
||||
iJ8qbrW1Vx3hdUILL4OlJmpjZvGKMRnolinko2Vk0pHH5MWz0iUbqWQjHZmQWi0r
|
||||
DHRAFbuCqQdmFsEneXmUzExXZbyHwrTH/mrjJTCJYmtR7Eq80AxsWnXNI3Z0mVQ9
|
||||
/nZDsT31AgMBAAECggEBAKwwGhSMR3O7sdNxJIvVzF8orE2JtfXoN1OyTZcQGlLi
|
||||
z4d3tOtA/UFJapJDp30gklHy8Y6clu3oASVCebFItyTjMwPehrgn82iI3eWS8URC
|
||||
lcRySG4QAIia7bmZm+2atMi+B40icqhbnlV42VHYnpDKGAEIJtsZ+kz7shzhsj3G
|
||||
yTQMFyuqk0DUmsbSVKPjryv15DXsT9Rk2pVZYFhiRw/gQpWD58GMP/HMrSz+sjuX
|
||||
ZIlhSMGVWA4Yc7le4PpWI2qAZLR+X1EgkzxcMJ0kWvnvzEXFmofaYzkbEcNOlguF
|
||||
Bv9kP5fh35AbQbTLykGO9h4VrfDajlHequzNBJs1z60CgYEA53cwBh42pg/fSmaO
|
||||
sowpFV52ZfbfUPcuXRuaidHWougByB8P8XTMeQTse4NLt+2oat/5rdP3keGr5OR5
|
||||
8q7v8/R/KY0NQOa/93BUeRDW4ntxMECWbC2p/sq2wnRKTl+yepAWrRXzk8z9vFP/
|
||||
TZM5m65aj3IsZ3Bo1WG+SSf8bvsCgYEA+YgFxmiTauKRO4IVPuOqJ88yC5SQ83mF
|
||||
T54ILYalG3yq/Jm1TTOzoZAoKvHrJeeZqQvjS4jSY5gc5TCrUVTdsw5nXtrRKZJs
|
||||
HjtVT78qfzjCSHzImvc3Rw5+SNO2+j9yxuBSAG4tEKD3KKxSodXnKtD4CwzvRdyI
|
||||
gUyjQi3Os88CgYEAgrzegkYkhe2nKKX+6bijJ+/AHl2vy1KifHKv+jJs8nzrLLbm
|
||||
0XIwYBa44BbL+Oqi2yMBKv7z8hEuf03R15KZ9Ahgnv6Nwt/TBBcNj4hEZ45j42ZH
|
||||
0HiGcWTcj78RjW0eKX4jYMZqW0xI8Uvcg1uqCVYUzrsle5ORkxzvVvDf82sCgYEA
|
||||
4hS9tsA1IJhaoaIAgdRf7GWroBZhJlep0zMJkcX2fer8OJVDUMlRLUahPhelx9gI
|
||||
vsLIkz1J8XZ2Z6kq7yuHGp4oRibXb2T8lH+JkhFP/ah9TpPQZacq7DRTcsRvelhW
|
||||
M542bbFlHzXX+X/39i0Jnx9qPQjhGVjwTMYU/Pbn2r0CgYAkwwh2oq6BP3w7/4xe
|
||||
giaW/5zzMA8R9ZXFfkE4OXk2vig8LzUn1IO0JeGLyHQbdg8exYxTU3zygIlSvCQP
|
||||
Zbl0+RB+NHwGOqlpEDdPFXsqi1GAdWOC6FzYtBFNk9WyjFICXjB42wnfIIUQPLU1
|
||||
kQKFaehfx9KR0iW1dnm3vbFlzw==
|
||||
-----END PRIVATE KEY-----
|
||||
117
integration/docker/docker.go
Normal file
117
integration/docker/docker.go
Normal file
@@ -0,0 +1,117 @@
|
||||
package docker
|
||||
|
||||
import (
|
||||
"context"
|
||||
"encoding/base64"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"net/url"
|
||||
"os"
|
||||
|
||||
"github.com/docker/docker/client"
|
||||
|
||||
"github.com/docker/docker/api/types"
|
||||
)
|
||||
|
||||
// RegistryConfig holds the config for docker registry
|
||||
type RegistryConfig struct {
|
||||
URL *url.URL
|
||||
Username string
|
||||
Password string
|
||||
}
|
||||
|
||||
// GetAuthConfig returns the docker registry authConfig
|
||||
func (c RegistryConfig) GetAuthConfig() types.AuthConfig {
|
||||
return types.AuthConfig{
|
||||
Username: c.Username,
|
||||
Password: c.Password,
|
||||
ServerAddress: c.URL.Host,
|
||||
}
|
||||
}
|
||||
|
||||
// GetRegistryAuth returns the json encoded docker registry auth
|
||||
func (c RegistryConfig) GetRegistryAuth() (string, error) {
|
||||
authConfig := types.AuthConfig{
|
||||
Username: c.Username,
|
||||
Password: c.Password,
|
||||
}
|
||||
encodedJSON, err := json.Marshal(authConfig)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return base64.URLEncoding.EncodeToString(encodedJSON), nil
|
||||
}
|
||||
|
||||
// Docker returns docker client
|
||||
type Docker struct {
|
||||
cli *client.Client
|
||||
}
|
||||
|
||||
// New is the factory method to return docker client
|
||||
func New() (Docker, error) {
|
||||
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
|
||||
if err != nil {
|
||||
return Docker{}, err
|
||||
}
|
||||
return Docker{
|
||||
cli: cli,
|
||||
}, nil
|
||||
}
|
||||
|
||||
// ReplicateImage tags the given imagePath and pushes it to the given dest registry.
|
||||
func (d Docker) ReplicateImage(ctx context.Context, imageRef, imagePath string, dest RegistryConfig) error {
|
||||
// remove existing Image if any
|
||||
_, _ = d.cli.ImageRemove(ctx, imageRef, types.ImageRemoveOptions{
|
||||
Force: true,
|
||||
PruneChildren: true,
|
||||
})
|
||||
|
||||
testfile, err := os.Open(imagePath)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// load image into docker engine
|
||||
resp, err := d.cli.ImageLoad(ctx, testfile, true)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if _, err = io.Copy(ioutil.Discard, resp.Body); err != nil {
|
||||
return err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
|
||||
targetImageRef := fmt.Sprintf("%s/%s", dest.URL.Host, imageRef)
|
||||
|
||||
if err = d.cli.ImageTag(ctx, imageRef, targetImageRef); err != nil {
|
||||
return err
|
||||
}
|
||||
defer func() {
|
||||
_, _ = d.cli.ImageRemove(ctx, imageRef, types.ImageRemoveOptions{
|
||||
Force: true,
|
||||
PruneChildren: true,
|
||||
})
|
||||
_, _ = d.cli.ImageRemove(ctx, targetImageRef, types.ImageRemoveOptions{
|
||||
Force: true,
|
||||
PruneChildren: true,
|
||||
})
|
||||
}()
|
||||
|
||||
auth, err := dest.GetRegistryAuth()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
pushOut, err := d.cli.ImagePush(ctx, targetImageRef, types.ImagePushOptions{RegistryAuth: auth})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer pushOut.Close()
|
||||
|
||||
if _, err = io.Copy(ioutil.Discard, pushOut); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
@@ -20,22 +20,33 @@ import (
|
||||
|
||||
func TestRun_WithDockerEngine(t *testing.T) {
|
||||
testCases := []struct {
|
||||
name string
|
||||
imageTag string
|
||||
invalidImage bool
|
||||
ignoreUnfixed bool
|
||||
severity []string
|
||||
ignoreIDs []string
|
||||
testfile string
|
||||
expectedOutputFile string
|
||||
expectedError string
|
||||
name string
|
||||
withImageSubcommand bool
|
||||
imageTag string
|
||||
invalidImage bool
|
||||
ignoreUnfixed bool
|
||||
severity []string
|
||||
ignoreIDs []string
|
||||
testfile string
|
||||
expectedOutputFile string
|
||||
expectedError string
|
||||
}{
|
||||
// All of these cases should pass for either
|
||||
// $ trivy <args>
|
||||
// $ trivy image <args>
|
||||
{
|
||||
name: "happy path, valid image path, alpine:3.10",
|
||||
imageTag: "alpine:3.10",
|
||||
expectedOutputFile: "testdata/alpine-310.json.golden",
|
||||
testfile: "testdata/fixtures/alpine-310.tar.gz",
|
||||
},
|
||||
{
|
||||
name: "happy path, valid image path, with image subcommand, alpine:3.10",
|
||||
withImageSubcommand: true,
|
||||
imageTag: "alpine:3.10",
|
||||
expectedOutputFile: "testdata/alpine-310.json.golden",
|
||||
testfile: "testdata/fixtures/alpine-310.tar.gz",
|
||||
},
|
||||
{
|
||||
name: "happy path, valid image path, alpine:3.10, ignore unfixed",
|
||||
ignoreUnfixed: true,
|
||||
@@ -82,12 +93,6 @@ func TestRun_WithDockerEngine(t *testing.T) {
|
||||
expectedOutputFile: "testdata/centos-6.json.golden",
|
||||
testfile: "testdata/fixtures/centos-6.tar.gz",
|
||||
},
|
||||
{
|
||||
name: "happy path, valid image path, centos:6",
|
||||
imageTag: "centos:6",
|
||||
expectedOutputFile: "testdata/centos-6.json.golden",
|
||||
testfile: "testdata/fixtures/centos-6.tar.gz",
|
||||
},
|
||||
{
|
||||
name: "happy path, valid image path, centos:7",
|
||||
imageTag: "centos:7",
|
||||
@@ -226,27 +231,33 @@ func TestRun_WithDockerEngine(t *testing.T) {
|
||||
expectedOutputFile: "testdata/photon-30.json.golden",
|
||||
testfile: "testdata/fixtures/photon-30.tar.gz",
|
||||
},
|
||||
{
|
||||
name: "buxybox with Cargo.lock integration",
|
||||
imageTag: "busy-cargo:latest",
|
||||
expectedOutputFile: "testdata/busybox-with-lockfile.json.golden",
|
||||
testfile: "testdata/fixtures/busybox-with-lockfile.tar.gz",
|
||||
},
|
||||
{
|
||||
name: "sad path, invalid image",
|
||||
invalidImage: true,
|
||||
testfile: "badimage:latest",
|
||||
expectedError: "unable to access the remote image (index.docker.io/library/badimage:latest)",
|
||||
expectedError: "unable to inspect the image (index.docker.io/library/badimage:latest)",
|
||||
},
|
||||
}
|
||||
|
||||
// Copy DB file
|
||||
cacheDir, err := gunzipDB()
|
||||
require.NoError(t, err)
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
ctx := context.Background()
|
||||
defer ctx.Done()
|
||||
|
||||
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
|
||||
require.NoError(t, err)
|
||||
|
||||
for _, tc := range testCases {
|
||||
t.Run(tc.name, func(t *testing.T) {
|
||||
// Copy DB file
|
||||
cacheDir, err := gunzipDB()
|
||||
require.NoError(t, err)
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
ctx := context.Background()
|
||||
defer ctx.Done()
|
||||
|
||||
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
|
||||
require.NoError(t, err, tc.name)
|
||||
|
||||
if !tc.invalidImage {
|
||||
testfile, err := os.Open(tc.testfile)
|
||||
require.NoError(t, err, tc.name)
|
||||
@@ -273,7 +284,14 @@ func TestRun_WithDockerEngine(t *testing.T) {
|
||||
|
||||
// run trivy
|
||||
app := internal.NewApp("dev")
|
||||
trivyArgs := []string{"trivy", "--skip-update", "--cache-dir", cacheDir, "--format=json"}
|
||||
trivyArgs := []string{"trivy"}
|
||||
trivyArgs = append(trivyArgs, "--cache-dir", cacheDir)
|
||||
if tc.withImageSubcommand {
|
||||
trivyArgs = append(trivyArgs, "image")
|
||||
}
|
||||
|
||||
trivyArgs = append(trivyArgs, []string{"--skip-update", "--format=json", "--output", of.Name()}...)
|
||||
|
||||
if tc.ignoreUnfixed {
|
||||
trivyArgs = append(trivyArgs, "--ignore-unfixed")
|
||||
}
|
||||
@@ -288,9 +306,6 @@ func TestRun_WithDockerEngine(t *testing.T) {
|
||||
assert.NoError(t, err, "failed to write .trivyignore")
|
||||
defer os.Remove(trivyIgnore)
|
||||
}
|
||||
if !tc.invalidImage {
|
||||
trivyArgs = append(trivyArgs, "--output", of.Name())
|
||||
}
|
||||
trivyArgs = append(trivyArgs, tc.testfile)
|
||||
|
||||
err = app.Run(trivyArgs)
|
||||
@@ -298,29 +313,28 @@ func TestRun_WithDockerEngine(t *testing.T) {
|
||||
case tc.expectedError != "":
|
||||
require.NotNil(t, err)
|
||||
assert.Contains(t, err.Error(), tc.expectedError, tc.name)
|
||||
return
|
||||
default:
|
||||
assert.NoError(t, err, tc.name)
|
||||
}
|
||||
|
||||
if !tc.invalidImage {
|
||||
// check for vulnerability output info
|
||||
got, err := ioutil.ReadAll(of)
|
||||
assert.NoError(t, err, tc.name)
|
||||
want, err := ioutil.ReadFile(tc.expectedOutputFile)
|
||||
assert.NoError(t, err, tc.name)
|
||||
assert.JSONEq(t, string(want), string(got), tc.name)
|
||||
// check for vulnerability output info
|
||||
got, err := ioutil.ReadAll(of)
|
||||
assert.NoError(t, err, tc.name)
|
||||
want, err := ioutil.ReadFile(tc.expectedOutputFile)
|
||||
assert.NoError(t, err, tc.name)
|
||||
assert.JSONEq(t, string(want), string(got), tc.name)
|
||||
|
||||
// cleanup
|
||||
_, err = cli.ImageRemove(ctx, tc.testfile, types.ImageRemoveOptions{
|
||||
Force: true,
|
||||
PruneChildren: true,
|
||||
})
|
||||
_, err = cli.ImageRemove(ctx, tc.imageTag, types.ImageRemoveOptions{
|
||||
Force: true,
|
||||
PruneChildren: true,
|
||||
})
|
||||
assert.NoError(t, err, tc.name)
|
||||
}
|
||||
// cleanup
|
||||
_, err = cli.ImageRemove(ctx, tc.testfile, types.ImageRemoveOptions{
|
||||
Force: true,
|
||||
PruneChildren: true,
|
||||
})
|
||||
_, err = cli.ImageRemove(ctx, tc.imageTag, types.ImageRemoveOptions{
|
||||
Force: true,
|
||||
PruneChildren: true,
|
||||
})
|
||||
assert.NoError(t, err, tc.name)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
// +rbuild integration
|
||||
// +build integration
|
||||
|
||||
package integration
|
||||
|
||||
import (
|
||||
"compress/gzip"
|
||||
"context"
|
||||
"encoding/json"
|
||||
"flag"
|
||||
"io"
|
||||
"io/ioutil"
|
||||
@@ -13,8 +14,6 @@ import (
|
||||
"path/filepath"
|
||||
"time"
|
||||
|
||||
dbFile "github.com/aquasecurity/trivy/pkg/db"
|
||||
|
||||
"github.com/aquasecurity/trivy-db/pkg/db"
|
||||
"github.com/spf13/afero"
|
||||
)
|
||||
@@ -53,7 +52,9 @@ func gunzipDB() (string, error) {
|
||||
return "", err
|
||||
}
|
||||
|
||||
err = dbFile.NewMetadata(afero.NewOsFs(), tmpDir).Store(db.Metadata{
|
||||
fs := afero.NewOsFs()
|
||||
metadataFile := filepath.Join(dbDir, "metadata.json")
|
||||
b, err := json.Marshal(db.Metadata{
|
||||
Version: 1,
|
||||
Type: 1,
|
||||
NextUpdate: time.Time{},
|
||||
@@ -62,6 +63,10 @@ func gunzipDB() (string, error) {
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
err = afero.WriteFile(fs, metadataFile, b, 0600)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
return tmpDir, nil
|
||||
}
|
||||
|
||||
353
integration/registry_test.go
Normal file
353
integration/registry_test.go
Normal file
@@ -0,0 +1,353 @@
|
||||
// +build integration
|
||||
|
||||
package integration
|
||||
|
||||
import (
|
||||
"context"
|
||||
"crypto/tls"
|
||||
"crypto/x509"
|
||||
"encoding/json"
|
||||
"fmt"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"testing"
|
||||
|
||||
"github.com/docker/go-connections/nat"
|
||||
"github.com/google/go-containerregistry/pkg/name"
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
testcontainers "github.com/testcontainers/testcontainers-go"
|
||||
"github.com/testcontainers/testcontainers-go/wait"
|
||||
|
||||
_ "github.com/aquasecurity/fanal/analyzer"
|
||||
testdocker "github.com/aquasecurity/trivy/integration/docker"
|
||||
"github.com/aquasecurity/trivy/internal"
|
||||
"github.com/aquasecurity/trivy/pkg/report"
|
||||
)
|
||||
|
||||
const (
|
||||
registryImage = "registry:2"
|
||||
registryPort = "5443/tcp"
|
||||
|
||||
authImage = "cesanta/docker_auth:1"
|
||||
authPort = "5001/tcp"
|
||||
authUsername = "admin"
|
||||
authPassword = "badmin"
|
||||
)
|
||||
|
||||
func setupRegistry(ctx context.Context, baseDir string, authURL *url.URL) (testcontainers.Container, error) {
|
||||
req := testcontainers.ContainerRequest{
|
||||
Name: "registry",
|
||||
Image: registryImage,
|
||||
ExposedPorts: []string{registryPort},
|
||||
Env: map[string]string{
|
||||
"REGISTRY_HTTP_ADDR": "0.0.0.0:5443",
|
||||
"REGISTRY_HTTP_TLS_CERTIFICATE": "/certs/cert.pem",
|
||||
"REGISTRY_HTTP_TLS_KEY": "/certs/key.pem",
|
||||
"REGISTRY_AUTH": "token",
|
||||
"REGISTRY_AUTH_TOKEN_REALM": fmt.Sprintf("%s/auth", authURL),
|
||||
"REGISTRY_AUTH_TOKEN_SERVICE": "registry.docker.io",
|
||||
"REGISTRY_AUTH_TOKEN_ISSUER": "Trivy auth server",
|
||||
"REGISTRY_AUTH_TOKEN_ROOTCERTBUNDLE": "/certs/cert.pem",
|
||||
},
|
||||
BindMounts: map[string]string{
|
||||
filepath.Join(baseDir, "data", "certs"): "/certs",
|
||||
},
|
||||
WaitingFor: wait.ForLog("listening on [::]:5443"),
|
||||
}
|
||||
|
||||
registryC, err := testcontainers.GenericContainer(ctx, testcontainers.GenericContainerRequest{
|
||||
ContainerRequest: req,
|
||||
Started: true,
|
||||
})
|
||||
return registryC, err
|
||||
}
|
||||
|
||||
func setupAuthServer(ctx context.Context, baseDir string) (testcontainers.Container, error) {
|
||||
req := testcontainers.ContainerRequest{
|
||||
Name: "docker_auth",
|
||||
Image: authImage,
|
||||
ExposedPorts: []string{authPort},
|
||||
BindMounts: map[string]string{
|
||||
filepath.Join(baseDir, "data", "auth_config"): "/config",
|
||||
filepath.Join(baseDir, "data", "certs"): "/certs",
|
||||
},
|
||||
Cmd: []string{"/config/config.yml"},
|
||||
}
|
||||
|
||||
authC, err := testcontainers.GenericContainer(ctx, testcontainers.GenericContainerRequest{
|
||||
ContainerRequest: req,
|
||||
Started: true,
|
||||
})
|
||||
return authC, err
|
||||
}
|
||||
|
||||
func getURL(ctx context.Context, container testcontainers.Container, exposedPort nat.Port) (*url.URL, error) {
|
||||
ip, err := container.Host(ctx)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
port, err := container.MappedPort(ctx, exposedPort)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
urlStr := fmt.Sprintf("https://%s:%s", ip, port.Port())
|
||||
return url.Parse(urlStr)
|
||||
}
|
||||
|
||||
type registryOption struct {
|
||||
AuthURL *url.URL
|
||||
Username string
|
||||
Password string
|
||||
RegistryToken bool
|
||||
}
|
||||
|
||||
func TestRegistry(t *testing.T) {
|
||||
ctx := context.Background()
|
||||
|
||||
baseDir, err := filepath.Abs(".")
|
||||
require.NoError(t, err)
|
||||
|
||||
// set up auth server
|
||||
authC, err := setupAuthServer(ctx, baseDir)
|
||||
require.NoError(t, err)
|
||||
defer authC.Terminate(ctx)
|
||||
|
||||
authURL, err := getURL(ctx, authC, authPort)
|
||||
require.NoError(t, err)
|
||||
|
||||
// set up registry
|
||||
registryC, err := setupRegistry(ctx, baseDir, authURL)
|
||||
require.NoError(t, err)
|
||||
defer registryC.Terminate(ctx)
|
||||
|
||||
registryURL, err := getURL(ctx, registryC, registryPort)
|
||||
require.NoError(t, err)
|
||||
|
||||
config := testdocker.RegistryConfig{
|
||||
URL: registryURL,
|
||||
Username: authUsername,
|
||||
Password: authPassword,
|
||||
}
|
||||
|
||||
testCases := []struct {
|
||||
name string
|
||||
imageName string
|
||||
imageFile string
|
||||
option registryOption
|
||||
golden string
|
||||
wantErr string
|
||||
}{
|
||||
{
|
||||
name: "happy path with username/password",
|
||||
imageName: "alpine:3.10",
|
||||
imageFile: "testdata/fixtures/alpine-310.tar.gz",
|
||||
option: registryOption{
|
||||
AuthURL: authURL,
|
||||
Username: authUsername,
|
||||
Password: authPassword,
|
||||
},
|
||||
golden: "testdata/alpine-310-registry.json.golden",
|
||||
},
|
||||
{
|
||||
name: "happy path with registry token",
|
||||
imageName: "alpine:3.10",
|
||||
imageFile: "testdata/fixtures/alpine-310.tar.gz",
|
||||
option: registryOption{
|
||||
AuthURL: authURL,
|
||||
Username: authUsername,
|
||||
Password: authPassword,
|
||||
RegistryToken: true,
|
||||
},
|
||||
golden: "testdata/alpine-310-registry.json.golden",
|
||||
},
|
||||
{
|
||||
name: "sad path",
|
||||
imageName: "alpine:3.10",
|
||||
imageFile: "testdata/fixtures/alpine-310.tar.gz",
|
||||
wantErr: "unsupported status code 401; body: Auth failed",
|
||||
},
|
||||
}
|
||||
|
||||
for _, tc := range testCases {
|
||||
t.Run(tc.name, func(t *testing.T) {
|
||||
d, err := testdocker.New()
|
||||
require.NoError(t, err)
|
||||
|
||||
s := fmt.Sprintf("%s/%s", registryURL.Host, tc.imageName)
|
||||
imageRef, err := name.ParseReference(s)
|
||||
require.NoError(t, err)
|
||||
|
||||
// 1. Load a test image from the tar file, tag it and push to the test registry.
|
||||
err = d.ReplicateImage(ctx, tc.imageName, tc.imageFile, config)
|
||||
require.NoError(t, err)
|
||||
|
||||
// 2. Scan it
|
||||
resultFile, cleanup, err := scan(imageRef, baseDir, tc.golden, tc.option)
|
||||
|
||||
if tc.wantErr != "" {
|
||||
require.NotNil(t, err)
|
||||
require.Contains(t, err.Error(), tc.wantErr, err)
|
||||
return
|
||||
} else {
|
||||
require.NoError(t, err)
|
||||
}
|
||||
defer cleanup()
|
||||
|
||||
// 3. Compare want and got
|
||||
golden, err := os.Open(tc.golden)
|
||||
assert.NoError(t, err)
|
||||
|
||||
var want report.Results
|
||||
err = json.NewDecoder(golden).Decode(&want)
|
||||
require.NoError(t, err)
|
||||
|
||||
result, err := os.Open(resultFile)
|
||||
assert.NoError(t, err)
|
||||
|
||||
var got report.Results
|
||||
err = json.NewDecoder(result).Decode(&got)
|
||||
require.NoError(t, err)
|
||||
|
||||
assert.Equal(t, want[0].Vulnerabilities, got[0].Vulnerabilities)
|
||||
assert.Equal(t, want[0].Vulnerabilities, got[0].Vulnerabilities)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func scan(imageRef name.Reference, baseDir, goldenFile string, opt registryOption) (string, func(), error) {
|
||||
cleanup := func() {}
|
||||
|
||||
// Copy DB file
|
||||
cacheDir, err := gunzipDB()
|
||||
if err != nil {
|
||||
return "", cleanup, err
|
||||
}
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
// Setup the output file
|
||||
var outputFile string
|
||||
if *update && goldenFile != "" {
|
||||
outputFile = goldenFile
|
||||
} else {
|
||||
output, err := ioutil.TempFile("", "integration")
|
||||
if err != nil {
|
||||
return "", cleanup, err
|
||||
}
|
||||
defer output.Close()
|
||||
|
||||
outputFile = output.Name()
|
||||
cleanup = func() {
|
||||
os.Remove(outputFile)
|
||||
}
|
||||
}
|
||||
|
||||
// Setup env
|
||||
if err = setupEnv(imageRef, baseDir, opt); err != nil {
|
||||
return "", cleanup, err
|
||||
}
|
||||
defer unsetEnv()
|
||||
|
||||
// Setup CLI App
|
||||
app := internal.NewApp("dev")
|
||||
app.Writer = ioutil.Discard
|
||||
|
||||
osArgs := []string{"trivy", "--cache-dir", cacheDir, "--format", "json", "--skip-update", "--output", outputFile, imageRef.Name()}
|
||||
|
||||
// Run Trivy
|
||||
if err = app.Run(osArgs); err != nil {
|
||||
return "", cleanup, err
|
||||
}
|
||||
return outputFile, cleanup, nil
|
||||
}
|
||||
|
||||
func setupEnv(imageRef name.Reference, baseDir string, opt registryOption) error {
|
||||
if err := os.Setenv("TRIVY_INSECURE", "true"); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if opt.Username != "" && opt.Password != "" {
|
||||
if opt.RegistryToken {
|
||||
// Get a registry token in advance
|
||||
token, err := requestRegistryToken(imageRef, baseDir, opt)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if err := os.Setenv("TRIVY_REGISTRY_TOKEN", token); err != nil {
|
||||
return err
|
||||
}
|
||||
} else {
|
||||
if err := os.Setenv("TRIVY_USERNAME", opt.Username); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := os.Setenv("TRIVY_PASSWORD", opt.Password); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func unsetEnv() error {
|
||||
envs := []string{"TRIVY_INSECURE", "TRIVY_USERNAME", "TRIVY_PASSWORD", "TRIVY_REGISTRY_TOKEN"}
|
||||
for _, e := range envs {
|
||||
if err := os.Unsetenv(e); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func requestRegistryToken(imageRef name.Reference, baseDir string, opt registryOption) (string, error) {
|
||||
// Create a CA certificate pool and add cert.pem to it
|
||||
caCert, err := ioutil.ReadFile(filepath.Join(baseDir, "data", "certs", "cert.pem"))
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
caCertPool := x509.NewCertPool()
|
||||
caCertPool.AppendCertsFromPEM(caCert)
|
||||
|
||||
// Create a HTTPS client and supply the created CA pool
|
||||
client := &http.Client{
|
||||
Transport: &http.Transport{
|
||||
TLSClientConfig: &tls.Config{
|
||||
RootCAs: caCertPool,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
// Get a registry token
|
||||
req, err := http.NewRequest("GET", fmt.Sprintf("%s/auth", opt.AuthURL), nil)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
// Set query parameters
|
||||
values := req.URL.Query()
|
||||
values.Set("service", "registry.docker.io")
|
||||
values.Set("scope", imageRef.Scope("pull"))
|
||||
req.URL.RawQuery = values.Encode()
|
||||
|
||||
req.SetBasicAuth(opt.Username, opt.Password)
|
||||
resp, err := client.Do(req)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
|
||||
type res struct {
|
||||
AccessToken string `json:"access_token"`
|
||||
}
|
||||
|
||||
var r res
|
||||
if err = json.NewDecoder(resp.Body).Decode(&r); err != nil {
|
||||
return "", err
|
||||
}
|
||||
|
||||
return r.AccessToken, nil
|
||||
}
|
||||
@@ -8,22 +8,24 @@ import (
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
"github.com/aquasecurity/trivy/internal"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestRun_WithTar(t *testing.T) {
|
||||
type args struct {
|
||||
Version string
|
||||
SkipUpdate bool
|
||||
IgnoreUnfixed bool
|
||||
Severity []string
|
||||
IgnoreIDs []string
|
||||
Format string
|
||||
Input string
|
||||
Version string
|
||||
WithImageSubcommand bool
|
||||
SkipUpdate bool
|
||||
IgnoreUnfixed bool
|
||||
Severity []string
|
||||
IgnoreIDs []string
|
||||
Format string
|
||||
Input string
|
||||
SkipDirs []string
|
||||
SkipFiles []string
|
||||
}
|
||||
cases := []struct {
|
||||
name string
|
||||
@@ -40,6 +42,17 @@ func TestRun_WithTar(t *testing.T) {
|
||||
},
|
||||
golden: "testdata/alpine-310.json.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with image subcommand",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
WithImageSubcommand: true,
|
||||
SkipUpdate: true,
|
||||
Format: "json",
|
||||
Input: "testdata/fixtures/alpine-310.tar.gz",
|
||||
},
|
||||
golden: "testdata/alpine-310.json.golden",
|
||||
},
|
||||
{
|
||||
name: "alpine 3.10 integration with --ignore-unfixed option",
|
||||
testArgs: args{
|
||||
@@ -168,18 +181,6 @@ func TestRun_WithTar(t *testing.T) {
|
||||
},
|
||||
golden: "testdata/centos-7-ignore-unfixed.json.golden",
|
||||
},
|
||||
{
|
||||
name: "centos 7 integration with critical severity",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
SkipUpdate: true,
|
||||
IgnoreUnfixed: true,
|
||||
Severity: []string{"CRITICAL"},
|
||||
Format: "json",
|
||||
Input: "testdata/fixtures/centos-7.tar.gz",
|
||||
},
|
||||
golden: "testdata/centos-7-critical.json.golden",
|
||||
},
|
||||
{
|
||||
name: "centos 7 integration with low and high severity",
|
||||
testArgs: args{
|
||||
@@ -343,20 +344,53 @@ func TestRun_WithTar(t *testing.T) {
|
||||
},
|
||||
golden: "testdata/photon-30.json.golden",
|
||||
},
|
||||
{
|
||||
name: "buxybox with Cargo.lock integration",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
SkipUpdate: true,
|
||||
Format: "json",
|
||||
Input: "testdata/fixtures/busybox-with-lockfile.tar.gz",
|
||||
},
|
||||
golden: "testdata/busybox-with-lockfile.json.golden",
|
||||
},
|
||||
{
|
||||
name: "fluentd with multiple lock files",
|
||||
testArgs: args{
|
||||
Version: "dev",
|
||||
SkipUpdate: true,
|
||||
IgnoreUnfixed: true,
|
||||
Format: "json",
|
||||
Input: "testdata/fixtures/fluentd-multiple-lockfiles.tar.gz",
|
||||
SkipFiles: []string{"/Gemfile.lock"},
|
||||
SkipDirs: []string{
|
||||
"/var/lib/gems/2.5.0/gems/http_parser.rb-0.6.0",
|
||||
"/var/lib/gems/2.5.0/gems/fluent-plugin-detect-exceptions-0.0.13",
|
||||
},
|
||||
},
|
||||
golden: "testdata/fluentd-multiple-lockfiles.json.golden",
|
||||
},
|
||||
}
|
||||
|
||||
// Copy DB file
|
||||
cacheDir, err := gunzipDB()
|
||||
require.NoError(t, err)
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
// Setup CLI App
|
||||
app := internal.NewApp("dev")
|
||||
app.Writer = ioutil.Discard
|
||||
|
||||
for _, c := range cases {
|
||||
t.Run(c.name, func(t *testing.T) {
|
||||
// Copy DB file
|
||||
cacheDir, err := gunzipDB()
|
||||
require.NoError(t, err)
|
||||
defer os.RemoveAll(cacheDir)
|
||||
|
||||
// Setup CLI App
|
||||
app := internal.NewApp(c.testArgs.Version)
|
||||
app.Writer = ioutil.Discard
|
||||
osArgs := []string{"trivy"}
|
||||
osArgs = append(osArgs, "--cache-dir", cacheDir)
|
||||
if c.testArgs.WithImageSubcommand {
|
||||
osArgs = append(osArgs, "image")
|
||||
}
|
||||
osArgs = append(osArgs, "--format", c.testArgs.Format)
|
||||
|
||||
osArgs := []string{"trivy", "--cache-dir", cacheDir, "--format", c.testArgs.Format}
|
||||
if c.testArgs.SkipUpdate {
|
||||
osArgs = append(osArgs, "--skip-update")
|
||||
}
|
||||
@@ -375,7 +409,14 @@ func TestRun_WithTar(t *testing.T) {
|
||||
defer os.Remove(trivyIgnore)
|
||||
}
|
||||
if c.testArgs.Input != "" {
|
||||
osArgs = append(osArgs, []string{"--input", c.testArgs.Input}...)
|
||||
osArgs = append(osArgs, "--input", c.testArgs.Input)
|
||||
}
|
||||
|
||||
if len(c.testArgs.SkipFiles) != 0 {
|
||||
osArgs = append(osArgs, "--skip-files", strings.Join(c.testArgs.SkipFiles, ","))
|
||||
}
|
||||
if len(c.testArgs.SkipDirs) != 0 {
|
||||
osArgs = append(osArgs, "--skip-dirs", strings.Join(c.testArgs.SkipDirs, ","))
|
||||
}
|
||||
|
||||
// Setup the output file
|
||||
@@ -1,18 +1,76 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Type": "alpine",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
@@ -23,7 +81,91 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,18 +1,34 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Type": "alpine",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
@@ -20,19 +36,78 @@
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
@@ -42,19 +117,36 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
@@ -65,7 +157,167 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,18 +1,34 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Type": "alpine",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
@@ -20,19 +36,78 @@
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
@@ -42,7 +117,127 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
332
integration/testdata/alpine-310-registry.json.golden
vendored
Normal file
332
integration/testdata/alpine-310-registry.json.golden
vendored
Normal file
@@ -0,0 +1,332 @@
|
||||
[
|
||||
{
|
||||
"Target": "localhost:32799/alpine:3.10 (alpine 3.10.2)",
|
||||
"Type": "alpine",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"Digest": "sha256:9d48c3bd43c520dc2784e868a780e976b207cbf493eaff8c6596eb871cbd9609",
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
370
integration/testdata/alpine-310.asff.golden
vendored
Normal file
370
integration/testdata/alpine-310.asff.golden
vendored
Normal file
@@ -0,0 +1,370 @@
|
||||
[
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1549",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 4,
|
||||
"Normalized": 40
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1549 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1549"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1549",
|
||||
"CVE Title": "openssl: information disclosure in fork()",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r0",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "5",
|
||||
"NvdCvssVectorV2": "AV:N/AC:L/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
},
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1551",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 4,
|
||||
"Normalized": 40
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1551 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1551"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1551",
|
||||
"CVE Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r2",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "5",
|
||||
"NvdCvssVectorV2": "AV:N/AC:L/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
},
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1563",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 4,
|
||||
"Normalized": 40
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1563 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1563"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1563",
|
||||
"CVE Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r0",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "4.3",
|
||||
"NvdCvssVectorV2": "AV:N/AC:M/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
},
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1547",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 1,
|
||||
"Normalized": 10
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1547 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1547"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1547",
|
||||
"CVE Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r0",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "1.9",
|
||||
"NvdCvssVectorV2": "AV:L/AC:M/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
},
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1549",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 4,
|
||||
"Normalized": 40
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1549 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1549"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1549",
|
||||
"CVE Title": "openssl: information disclosure in fork()",
|
||||
"PkgName": "libssl1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r0",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "5",
|
||||
"NvdCvssVectorV2": "AV:N/AC:L/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
},
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1551",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 4,
|
||||
"Normalized": 40
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1551 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1551"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1551",
|
||||
"CVE Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"PkgName": "libssl1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r2",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "5",
|
||||
"NvdCvssVectorV2": "AV:N/AC:L/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
},
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1563",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 4,
|
||||
"Normalized": 40
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1563 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1563"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1563",
|
||||
"CVE Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"PkgName": "libssl1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r0",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "4.3",
|
||||
"NvdCvssVectorV2": "AV:N/AC:M/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
},
|
||||
{
|
||||
"SchemaVersion": "2018-10-08",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)/CVE-2019-1547",
|
||||
"ProductArn": "arn:aws:securityhub:test-region::product/aquasecurity/aquasecurity",
|
||||
"GeneratorId": "Trivy",
|
||||
"AwsAccountId": "123456789012",
|
||||
"Types": [ "Software and Configuration Checks/Vulnerabilities/CVE" ],
|
||||
"CreatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"UpdatedAt": "2020-08-10T07:28:17.000958601Z",
|
||||
"Severity": {
|
||||
"Product": 1,
|
||||
"Normalized": 10
|
||||
},
|
||||
"Title": "Trivy found a vulnerability to CVE-2019-1547 in container testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Remediation": {
|
||||
"Recommendation": {
|
||||
"Text": "More information on this vulnerability is provided in the hyperlink",
|
||||
"Url": "https://avd.aquasec.com/nvd/cve-2019-1547"
|
||||
}
|
||||
},
|
||||
"ProductFields": { "Product Name": "Trivy" },
|
||||
"Resources": [
|
||||
{
|
||||
"Type": "Container",
|
||||
"Id": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Partition": "aws",
|
||||
"Region": "test-region",
|
||||
"Details": {
|
||||
"Container": { "ImageName": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)" },
|
||||
"Other": {
|
||||
"CVE ID": "CVE-2019-1547",
|
||||
"CVE Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"PkgName": "libssl1.1",
|
||||
"Installed Package": "1.1.1c-r0",
|
||||
"Patched Package": "1.1.1d-r0",
|
||||
"NvdCvssScoreV3": "0",
|
||||
"NvdCvssVectorV3": "",
|
||||
"NvdCvssScoreV2": "1.9",
|
||||
"NvdCvssVectorV2": "AV:L/AC:M/Au:N/C:P/I:N/A:N"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"RecordState": "ACTIVE"
|
||||
}
|
||||
]
|
||||
414
integration/testdata/alpine-310.gitlab.golden
vendored
Normal file
414
integration/testdata/alpine-310.gitlab.golden
vendored
Normal file
@@ -0,0 +1,414 @@
|
||||
{
|
||||
"version": "2.3",
|
||||
"vulnerabilities": [
|
||||
{
|
||||
"id": "CVE-2019-1549",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: information disclosure in fork()",
|
||||
"description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"cve": "CVE-2019-1549",
|
||||
"severity": "Medium",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libcrypto1.1 to 1.1.1d-r0",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libcrypto1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1549",
|
||||
"value": "CVE-2019-1549",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1549"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be"
|
||||
},{
|
||||
"url": "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20190919-0002/"
|
||||
},{
|
||||
"url": "https://support.f5.com/csp/article/K44070243"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20190910.txt"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CVE-2019-1551",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"cve": "CVE-2019-1551",
|
||||
"severity": "Medium",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libcrypto1.1 to 1.1.1d-r2",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libcrypto1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1551",
|
||||
"value": "CVE-2019-1551",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1551"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html"
|
||||
},{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98"
|
||||
},{
|
||||
"url": "https://github.com/openssl/openssl/pull/10575"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Dec/39"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Dec/46"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20191210-0001/"
|
||||
},{
|
||||
"url": "https://www.debian.org/security/2019/dsa-4594"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20191206.txt"
|
||||
},{
|
||||
"url": "https://www.tenable.com/security/tns-2019-09"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CVE-2019-1563",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"cve": "CVE-2019-1563",
|
||||
"severity": "Medium",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libcrypto1.1 to 1.1.1d-r0",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libcrypto1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1563",
|
||||
"value": "CVE-2019-1563",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1563"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html"
|
||||
},{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Sep/25"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20190919-0002/"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20190910.txt"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CVE-2019-1547",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: side-channel weak encryption vulnerability",
|
||||
"description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"cve": "CVE-2019-1547",
|
||||
"severity": "Low",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libcrypto1.1 to 1.1.1d-r0",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libcrypto1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1547",
|
||||
"value": "CVE-2019-1547",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1547"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html"
|
||||
},{
|
||||
"url": "https://arxiv.org/abs/1909.01785"
|
||||
},{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Sep/25"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20190919-0002/"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20190910.txt"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CVE-2019-1549",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: information disclosure in fork()",
|
||||
"description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"cve": "CVE-2019-1549",
|
||||
"severity": "Medium",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libssl1.1 to 1.1.1d-r0",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libssl1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1549",
|
||||
"value": "CVE-2019-1549",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1549"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be"
|
||||
},{
|
||||
"url": "https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20190919-0002/"
|
||||
},{
|
||||
"url": "https://support.f5.com/csp/article/K44070243"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20190910.txt"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CVE-2019-1551",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"cve": "CVE-2019-1551",
|
||||
"severity": "Medium",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libssl1.1 to 1.1.1d-r2",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libssl1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1551",
|
||||
"value": "CVE-2019-1551",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1551"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html"
|
||||
},{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98"
|
||||
},{
|
||||
"url": "https://github.com/openssl/openssl/pull/10575"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Dec/39"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Dec/46"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20191210-0001/"
|
||||
},{
|
||||
"url": "https://www.debian.org/security/2019/dsa-4594"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20191206.txt"
|
||||
},{
|
||||
"url": "https://www.tenable.com/security/tns-2019-09"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CVE-2019-1563",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"cve": "CVE-2019-1563",
|
||||
"severity": "Medium",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libssl1.1 to 1.1.1d-r0",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libssl1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1563",
|
||||
"value": "CVE-2019-1563",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1563"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html"
|
||||
},{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Sep/25"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20190919-0002/"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20190910.txt"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "CVE-2019-1547",
|
||||
"category": "container_scanning",
|
||||
"message": "openssl: side-channel weak encryption vulnerability",
|
||||
"description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"cve": "CVE-2019-1547",
|
||||
"severity": "Low",
|
||||
"confidence": "Unknown",
|
||||
"solution": "Upgrade libssl1.1 to 1.1.1d-r0",
|
||||
"scanner": {
|
||||
"id": "trivy",
|
||||
"name": "trivy"
|
||||
},
|
||||
"location": {
|
||||
"dependency": {
|
||||
"package": {
|
||||
"name": "libssl1.1"
|
||||
},
|
||||
"version": "1.1.1c-r0"
|
||||
},
|
||||
"operating_system": "Unknown",
|
||||
"image": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)"
|
||||
},
|
||||
"identifiers": [
|
||||
{
|
||||
"type": "cve",
|
||||
"name": "CVE-2019-1547",
|
||||
"value": "CVE-2019-1547",
|
||||
"url": "https://avd.aquasec.com/nvd/cve-2019-1547"
|
||||
}
|
||||
],
|
||||
"links": [{
|
||||
"url": "http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html"
|
||||
},{
|
||||
"url": "https://arxiv.org/abs/1909.01785"
|
||||
},{
|
||||
"url": "https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8"
|
||||
},{
|
||||
"url": "https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a"
|
||||
},{
|
||||
"url": "https://seclists.org/bugtraq/2019/Sep/25"
|
||||
},{
|
||||
"url": "https://security.netapp.com/advisory/ntap-20190919-0002/"
|
||||
},{
|
||||
"url": "https://www.openssl.org/news/secadv/20190910.txt"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"remediations": []
|
||||
}
|
||||
237
integration/testdata/alpine-310.html.golden
vendored
Normal file
237
integration/testdata/alpine-310.html.golden
vendored
Normal file
@@ -0,0 +1,237 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<style>
|
||||
* {
|
||||
font-family: Arial, Helvetica, sans-serif;
|
||||
}
|
||||
h1 {
|
||||
text-align: center;
|
||||
}
|
||||
.group-header th {
|
||||
font-size: 200%;
|
||||
}
|
||||
.sub-header th {
|
||||
font-size: 150%;
|
||||
}
|
||||
table, th, td {
|
||||
border: 1px solid black;
|
||||
border-collapse: collapse;
|
||||
white-space: nowrap;
|
||||
padding: .3em;
|
||||
}
|
||||
table {
|
||||
margin: 0 auto;
|
||||
}
|
||||
.severity {
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
color: #fafafa;
|
||||
}
|
||||
.severity-LOW .severity { background-color: #5fbb31; }
|
||||
.severity-MEDIUM .severity { background-color: #e9c600; }
|
||||
.severity-HIGH .severity { background-color: #ff8800; }
|
||||
.severity-CRITICAL .severity { background-color: #e40000; }
|
||||
.severity-UNKNOWN .severity { background-color: #747474; }
|
||||
.severity-LOW { background-color: #5fbb3160; }
|
||||
.severity-MEDIUM { background-color: #e9c60060; }
|
||||
.severity-HIGH { background-color: #ff880060; }
|
||||
.severity-CRITICAL { background-color: #e4000060; }
|
||||
.severity-UNKNOWN { background-color: #74747460; }
|
||||
table tr td:first-of-type {
|
||||
font-weight: bold;
|
||||
}
|
||||
.links a,
|
||||
.links[data-more-links=on] a {
|
||||
display: block;
|
||||
}
|
||||
.links[data-more-links=off] a:nth-of-type(1n+5) {
|
||||
display: none;
|
||||
}
|
||||
a.toggle-more-links { cursor: pointer; }
|
||||
</style>
|
||||
<title>testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2) - Trivy Report - 2020-08-10T07:28:17.000958601Z</title>
|
||||
<script>
|
||||
window.onload = function() {
|
||||
document.querySelectorAll('td.links').forEach(function(linkCell) {
|
||||
var links = [].concat.apply([], linkCell.querySelectorAll('a'));
|
||||
[].sort.apply(links, function(a, b) {
|
||||
return a.href > b.href ? 1 : -1;
|
||||
});
|
||||
links.forEach(function(link, idx) {
|
||||
if (links.length > 3 && 3 === idx) {
|
||||
var toggleLink = document.createElement('a');
|
||||
toggleLink.innerText = "Toggle more links";
|
||||
toggleLink.href = "#toggleMore";
|
||||
toggleLink.setAttribute("class", "toggle-more-links");
|
||||
linkCell.appendChild(toggleLink);
|
||||
}
|
||||
linkCell.appendChild(link);
|
||||
});
|
||||
});
|
||||
document.querySelectorAll('a.toggle-more-links').forEach(function(toggleLink) {
|
||||
toggleLink.onclick = function() {
|
||||
var expanded = toggleLink.parentElement.getAttribute("data-more-links");
|
||||
toggleLink.parentElement.setAttribute("data-more-links", "on" === expanded ? "off" : "on");
|
||||
return false;
|
||||
};
|
||||
});
|
||||
};
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2) - Trivy Report - 2020-08-10T07:28:17.000958601Z</h1>
|
||||
<table>
|
||||
<tr class="group-header"><th colspan="6">alpine</th></tr>
|
||||
<tr class="sub-header">
|
||||
<th>Package</th>
|
||||
<th>Vulnerability ID</th>
|
||||
<th>Severity</th>
|
||||
<th>Installed Version</th>
|
||||
<th>Fixed Version</th>
|
||||
<th>Links</th>
|
||||
</tr>
|
||||
<tr class="severity-MEDIUM">
|
||||
<td class="pkg-name">libcrypto1.1</td>
|
||||
<td>CVE-2019-1549</td>
|
||||
<td class="severity">MEDIUM</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r0</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be</a>
|
||||
<a href="https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/">https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20190919-0002/">https://security.netapp.com/advisory/ntap-20190919-0002/</a>
|
||||
<a href="https://support.f5.com/csp/article/K44070243">https://support.f5.com/csp/article/K44070243</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20190910.txt">https://www.openssl.org/news/secadv/20190910.txt</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="severity-MEDIUM">
|
||||
<td class="pkg-name">libcrypto1.1</td>
|
||||
<td>CVE-2019-1551</td>
|
||||
<td class="severity">MEDIUM</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r2</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html">http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html</a>
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98</a>
|
||||
<a href="https://github.com/openssl/openssl/pull/10575">https://github.com/openssl/openssl/pull/10575</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Dec/39">https://seclists.org/bugtraq/2019/Dec/39</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Dec/46">https://seclists.org/bugtraq/2019/Dec/46</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20191210-0001/">https://security.netapp.com/advisory/ntap-20191210-0001/</a>
|
||||
<a href="https://www.debian.org/security/2019/dsa-4594">https://www.debian.org/security/2019/dsa-4594</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20191206.txt">https://www.openssl.org/news/secadv/20191206.txt</a>
|
||||
<a href="https://www.tenable.com/security/tns-2019-09">https://www.tenable.com/security/tns-2019-09</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="severity-MEDIUM">
|
||||
<td class="pkg-name">libcrypto1.1</td>
|
||||
<td>CVE-2019-1563</td>
|
||||
<td class="severity">MEDIUM</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r0</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html">http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html</a>
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Sep/25">https://seclists.org/bugtraq/2019/Sep/25</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20190919-0002/">https://security.netapp.com/advisory/ntap-20190919-0002/</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20190910.txt">https://www.openssl.org/news/secadv/20190910.txt</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="severity-LOW">
|
||||
<td class="pkg-name">libcrypto1.1</td>
|
||||
<td>CVE-2019-1547</td>
|
||||
<td class="severity">LOW</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r0</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html">http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html</a>
|
||||
<a href="https://arxiv.org/abs/1909.01785">https://arxiv.org/abs/1909.01785</a>
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Sep/25">https://seclists.org/bugtraq/2019/Sep/25</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20190919-0002/">https://security.netapp.com/advisory/ntap-20190919-0002/</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20190910.txt">https://www.openssl.org/news/secadv/20190910.txt</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="severity-MEDIUM">
|
||||
<td class="pkg-name">libssl1.1</td>
|
||||
<td>CVE-2019-1549</td>
|
||||
<td class="severity">MEDIUM</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r0</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be</a>
|
||||
<a href="https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/">https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20190919-0002/">https://security.netapp.com/advisory/ntap-20190919-0002/</a>
|
||||
<a href="https://support.f5.com/csp/article/K44070243">https://support.f5.com/csp/article/K44070243</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20190910.txt">https://www.openssl.org/news/secadv/20190910.txt</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="severity-MEDIUM">
|
||||
<td class="pkg-name">libssl1.1</td>
|
||||
<td>CVE-2019-1551</td>
|
||||
<td class="severity">MEDIUM</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r2</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html">http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html</a>
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98</a>
|
||||
<a href="https://github.com/openssl/openssl/pull/10575">https://github.com/openssl/openssl/pull/10575</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Dec/39">https://seclists.org/bugtraq/2019/Dec/39</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Dec/46">https://seclists.org/bugtraq/2019/Dec/46</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20191210-0001/">https://security.netapp.com/advisory/ntap-20191210-0001/</a>
|
||||
<a href="https://www.debian.org/security/2019/dsa-4594">https://www.debian.org/security/2019/dsa-4594</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20191206.txt">https://www.openssl.org/news/secadv/20191206.txt</a>
|
||||
<a href="https://www.tenable.com/security/tns-2019-09">https://www.tenable.com/security/tns-2019-09</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="severity-MEDIUM">
|
||||
<td class="pkg-name">libssl1.1</td>
|
||||
<td>CVE-2019-1563</td>
|
||||
<td class="severity">MEDIUM</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r0</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html">http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html</a>
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Sep/25">https://seclists.org/bugtraq/2019/Sep/25</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20190919-0002/">https://security.netapp.com/advisory/ntap-20190919-0002/</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20190910.txt">https://www.openssl.org/news/secadv/20190910.txt</a>
|
||||
</td>
|
||||
</tr>
|
||||
<tr class="severity-LOW">
|
||||
<td class="pkg-name">libssl1.1</td>
|
||||
<td>CVE-2019-1547</td>
|
||||
<td class="severity">LOW</td>
|
||||
<td class="pkg-version">1.1.1c-r0</td>
|
||||
<td>1.1.1d-r0</td>
|
||||
<td class="links" data-more-links="off">
|
||||
<a href="http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html">http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html</a>
|
||||
<a href="https://arxiv.org/abs/1909.01785">https://arxiv.org/abs/1909.01785</a>
|
||||
<a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547">https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8</a>
|
||||
<a href="https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a">https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a</a>
|
||||
<a href="https://seclists.org/bugtraq/2019/Sep/25">https://seclists.org/bugtraq/2019/Sep/25</a>
|
||||
<a href="https://security.netapp.com/advisory/ntap-20190919-0002/">https://security.netapp.com/advisory/ntap-20190919-0002/</a>
|
||||
<a href="https://www.openssl.org/news/secadv/20190910.txt">https://www.openssl.org/news/secadv/20190910.txt</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
264
integration/testdata/alpine-310.json.golden
vendored
264
integration/testdata/alpine-310.json.golden
vendored
@@ -1,18 +1,34 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/alpine-310.tar.gz (alpine 3.10.2)",
|
||||
"Type": "alpine",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
@@ -20,19 +36,78 @@
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
@@ -42,19 +117,36 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
@@ -65,7 +157,167 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1c-r0",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:03901b4a2ea88eeaad62dbe59b072b28b6efa00491962b8741081c5df50c65e0"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
363
integration/testdata/alpine-310.sarif.golden
vendored
Normal file
363
integration/testdata/alpine-310.sarif.golden
vendored
Normal file
@@ -0,0 +1,363 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/oasis-tcs/sarif-spec/master/Schemata/sarif-schema-2.1.0.json",
|
||||
"version": "2.1.0",
|
||||
"runs": [
|
||||
{
|
||||
"tool": {
|
||||
"driver": {
|
||||
"name": "Trivy",
|
||||
"informationUri": "https://github.com/aquasecurity/trivy",
|
||||
"fullName": "Trivy Vulnerability Scanner",
|
||||
"version": "v0.15.0",
|
||||
"rules": [
|
||||
{
|
||||
"id": "[MEDIUM] CVE-2019-1549",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1549 Package: libcrypto1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: information disclosure in fork()."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1549\nSeverity: MEDIUM\nPackage: libcrypto1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r0\nLink: [CVE-2019-1549](https://avd.aquasec.com/nvd/cve-2019-1549)",
|
||||
"markdown": "**Vulnerability CVE-2019-1549**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|MEDIUM|libcrypto1.1|1.1.1c-r0|1.1.1d-r0|[CVE-2019-1549](https://avd.aquasec.com/nvd/cve-2019-1549)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"MEDIUM",
|
||||
"libcrypto1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "[MEDIUM] CVE-2019-1551",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1551 Package: libcrypto1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1551\nSeverity: MEDIUM\nPackage: libcrypto1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r2\nLink: [CVE-2019-1551](https://avd.aquasec.com/nvd/cve-2019-1551)",
|
||||
"markdown": "**Vulnerability CVE-2019-1551**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|MEDIUM|libcrypto1.1|1.1.1c-r0|1.1.1d-r2|[CVE-2019-1551](https://avd.aquasec.com/nvd/cve-2019-1551)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"MEDIUM",
|
||||
"libcrypto1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "[MEDIUM] CVE-2019-1563",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1563 Package: libcrypto1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1563\nSeverity: MEDIUM\nPackage: libcrypto1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r0\nLink: [CVE-2019-1563](https://avd.aquasec.com/nvd/cve-2019-1563)",
|
||||
"markdown": "**Vulnerability CVE-2019-1563**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|MEDIUM|libcrypto1.1|1.1.1c-r0|1.1.1d-r0|[CVE-2019-1563](https://avd.aquasec.com/nvd/cve-2019-1563)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"MEDIUM",
|
||||
"libcrypto1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "[LOW] CVE-2019-1547",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1547 Package: libcrypto1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: side-channel weak encryption vulnerability."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1547\nSeverity: LOW\nPackage: libcrypto1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r0\nLink: [CVE-2019-1547](https://avd.aquasec.com/nvd/cve-2019-1547)",
|
||||
"markdown": "**Vulnerability CVE-2019-1547**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|LOW|libcrypto1.1|1.1.1c-r0|1.1.1d-r0|[CVE-2019-1547](https://avd.aquasec.com/nvd/cve-2019-1547)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"LOW",
|
||||
"libcrypto1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "[MEDIUM] CVE-2019-1549",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1549 Package: libssl1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: information disclosure in fork()."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1549\nSeverity: MEDIUM\nPackage: libssl1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r0\nLink: [CVE-2019-1549](https://avd.aquasec.com/nvd/cve-2019-1549)",
|
||||
"markdown": "**Vulnerability CVE-2019-1549**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|MEDIUM|libssl1.1|1.1.1c-r0|1.1.1d-r0|[CVE-2019-1549](https://avd.aquasec.com/nvd/cve-2019-1549)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"MEDIUM",
|
||||
"libssl1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "[MEDIUM] CVE-2019-1551",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1551 Package: libssl1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1551\nSeverity: MEDIUM\nPackage: libssl1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r2\nLink: [CVE-2019-1551](https://avd.aquasec.com/nvd/cve-2019-1551)",
|
||||
"markdown": "**Vulnerability CVE-2019-1551**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|MEDIUM|libssl1.1|1.1.1c-r0|1.1.1d-r2|[CVE-2019-1551](https://avd.aquasec.com/nvd/cve-2019-1551)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"MEDIUM",
|
||||
"libssl1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "[MEDIUM] CVE-2019-1563",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1563 Package: libssl1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1563\nSeverity: MEDIUM\nPackage: libssl1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r0\nLink: [CVE-2019-1563](https://avd.aquasec.com/nvd/cve-2019-1563)",
|
||||
"markdown": "**Vulnerability CVE-2019-1563**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|MEDIUM|libssl1.1|1.1.1c-r0|1.1.1d-r0|[CVE-2019-1563](https://avd.aquasec.com/nvd/cve-2019-1563)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"MEDIUM",
|
||||
"libssl1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "[LOW] CVE-2019-1547",
|
||||
"name": "dockerfile_scan",
|
||||
"shortDescription": {
|
||||
"text": "CVE-2019-1547 Package: libssl1.1"
|
||||
},
|
||||
"fullDescription": {
|
||||
"text": "openssl: side-channel weak encryption vulnerability."
|
||||
},
|
||||
"helpUri": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"help": {
|
||||
"text": "Vulnerability CVE-2019-1547\nSeverity: LOW\nPackage: libssl1.1\nInstalled Version: 1.1.1c-r0\nFixed Version: 1.1.1d-r0\nLink: [CVE-2019-1547](https://avd.aquasec.com/nvd/cve-2019-1547)",
|
||||
"markdown": "**Vulnerability CVE-2019-1547**\n| Severity | Package | Installed Version | Fixed Version | Link |\n| --- | --- | --- | --- | --- |\n|LOW|libssl1.1|1.1.1c-r0|1.1.1d-r0|[CVE-2019-1547](https://avd.aquasec.com/nvd/cve-2019-1547)|\n"
|
||||
},
|
||||
"properties": {
|
||||
"tags": [
|
||||
"vulnerability",
|
||||
"LOW",
|
||||
"libssl1.1"
|
||||
],
|
||||
"precision": "very-high"
|
||||
}
|
||||
}]
|
||||
}
|
||||
},
|
||||
"results": [
|
||||
{
|
||||
"ruleId": "[MEDIUM] CVE-2019-1549",
|
||||
"ruleIndex": 0,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"ruleId": "[MEDIUM] CVE-2019-1551",
|
||||
"ruleIndex": 1,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"ruleId": "[MEDIUM] CVE-2019-1563",
|
||||
"ruleIndex": 2,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"ruleId": "[LOW] CVE-2019-1547",
|
||||
"ruleIndex": 3,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"ruleId": "[MEDIUM] CVE-2019-1549",
|
||||
"ruleIndex": 4,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"ruleId": "[MEDIUM] CVE-2019-1551",
|
||||
"ruleIndex": 5,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"ruleId": "[MEDIUM] CVE-2019-1563",
|
||||
"ruleIndex": 6,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
},
|
||||
{
|
||||
"ruleId": "[LOW] CVE-2019-1547",
|
||||
"ruleIndex": 7,
|
||||
"level": "error",
|
||||
"message": {
|
||||
"text": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s)."
|
||||
},
|
||||
"locations": [{
|
||||
"physicalLocation": {
|
||||
"artifactLocation": {
|
||||
"uri": "Dockerfile"
|
||||
},
|
||||
"region": {
|
||||
"startLine": 1,
|
||||
"startColumn": 1,
|
||||
"endColumn": 1
|
||||
}
|
||||
}
|
||||
}]
|
||||
}],
|
||||
"columnKind": "utf16CodeUnits"
|
||||
}
|
||||
]
|
||||
}
|
||||
339
integration/testdata/alpine-39.json.golden
vendored
339
integration/testdata/alpine-39.json.golden
vendored
@@ -1,33 +1,34 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/alpine-39.tar.gz (alpine 3.9.4)",
|
||||
"Type": "alpine",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-14697",
|
||||
"PkgName": "musl",
|
||||
"InstalledVersion": "1.1.20-r4",
|
||||
"FixedVersion": "1.1.20-r5",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"Description": "musl libc through 1.1.23 has an x87 floating-point stack adjustment imbalance, related to the math/i386/ directory. In some cases, use of this library could introduce out-of-bounds writes that are not present in an application's source code.",
|
||||
"Severity": "HIGH",
|
||||
"References": [
|
||||
"http://www.openwall.com/lists/oss-security/2019/08/06/4",
|
||||
"https://www.openwall.com/lists/musl/2019/08/06/1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
@@ -35,19 +36,78 @@
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
@@ -57,19 +117,36 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "openssl",
|
||||
"PkgName": "libcrypto1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
@@ -80,7 +157,227 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1549",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1549",
|
||||
"Title": "openssl: information disclosure in fork()",
|
||||
"Description": "OpenSSL 1.1.1 introduced a rewritten random number generator (RNG). This was intended to include protection in the event of a fork() system call in order to ensure that the parent and child processes did not share the same RNG state. However this protection was not being used in the default case. A partial mitigation for this issue is that the output from a high precision timer is mixed into the RNG state so the likelihood of a parent and child process sharing state is significantly reduced. If an application already calls OPENSSL_init_crypto() explicitly using OPENSSL_INIT_ATFORK then this problem does not occur at all. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-330"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1549",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=1b0fe00e2704b5e20334a16d3c9099d1ba2ef1be",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/GY6SNRJP2S7Y42GIIDO3HXPNMDYN2U3A/",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://support.f5.com/csp/article/K44070243",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
"PkgName": "libssl1.1",
|
||||
"InstalledVersion": "1.1.1b-r1",
|
||||
"FixedVersion": "1.1.1d-r0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1547",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=21c856b75d81eff61aa63b4f036bb64a85bf6d46",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=30c22fa8b1d840036b8e203585738df62a03cec8",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=7c1709c2da5414f5b6133d00a03fc8c5bf996c7a",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-14697",
|
||||
"PkgName": "musl",
|
||||
"InstalledVersion": "1.1.20-r4",
|
||||
"FixedVersion": "1.1.20-r5",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-14697",
|
||||
"Description": "musl libc through 1.1.23 has an x87 floating-point stack adjustment imbalance, related to the math/i386/ directory. In some cases, use of this library could introduce out-of-bounds writes that are not present in an application's source code.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 7.5,
|
||||
"V3Score": 9.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://www.openwall.com/lists/oss-security/2019/08/06/4",
|
||||
"https://www.openwall.com/lists/musl/2019/08/06/1"
|
||||
],
|
||||
"PublishedDate": "2019-08-06T16:15:00Z",
|
||||
"LastModifiedDate": "2019-08-14T17:28:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-14697",
|
||||
"PkgName": "musl-utils",
|
||||
"InstalledVersion": "1.1.20-r4",
|
||||
"FixedVersion": "1.1.20-r5",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f1b5933fe4b5f49bbe8258745cf396afe07e625bdab3168e364daf7c956b6b81"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-14697",
|
||||
"Description": "musl libc through 1.1.23 has an x87 floating-point stack adjustment imbalance, related to the math/i386/ directory. In some cases, use of this library could introduce out-of-bounds writes that are not present in an application's source code.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 7.5,
|
||||
"V3Score": 9.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://www.openwall.com/lists/oss-security/2019/08/06/4",
|
||||
"https://www.openwall.com/lists/musl/2019/08/06/1"
|
||||
],
|
||||
"PublishedDate": "2019-08-06T16:15:00Z",
|
||||
"LastModifiedDate": "2019-08-14T17:28:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
549
integration/testdata/amazon-1.json.golden
vendored
549
integration/testdata/amazon-1.json.golden
vendored
@@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/amazon-1.tar.gz (amazon AMI release 2018.03)",
|
||||
"Type": "amazon",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5481",
|
||||
@@ -10,16 +11,35 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5481",
|
||||
"Title": "curl: double free due to subsequent call of realloc()",
|
||||
"Description": "Double-free vulnerability in the FTP-kerberos code in cURL 7.52.0 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-415"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 5.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5481.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5481",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5482",
|
||||
@@ -29,17 +49,160 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5482",
|
||||
"Title": "curl: heap buffer overflow in function tftp_receive_packet()",
|
||||
"Description": "Heap buffer overflow in the TFTP protocol handler in cURL 7.19.4 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-120"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 6.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5482.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5482",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18218",
|
||||
"PkgName": "file-libs",
|
||||
"InstalledVersion": "5.34-3.37.amzn1",
|
||||
"FixedVersion": "5.37-8.48.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18218",
|
||||
"Title": "file: heap-based buffer overflow in cdf_read_property_info in cdf.c",
|
||||
"Description": "cdf_read_property_info in cdf.c in file through 5.37 does not restrict the number of CDF_VECTOR elements, which allows a heap-based buffer overflow (4-byte out-of-bounds write).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16780",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18218",
|
||||
"https://github.com/file/file/commit/46a8443f76cec4b41ec736eca396984c74664f84",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/10/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/CV6PFCEYHYALMTT45QE2U5C5TEJZQPXJ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/VBK6XOJR6OVWT2FUEBO7V7KCOSSLAP52/",
|
||||
"https://usn.ubuntu.com/4172-1/",
|
||||
"https://usn.ubuntu.com/4172-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4172-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4172-2",
|
||||
"https://www.debian.org/security/2019/dsa-4550"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T05:15:00Z",
|
||||
"LastModifiedDate": "2019-10-26T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2016-10739",
|
||||
"PkgName": "glibc",
|
||||
"InstalledVersion": "2.17-260.175.amzn1",
|
||||
"FixedVersion": "2.17-292.178.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2016-10739",
|
||||
"Title": "glibc: getaddrinfo should reject IP addresses with trailing characters",
|
||||
"Description": "In the GNU C Library (aka glibc or libc6) through 2.28, the getaddrinfo function would successfully parse a string that contained an IPv4 address followed by whitespace and arbitrary characters, which could lead applications to incorrectly assume that it had parsed a valid string, without the possibility of embedded HTTP headers or other potentially dangerous substrings.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V2Score": 4.6,
|
||||
"V3Score": 5.3
|
||||
},
|
||||
"redhat": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2016-10739.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-3513.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00082.html",
|
||||
"http://www.securityfocus.com/bid/106672",
|
||||
"https://access.redhat.com/errata/RHSA-2019:2118",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=1347549",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10739",
|
||||
"https://sourceware.org/bugzilla/show_bug.cgi?id=20018"
|
||||
],
|
||||
"PublishedDate": "2019-01-21T19:29:00Z",
|
||||
"LastModifiedDate": "2019-08-06T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2016-10739",
|
||||
"PkgName": "glibc-common",
|
||||
"InstalledVersion": "2.17-260.175.amzn1",
|
||||
"FixedVersion": "2.17-292.178.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2016-10739",
|
||||
"Title": "glibc: getaddrinfo should reject IP addresses with trailing characters",
|
||||
"Description": "In the GNU C Library (aka glibc or libc6) through 2.28, the getaddrinfo function would successfully parse a string that contained an IPv4 address followed by whitespace and arbitrary characters, which could lead applications to incorrectly assume that it had parsed a valid string, without the possibility of embedded HTTP headers or other potentially dangerous substrings.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V2Score": 4.6,
|
||||
"V3Score": 5.3
|
||||
},
|
||||
"redhat": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2016-10739.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-3513.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00082.html",
|
||||
"http://www.securityfocus.com/bid/106672",
|
||||
"https://access.redhat.com/errata/RHSA-2019:2118",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=1347549",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-10739",
|
||||
"https://sourceware.org/bugzilla/show_bug.cgi?id=20018"
|
||||
],
|
||||
"PublishedDate": "2019-01-21T19:29:00Z",
|
||||
"LastModifiedDate": "2019-08-06T17:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5481",
|
||||
@@ -49,16 +212,35 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5481",
|
||||
"Title": "curl: double free due to subsequent call of realloc()",
|
||||
"Description": "Double-free vulnerability in the FTP-kerberos code in cURL 7.52.0 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-415"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 5.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5481.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5481",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5482",
|
||||
@@ -68,17 +250,107 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5482",
|
||||
"Title": "curl: heap buffer overflow in function tftp_receive_packet()",
|
||||
"Description": "Heap buffer overflow in the TFTP protocol handler in cURL 7.19.4 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-120"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 6.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5482.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5482",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-12290",
|
||||
"PkgName": "libidn2",
|
||||
"InstalledVersion": "0.16-1.2.amzn1",
|
||||
"FixedVersion": "2.3.0-1.4.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-12290",
|
||||
"Description": "GNU libidn2 before 2.2.0 fails to perform the roundtrip checks specified in RFC3490 Section 4.2 when converting A-labels to U-labels. This makes it possible in some circumstances for one domain to impersonate another. By creating a malicious domain that matches a target domain except for the inclusion of certain punycoded Unicode characters (that would be discarded when converted first to a Unicode label and then back to an ASCII label), arbitrary domains can be impersonated.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V2Score": 5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12290",
|
||||
"https://gitlab.com/libidn/libidn2/commit/241e8f486134793cb0f4a5b0e5817a97883401f5",
|
||||
"https://gitlab.com/libidn/libidn2/commit/614117ef6e4c60e1950d742e3edf0a0ef8d389de",
|
||||
"https://gitlab.com/libidn/libidn2/merge_requests/71",
|
||||
"https://usn.ubuntu.com/4168-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4168-1"
|
||||
],
|
||||
"PublishedDate": "2019-10-22T16:15:00Z",
|
||||
"LastModifiedDate": "2019-10-29T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18224",
|
||||
"PkgName": "libidn2",
|
||||
"InstalledVersion": "0.16-1.2.amzn1",
|
||||
"FixedVersion": "2.3.0-1.4.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18224",
|
||||
"Title": "libidn2: heap-based buffer overflow in idn2_to_ascii_4i in lib/lookup.c",
|
||||
"Description": "idn2_to_ascii_4i in lib/lookup.c in GNU libidn2 before 2.1.1 has a heap-based buffer overflow via a long domain string.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.6
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12420",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18224",
|
||||
"https://github.com/libidn/libidn2/commit/e4d1558aa2c1c04a05066ee8600f37603890ba8c",
|
||||
"https://github.com/libidn/libidn2/compare/libidn2-2.1.0...libidn2-2.1.1",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/JDQVQ2XPV5BTZUFINT7AFJSKNNBVURNJ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/MINU5RKDFE6TKAFY5DRFN3WSFDS4DYVS/",
|
||||
"https://usn.ubuntu.com/4168-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4168-1"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T17:15:00Z",
|
||||
"LastModifiedDate": "2019-10-29T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-9511",
|
||||
@@ -88,10 +360,29 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-9511",
|
||||
"Title": "HTTP/2: large amount of data requests leads to denial of service",
|
||||
"Description": "Some HTTP/2 implementations are vulnerable to window size manipulation and stream prioritization manipulation, potentially leading to a denial of service. The attacker requests a large amount of data from a specified resource over multiple streams. They manipulate window size and stream priority to force the server to queue the data in 1-byte chunks. Depending on how efficiently this data is queued, this can consume excess CPU, memory, or both.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-400"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:C",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V2Score": 7.8,
|
||||
"V3Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 6.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-9511.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-2925.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9511",
|
||||
"https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md",
|
||||
"https://kb.cert.org/vuls/id/605641/",
|
||||
@@ -106,10 +397,13 @@
|
||||
"https://security.netapp.com/advisory/ntap-20190823-0005/",
|
||||
"https://support.f5.com/csp/article/K02591030",
|
||||
"https://usn.ubuntu.com/4099-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4099-1",
|
||||
"https://www.debian.org/security/2019/dsa-4505",
|
||||
"https://www.nginx.com/blog/nginx-updates-mitigate-august-2019-http-2-vulnerabilities/",
|
||||
"https://www.synology.com/security/advisory/Synology_SA_19_33"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-08-13T21:15:00Z",
|
||||
"LastModifiedDate": "2019-08-23T21:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-9513",
|
||||
@@ -119,10 +413,29 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-9513",
|
||||
"Title": "HTTP/2: flood using PRIORITY frames results in excessive resource consumption",
|
||||
"Description": "Some HTTP/2 implementations are vulnerable to resource loops, potentially leading to a denial of service. The attacker creates multiple request streams and continually shuffles the priority of the streams in a way that causes substantial churn to the priority tree. This can consume excess CPU.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-400"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:C",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V2Score": 7.8,
|
||||
"V3Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-9513.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-2925.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9513",
|
||||
"https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-002.md",
|
||||
"https://kb.cert.org/vuls/id/605641/",
|
||||
@@ -138,10 +451,218 @@
|
||||
"https://security.netapp.com/advisory/ntap-20190823-0005/",
|
||||
"https://support.f5.com/csp/article/K02591030",
|
||||
"https://usn.ubuntu.com/4099-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4099-1",
|
||||
"https://www.debian.org/security/2019/dsa-4505",
|
||||
"https://www.nginx.com/blog/nginx-updates-mitigate-august-2019-http-2-vulnerabilities/",
|
||||
"https://www.synology.com/security/advisory/Synology_SA_19_33"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-08-13T21:15:00Z",
|
||||
"LastModifiedDate": "2019-08-23T21:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "1:1.0.2k-16.150.amzn1",
|
||||
"FixedVersion": "1:1.0.2k-16.151.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-16056",
|
||||
"PkgName": "python27",
|
||||
"InstalledVersion": "2.7.16-1.129.amzn1",
|
||||
"FixedVersion": "2.7.16-1.130.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-16056",
|
||||
"Title": "python: email.utils.parseaddr wrongly parses email addresses",
|
||||
"Description": "An issue was discovered in Python through 2.7.16, 3.x through 3.5.7, 3.6.x through 3.6.9, and 3.7.x through 3.7.4. The email module wrongly parses email addresses that contain multiple @ characters. An application that uses the email module and implements some kind of checks on the From/To headers of a message could be tricked into accepting an email address that should be denied. An attack may be the same as in CVE-2019-11340; however, this CVE applies to Python more generally.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 7.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.python.org/issue34155",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16056",
|
||||
"https://github.com/python/cpython/commit/8cb65d1381b027f0b09ee36bfed7f35bb4dec9a9",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00018.html",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00019.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/E2HP37NUVLQSBW3J735A2DQDOZ4ZGBLY/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/ER6LONC2B2WYIO56GBQUDU6QTWZDPUNQ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/K4KZEFP6E4YPYB52AF4WXCUDSGQOTF37/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/NF3DRDGMVIRYNZMSLJIHNW47HOUQYXVG/",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-09-11T05:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-16935",
|
||||
"PkgName": "python27",
|
||||
"InstalledVersion": "2.7.16-1.129.amzn1",
|
||||
"FixedVersion": "2.7.16-1.131.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-16935",
|
||||
"Title": "python: XSS vulnerability in the documentation XML-RPC server in server_title field",
|
||||
"Description": "The documentation XML-RPC server in Python through 2.7.16, 3.x through 3.6.9, and 3.7.x through 3.7.4 has XSS via the server_title field. This occurs in Lib/DocXMLRPCServer.py in Python 2.x, and in Lib/xmlrpc/server.py in Python 3.x. If set_server_title is called with untrusted input, arbitrary JavaScript can be delivered to clients that visit the http URL for this server.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-79"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:N/I:P/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N",
|
||||
"V3Score": 6.1
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.python.org/issue38243",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16935",
|
||||
"https://github.com/python/cpython/blob/35c0809158be7feae4c4f877a08b93baea2d8291/Lib/xmlrpc/server.py#L897",
|
||||
"https://github.com/python/cpython/blob/e007860b8b3609ce0bc62b1780efaa06241520bd/Lib/DocXMLRPCServer.py#L213",
|
||||
"https://github.com/python/cpython/pull/16373",
|
||||
"https://security.netapp.com/advisory/ntap-20191017-0004/",
|
||||
"https://usn.ubuntu.com/4151-1/",
|
||||
"https://usn.ubuntu.com/4151-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-28T02:15:00Z",
|
||||
"LastModifiedDate": "2019-10-09T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-16056",
|
||||
"PkgName": "python27-libs",
|
||||
"InstalledVersion": "2.7.16-1.129.amzn1",
|
||||
"FixedVersion": "2.7.16-1.130.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-16056",
|
||||
"Title": "python: email.utils.parseaddr wrongly parses email addresses",
|
||||
"Description": "An issue was discovered in Python through 2.7.16, 3.x through 3.5.7, 3.6.x through 3.6.9, and 3.7.x through 3.7.4. The email module wrongly parses email addresses that contain multiple @ characters. An application that uses the email module and implements some kind of checks on the From/To headers of a message could be tricked into accepting an email address that should be denied. An attack may be the same as in CVE-2019-11340; however, this CVE applies to Python more generally.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 7.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.python.org/issue34155",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16056",
|
||||
"https://github.com/python/cpython/commit/8cb65d1381b027f0b09ee36bfed7f35bb4dec9a9",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00018.html",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00019.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/E2HP37NUVLQSBW3J735A2DQDOZ4ZGBLY/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/ER6LONC2B2WYIO56GBQUDU6QTWZDPUNQ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/K4KZEFP6E4YPYB52AF4WXCUDSGQOTF37/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/NF3DRDGMVIRYNZMSLJIHNW47HOUQYXVG/",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-09-11T05:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-16935",
|
||||
"PkgName": "python27-libs",
|
||||
"InstalledVersion": "2.7.16-1.129.amzn1",
|
||||
"FixedVersion": "2.7.16-1.131.amzn1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:984fe1509738f6f00f34d9be7398b07ebeb8b98dda077ff6be2cdb87111b73cf"
|
||||
},
|
||||
"SeveritySource": "amazon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-16935",
|
||||
"Title": "python: XSS vulnerability in the documentation XML-RPC server in server_title field",
|
||||
"Description": "The documentation XML-RPC server in Python through 2.7.16, 3.x through 3.6.9, and 3.7.x through 3.7.4 has XSS via the server_title field. This occurs in Lib/DocXMLRPCServer.py in Python 2.x, and in Lib/xmlrpc/server.py in Python 3.x. If set_server_title is called with untrusted input, arbitrary JavaScript can be delivered to clients that visit the http URL for this server.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-79"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:N/I:P/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N",
|
||||
"V3Score": 6.1
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.python.org/issue38243",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16935",
|
||||
"https://github.com/python/cpython/blob/35c0809158be7feae4c4f877a08b93baea2d8291/Lib/xmlrpc/server.py#L897",
|
||||
"https://github.com/python/cpython/blob/e007860b8b3609ce0bc62b1780efaa06241520bd/Lib/DocXMLRPCServer.py#L213",
|
||||
"https://github.com/python/cpython/pull/16373",
|
||||
"https://security.netapp.com/advisory/ntap-20191017-0004/",
|
||||
"https://usn.ubuntu.com/4151-1/",
|
||||
"https://usn.ubuntu.com/4151-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4151-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-28T02:15:00Z",
|
||||
"LastModifiedDate": "2019-10-09T16:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
2830
integration/testdata/amazon-2.json.golden
vendored
2830
integration/testdata/amazon-2.json.golden
vendored
File diff suppressed because it is too large
Load Diff
135
integration/testdata/busybox-with-lockfile.json.golden
vendored
Normal file
135
integration/testdata/busybox-with-lockfile.json.golden
vendored
Normal file
@@ -0,0 +1,135 @@
|
||||
[
|
||||
{
|
||||
"Target": "Cargo.lock",
|
||||
"Type": "cargo",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2019-0001",
|
||||
"PkgName": "ammonia",
|
||||
"InstalledVersion": "1.9.0",
|
||||
"FixedVersion": "\u003e= 2.1.0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2019-0001",
|
||||
"Title": "Uncontrolled recursion leads to abort in HTML serialization",
|
||||
"Description": "Affected versions of this crate did use recursion for serialization of HTML\nDOM trees.\n\nThis allows an attacker to cause abort due to stack overflow by providing\na pathologically nested input.\n\nThe flaw was corrected by serializing the DOM tree iteratively instead.",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/rust-ammonia/ammonia/blob/master/CHANGELOG.md#210"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2016-0001",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "0.8.3",
|
||||
"FixedVersion": "\u003e= 0.9.0",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2016-0001",
|
||||
"Title": "SSL/TLS MitM vulnerability due to insecure defaults",
|
||||
"Description": "All versions of rust-openssl prior to 0.9.0 contained numerous insecure defaults\nincluding off-by-default certificate verification and no API to perform hostname\nverification.\n\nUnless configured correctly by a developer, these defaults could allow an attacker\nto perform man-in-the-middle attacks.\n\nThe problem was addressed in newer versions by enabling certificate verification\nby default and exposing APIs to perform hostname verification. Use the\n`SslConnector` and `SslAcceptor` types to take advantage of these new features\n(as opposed to the lower-level `SslContext` type).",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/sfackler/rust-openssl/releases/tag/v0.9.0"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2019-0035",
|
||||
"PkgName": "rand_core",
|
||||
"InstalledVersion": "0.3.1",
|
||||
"FixedVersion": "\u003e= 0.4.2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2019-0035",
|
||||
"Title": "Unaligned memory access",
|
||||
"Description": "Affected versions of this crate violated alignment when casting byte slices to\ninteger slices, resulting in undefined behavior.\n\nThe flaw was corrected by Ralf Jung and Diggory Hardy.",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/rust-random/rand/blob/master/rand_core/CHANGELOG.md#050---2019-06-06"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2019-0035",
|
||||
"PkgName": "rand_core",
|
||||
"InstalledVersion": "0.4.0",
|
||||
"FixedVersion": "\u003e= 0.4.2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2019-0035",
|
||||
"Title": "Unaligned memory access",
|
||||
"Description": "Affected versions of this crate violated alignment when casting byte slices to\ninteger slices, resulting in undefined behavior.\n\nThe flaw was corrected by Ralf Jung and Diggory Hardy.",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/rust-random/rand/blob/master/rand_core/CHANGELOG.md#050---2019-06-06"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2018-0018",
|
||||
"PkgName": "smallvec",
|
||||
"InstalledVersion": "0.6.9",
|
||||
"FixedVersion": "\u003e= 0.6.13",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2018-0018",
|
||||
"Title": "smallvec creates uninitialized value of any type",
|
||||
"Description": "Affected versions of this crate called `mem::uninitialized()` to create values of a user-supplied type `T`.\nThis is unsound e.g. if `T` is a reference type (which must be non-null and thus may not remain uninitialized).\n \nThe flaw was corrected by avoiding the use of `mem::uninitialized()`, using `MaybeUninit` instead.",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/servo/rust-smallvec/issues/126"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2019-0009",
|
||||
"PkgName": "smallvec",
|
||||
"InstalledVersion": "0.6.9",
|
||||
"FixedVersion": "\u003e= 0.6.10",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2019-0009",
|
||||
"Title": "Double-free and use-after-free in SmallVec::grow()",
|
||||
"Description": "Attempting to call `grow` on a spilled SmallVec with a value equal to the current capacity causes it to free the existing data. This performs a double free immediately and may lead to use-after-free on subsequent accesses to the SmallVec contents.\n\nAn attacker that controls the value passed to `grow` may exploit this flaw to obtain memory contents or gain remote code execution.\n\nCredits to @ehuss for discovering, reporting and fixing the bug.",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/servo/rust-smallvec/issues/148"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2019-0012",
|
||||
"PkgName": "smallvec",
|
||||
"InstalledVersion": "0.6.9",
|
||||
"FixedVersion": "\u003e= 0.6.10",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2019-0012",
|
||||
"Title": "Memory corruption in SmallVec::grow()",
|
||||
"Description": "Attempting to call `grow` on a spilled SmallVec with a value less than the current capacity causes corruption of memory allocator data structures.\n\nAn attacker that controls the value passed to `grow` may exploit this flaw to obtain memory contents or gain remote code execution.\n\nCredits to @ehuss for discovering, reporting and fixing the bug.",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/servo/rust-smallvec/issues/149"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "RUSTSEC-2018-0017",
|
||||
"PkgName": "tempdir",
|
||||
"InstalledVersion": "0.3.7",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:ea6f6933da66090da8bfe233d68f083792a68f944cd2d8f9fbb52da795813a4f"
|
||||
},
|
||||
"PrimaryURL": "https://rustsec.org/advisories/RUSTSEC-2018-0017",
|
||||
"Title": "`tempdir` crate has been deprecated; use `tempfile` instead",
|
||||
"Description": "The [`tempdir`](https://crates.io/crates/tempdir) crate has been deprecated\nand the functionality is merged into [`tempfile`](https://crates.io/crates/tempfile).",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"https://github.com/rust-lang-deprecated/tempdir/pull/46"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
28525
integration/testdata/centos-6.json.golden
vendored
28525
integration/testdata/centos-6.json.golden
vendored
File diff suppressed because it is too large
Load Diff
162
integration/testdata/centos-7-critical.json.golden
vendored
162
integration/testdata/centos-7-critical.json.golden
vendored
@@ -1,162 +0,0 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/centos-7.tar.gz (centos 7.6.1810)",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2018-14618",
|
||||
"PkgName": "curl",
|
||||
"InstalledVersion": "7.29.0-51.el7",
|
||||
"FixedVersion": "7.29.0-51.el7_6.3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:d69483a6face4499acb974449d1303591fcbb5cdce5420f36f8a6607bda11854"
|
||||
},
|
||||
"Title": "curl: NTLM password overflow via integer overflow",
|
||||
"Description": "curl before version 7.61.1 is vulnerable to a buffer overrun in the NTLM authentication code. The internal function Curl_ntlm_core_mk_nt_hash multiplies the length of the password by two (SUM) to figure out how large temporary storage area to allocate from the heap. The length value is then subsequently used to iterate over the password and generate output into the allocated storage buffer. On systems with a 32 bit size_t, the math to calculate SUM triggers an integer overflow when the password length exceeds 2GB (2^31 bytes). This integer overflow usually causes a very small buffer to actually get allocated instead of the intended very huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is almost identical to CVE-2017-8816.)",
|
||||
"Severity": "CRITICAL",
|
||||
"References": [
|
||||
"http://www.securitytracker.com/id/1041605",
|
||||
"https://access.redhat.com/errata/RHSA-2018:3558",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2018-14618",
|
||||
"https://cert-portal.siemens.com/productcert/pdf/ssa-436177.pdf",
|
||||
"https://curl.haxx.se/docs/CVE-2018-14618.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14618",
|
||||
"https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2018-0014",
|
||||
"https://security.gentoo.org/glsa/201903-03",
|
||||
"https://usn.ubuntu.com/3765-1/",
|
||||
"https://usn.ubuntu.com/3765-2/",
|
||||
"https://www.debian.org/security/2018/dsa-4286"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2018-14618",
|
||||
"PkgName": "libcurl",
|
||||
"InstalledVersion": "7.29.0-51.el7",
|
||||
"FixedVersion": "7.29.0-51.el7_6.3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:d69483a6face4499acb974449d1303591fcbb5cdce5420f36f8a6607bda11854"
|
||||
},
|
||||
"Title": "curl: NTLM password overflow via integer overflow",
|
||||
"Description": "curl before version 7.61.1 is vulnerable to a buffer overrun in the NTLM authentication code. The internal function Curl_ntlm_core_mk_nt_hash multiplies the length of the password by two (SUM) to figure out how large temporary storage area to allocate from the heap. The length value is then subsequently used to iterate over the password and generate output into the allocated storage buffer. On systems with a 32 bit size_t, the math to calculate SUM triggers an integer overflow when the password length exceeds 2GB (2^31 bytes). This integer overflow usually causes a very small buffer to actually get allocated instead of the intended very huge one, making the use of that buffer end up in a heap buffer overflow. (This bug is almost identical to CVE-2017-8816.)",
|
||||
"Severity": "CRITICAL",
|
||||
"References": [
|
||||
"http://www.securitytracker.com/id/1041605",
|
||||
"https://access.redhat.com/errata/RHSA-2018:3558",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2018-14618",
|
||||
"https://cert-portal.siemens.com/productcert/pdf/ssa-436177.pdf",
|
||||
"https://curl.haxx.se/docs/CVE-2018-14618.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-14618",
|
||||
"https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2018-0014",
|
||||
"https://security.gentoo.org/glsa/201903-03",
|
||||
"https://usn.ubuntu.com/3765-1/",
|
||||
"https://usn.ubuntu.com/3765-2/",
|
||||
"https://www.debian.org/security/2018/dsa-4286"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3855",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.4.3-12.el7",
|
||||
"FixedVersion": "1.4.3-12.el7_6.2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:d69483a6face4499acb974449d1303591fcbb5cdce5420f36f8a6607bda11854"
|
||||
},
|
||||
"Title": "libssh2: Integer overflow in transport read resulting in out of bounds write",
|
||||
"Description": "An integer overflow flaw which could lead to an out of bounds write was discovered in libssh2 before 1.8.1 in the way packets are read from the server. A remote attacker who compromises a SSH server may be able to execute code on the client system when a user connects to the server.",
|
||||
"Severity": "CRITICAL",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"http://packetstormsecurity.com/files/152136/Slackware-Security-Advisory-libssh2-Updates.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/03/18/3",
|
||||
"http://www.securityfocus.com/bid/107485",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3855",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3855",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XCWEA5ZCLKRDUK62QVVYMFWLWKOPX3LO/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://seclists.org/bugtraq/2019/Mar/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.broadcom.com/support/fibre-channel-networking/security-advisories/brocade-security-advisory-2019-767",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3855.html"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2018-15686",
|
||||
"PkgName": "systemd",
|
||||
"InstalledVersion": "219-62.el7_6.5",
|
||||
"FixedVersion": "219-67.el7",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:d69483a6face4499acb974449d1303591fcbb5cdce5420f36f8a6607bda11854"
|
||||
},
|
||||
"Title": "systemd: line splitting via fgets() allows for state injection during daemon-reexec",
|
||||
"Description": "A vulnerability in unit_deserialize of systemd allows an attacker to supply arbitrary state across systemd re-execution via NotifyAccess. This can be used to improperly influence systemd execution and possibly lead to root privilege escalation. Affected releases are systemd versions up to and including 239.",
|
||||
"Severity": "CRITICAL",
|
||||
"References": [
|
||||
"http://www.securityfocus.com/bid/105747",
|
||||
"https://access.redhat.com/errata/RHSA-2019:2091",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-15686",
|
||||
"https://github.com/systemd/systemd/pull/10519",
|
||||
"https://lists.debian.org/debian-lts-announce/2018/11/msg00017.html",
|
||||
"https://security.gentoo.org/glsa/201810-10",
|
||||
"https://usn.ubuntu.com/3816-1/",
|
||||
"https://www.exploit-db.com/exploits/45714/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2018-15686",
|
||||
"PkgName": "systemd-libs",
|
||||
"InstalledVersion": "219-62.el7_6.5",
|
||||
"FixedVersion": "219-67.el7",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:d69483a6face4499acb974449d1303591fcbb5cdce5420f36f8a6607bda11854"
|
||||
},
|
||||
"Title": "systemd: line splitting via fgets() allows for state injection during daemon-reexec",
|
||||
"Description": "A vulnerability in unit_deserialize of systemd allows an attacker to supply arbitrary state across systemd re-execution via NotifyAccess. This can be used to improperly influence systemd execution and possibly lead to root privilege escalation. Affected releases are systemd versions up to and including 239.",
|
||||
"Severity": "CRITICAL",
|
||||
"References": [
|
||||
"http://www.securityfocus.com/bid/105747",
|
||||
"https://access.redhat.com/errata/RHSA-2019:2091",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-15686",
|
||||
"https://github.com/systemd/systemd/pull/10519",
|
||||
"https://lists.debian.org/debian-lts-announce/2018/11/msg00017.html",
|
||||
"https://security.gentoo.org/glsa/201810-10",
|
||||
"https://usn.ubuntu.com/3816-1/",
|
||||
"https://www.exploit-db.com/exploits/45714/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-12735",
|
||||
"PkgName": "vim-minimal",
|
||||
"InstalledVersion": "2:7.4.160-5.el7",
|
||||
"FixedVersion": "2:7.4.160-6.el7_6",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:d69483a6face4499acb974449d1303591fcbb5cdce5420f36f8a6607bda11854"
|
||||
},
|
||||
"Title": "vim/neovim: ':source!' command allows arbitrary command execution via modelines",
|
||||
"Description": "getchar.c in Vim before 8.1.1365 and Neovim before 0.3.6 allows remote attackers to execute arbitrary OS commands via the :source! command in a modeline, as demonstrated by execute in Vim, and assert_fails or nvim_input in Neovim.",
|
||||
"Severity": "CRITICAL",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-06/msg00031.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-06/msg00036.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-06/msg00037.html",
|
||||
"http://www.securityfocus.com/bid/108724",
|
||||
"https://bugs.debian.org/930020",
|
||||
"https://bugs.debian.org/930024",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12735",
|
||||
"https://github.com/neovim/neovim/pull/10082",
|
||||
"https://github.com/numirias/security/blob/master/doc/2019-06-04_ace-vim-neovim.md",
|
||||
"https://github.com/vim/vim/commit/53575521406739cf20bbe4e384d88e7dca11f040",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2BMDSHTF754TITC6AQJPCS5IRIDMMIM7/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/TRIRBC2YRGKPAWVRMZS4SZTGGCVRVZPR/",
|
||||
"https://usn.ubuntu.com/4016-1/",
|
||||
"https://usn.ubuntu.com/4016-2/",
|
||||
"https://www.debian.org/security/2019/dsa-4467"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
3629
integration/testdata/centos-7-ignore-unfixed.json.golden
vendored
3629
integration/testdata/centos-7-ignore-unfixed.json.golden
vendored
File diff suppressed because it is too large
Load Diff
2609
integration/testdata/centos-7-low-high.json.golden
vendored
2609
integration/testdata/centos-7-low-high.json.golden
vendored
File diff suppressed because it is too large
Load Diff
29084
integration/testdata/centos-7.json.golden
vendored
29084
integration/testdata/centos-7.json.golden
vendored
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/debian-buster.tar.gz (debian 10.1)",
|
||||
"Type": "debian",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -10,16 +11,74 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "e2fsprogs",
|
||||
"InstalledVersion": "1.44.5-1+deb10u1",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -29,16 +88,74 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libcom-err2",
|
||||
"InstalledVersion": "1.44.5-1+deb10u1",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -48,16 +165,185 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libext2fs2",
|
||||
"InstalledVersion": "1.44.5-1+deb10u1",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18224",
|
||||
"PkgName": "libidn2-0",
|
||||
"InstalledVersion": "2.0.5-1",
|
||||
"FixedVersion": "2.0.5-1+deb10u1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18224",
|
||||
"Title": "libidn2: heap-based buffer overflow in idn2_to_ascii_4i in lib/lookup.c",
|
||||
"Description": "idn2_to_ascii_4i in lib/lookup.c in GNU libidn2 before 2.1.1 has a heap-based buffer overflow via a long domain string.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.6
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12420",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18224",
|
||||
"https://github.com/libidn/libidn2/commit/e4d1558aa2c1c04a05066ee8600f37603890ba8c",
|
||||
"https://github.com/libidn/libidn2/compare/libidn2-2.1.0...libidn2-2.1.1",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/JDQVQ2XPV5BTZUFINT7AFJSKNNBVURNJ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/MINU5RKDFE6TKAFY5DRFN3WSFDS4DYVS/",
|
||||
"https://usn.ubuntu.com/4168-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4168-1"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T17:15:00Z",
|
||||
"LastModifiedDate": "2019-10-29T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17594",
|
||||
"PkgName": "libncursesw6",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17594",
|
||||
"Title": "ncurses: heap-based buffer overflow in the _nc_find_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17594",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00017.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-26T15:35:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17595",
|
||||
"PkgName": "libncursesw6",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17595",
|
||||
"Title": "ncurses: heap-based buffer overflow in the fmt_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:P",
|
||||
"V2Score": 5.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L",
|
||||
"V3Score": 5.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17595",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00013.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-23T19:26:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -67,16 +353,374 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libss2",
|
||||
"InstalledVersion": "1.44.5-1+deb10u1",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-15718",
|
||||
"PkgName": "libsystemd0",
|
||||
"InstalledVersion": "241-7~deb10u1",
|
||||
"FixedVersion": "241-7~deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-15718",
|
||||
"Title": "systemd: systemd-resolved allows unprivileged users to configure DNS",
|
||||
"Description": "In systemd 240, bus_open_system_watch_bind_with_description in shared/bus-util.c (as used by systemd-resolved to connect to the system D-Bus instance), calls sd_bus_set_trusted, which disables access controls for incoming D-Bus messages. An unprivileged user can exploit this by executing D-Bus methods that should be restricted to privileged users, in order to change the system's DNS resolver settings.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-284"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N",
|
||||
"V2Score": 2.1,
|
||||
"V3Score": 5.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-15718.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-3592.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/09/03/1",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=1746057",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-15718",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/BRE5IS24XTF5WNZGH2L7GSQJKARBOEGL/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HIKGKXZ5OEGOEYURHLJHEMFYNLEGAW5B/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/U2WNHRJW4XI6H5YMDG4BUFGPAXWUMUVG/",
|
||||
"https://usn.ubuntu.com/usn/usn-4120-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-04T12:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T04:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17594",
|
||||
"PkgName": "libtinfo6",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17594",
|
||||
"Title": "ncurses: heap-based buffer overflow in the _nc_find_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17594",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00017.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-26T15:35:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17595",
|
||||
"PkgName": "libtinfo6",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17595",
|
||||
"Title": "ncurses: heap-based buffer overflow in the fmt_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:P",
|
||||
"V2Score": 5.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L",
|
||||
"V3Score": 5.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17595",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00013.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-23T19:26:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-15718",
|
||||
"PkgName": "libudev1",
|
||||
"InstalledVersion": "241-7~deb10u1",
|
||||
"FixedVersion": "241-7~deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-15718",
|
||||
"Title": "systemd: systemd-resolved allows unprivileged users to configure DNS",
|
||||
"Description": "In systemd 240, bus_open_system_watch_bind_with_description in shared/bus-util.c (as used by systemd-resolved to connect to the system D-Bus instance), calls sd_bus_set_trusted, which disables access controls for incoming D-Bus messages. An unprivileged user can exploit this by executing D-Bus methods that should be restricted to privileged users, in order to change the system's DNS resolver settings.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-284"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N",
|
||||
"V2Score": 2.1,
|
||||
"V3Score": 5.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-15718.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-3592.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/09/03/1",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=1746057",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-15718",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/BRE5IS24XTF5WNZGH2L7GSQJKARBOEGL/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HIKGKXZ5OEGOEYURHLJHEMFYNLEGAW5B/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/U2WNHRJW4XI6H5YMDG4BUFGPAXWUMUVG/",
|
||||
"https://usn.ubuntu.com/usn/usn-4120-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-04T12:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T04:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17594",
|
||||
"PkgName": "ncurses-base",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17594",
|
||||
"Title": "ncurses: heap-based buffer overflow in the _nc_find_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17594",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00017.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-26T15:35:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17595",
|
||||
"PkgName": "ncurses-base",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17595",
|
||||
"Title": "ncurses: heap-based buffer overflow in the fmt_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:P",
|
||||
"V2Score": 5.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L",
|
||||
"V3Score": 5.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17595",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00013.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-23T19:26:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17594",
|
||||
"PkgName": "ncurses-bin",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17594",
|
||||
"Title": "ncurses: heap-based buffer overflow in the _nc_find_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the _nc_find_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17594",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00017.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-26T15:35:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17595",
|
||||
"PkgName": "ncurses-bin",
|
||||
"InstalledVersion": "6.1+20181013-2+deb10u1",
|
||||
"FixedVersion": "6.1+20181013-2+deb10u2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:78c1b9419976227e05be9d243b7fa583bea44a5258e52018b2af4cdfe23d148d"
|
||||
},
|
||||
"SeveritySource": "debian",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17595",
|
||||
"Title": "ncurses: heap-based buffer overflow in the fmt_entry function in tinfo/comp_hash.c",
|
||||
"Description": "There is a heap-based buffer over-read in the fmt_entry function in tinfo/comp_hash.c in the terminfo library in ncurses before 6.1-20191012.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:P",
|
||||
"V2Score": 5.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:L",
|
||||
"V3Score": 5.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00061.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17595",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00013.html",
|
||||
"https://lists.gnu.org/archive/html/bug-ncurses/2019-10/msg00045.html"
|
||||
],
|
||||
"PublishedDate": "2019-10-14T21:15:00Z",
|
||||
"LastModifiedDate": "2019-12-23T19:26:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
2513
integration/testdata/debian-buster.json.golden
vendored
2513
integration/testdata/debian-buster.json.golden
vendored
File diff suppressed because it is too large
Load Diff
5080
integration/testdata/debian-stretch.json.golden
vendored
5080
integration/testdata/debian-stretch.json.golden
vendored
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/distroless-base.tar.gz (debian 9.9)",
|
||||
"Type": "debian",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
@@ -10,9 +11,24 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:dffd9992ca398466a663c87c92cfea2a2db0ae0cf33fcb99da60eec52addbfc5"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
@@ -22,7 +38,9 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
@@ -32,9 +50,24 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:dffd9992ca398466a663c87c92cfea2a2db0ae0cf33fcb99da60eec52addbfc5"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
@@ -44,7 +77,9 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
1013
integration/testdata/distroless-base.json.golden
vendored
1013
integration/testdata/distroless-base.json.golden
vendored
File diff suppressed because it is too large
Load Diff
3947
integration/testdata/distroless-python27.json.golden
vendored
3947
integration/testdata/distroless-python27.json.golden
vendored
File diff suppressed because it is too large
Load Diff
199
integration/testdata/fluentd-multiple-lockfiles.json.golden
vendored
Normal file
199
integration/testdata/fluentd-multiple-lockfiles.json.golden
vendored
Normal file
@@ -0,0 +1,199 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/fluentd-multiple-lockfiles.tar.gz (debian 10.2)",
|
||||
"Type": "debian",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "e2fsprogs",
|
||||
"InstalledVersion": "1.44.5-1+deb10u2",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:831c5620387fb9efec59fc82a42b948546c6be601e3ab34a87108ecf852aa15f"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libcom-err2",
|
||||
"InstalledVersion": "1.44.5-1+deb10u2",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:831c5620387fb9efec59fc82a42b948546c6be601e3ab34a87108ecf852aa15f"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libext2fs2",
|
||||
"InstalledVersion": "1.44.5-1+deb10u2",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:831c5620387fb9efec59fc82a42b948546c6be601e3ab34a87108ecf852aa15f"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18224",
|
||||
"PkgName": "libidn2-0",
|
||||
"InstalledVersion": "2.0.5-1",
|
||||
"FixedVersion": "2.0.5-1+deb10u1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:831c5620387fb9efec59fc82a42b948546c6be601e3ab34a87108ecf852aa15f"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18224",
|
||||
"Title": "libidn2: heap-based buffer overflow in idn2_to_ascii_4i in lib/lookup.c",
|
||||
"Description": "idn2_to_ascii_4i in lib/lookup.c in GNU libidn2 before 2.1.1 has a heap-based buffer overflow via a long domain string.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.6
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12420",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18224",
|
||||
"https://github.com/libidn/libidn2/commit/e4d1558aa2c1c04a05066ee8600f37603890ba8c",
|
||||
"https://github.com/libidn/libidn2/compare/libidn2-2.1.0...libidn2-2.1.1",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/JDQVQ2XPV5BTZUFINT7AFJSKNNBVURNJ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/MINU5RKDFE6TKAFY5DRFN3WSFDS4DYVS/",
|
||||
"https://usn.ubuntu.com/4168-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4168-1"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T17:15:00Z",
|
||||
"LastModifiedDate": "2019-10-29T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libss2",
|
||||
"InstalledVersion": "1.44.5-1+deb10u2",
|
||||
"FixedVersion": "1.44.5-1+deb10u3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:831c5620387fb9efec59fc82a42b948546c6be601e3ab34a87108ecf852aa15f"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
171
integration/testdata/opensuse-leap-151.json.golden
vendored
171
integration/testdata/opensuse-leap-151.json.golden
vendored
@@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/opensuse-leap-151.tar.gz (opensuse.leap 15.1)",
|
||||
"Type": "opensuse.leap",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2019:2596-1",
|
||||
@@ -11,12 +12,45 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for cpio",
|
||||
"Description": "This update for cpio fixes the following issues:\n\n- CVE-2019-14866: Fixed an improper validation of the values written \n in the header of a TAR file through the to_oct() function which could \n have led to unexpected TAR generation (bsc#1155199).\n\nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00076.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0166-1",
|
||||
"PkgName": "libcom_err2",
|
||||
"InstalledVersion": "1.43.8-lp151.5.6.1",
|
||||
"FixedVersion": "1.43.8-lp151.5.12.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for e2fsprogs",
|
||||
"Description": "This update for e2fsprogs fixes the following issues:\n\n- CVE-2019-5188: Fixed a code execution vulnerability in the directory rehashing functionality (bsc#1160571).\n\nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0022-1",
|
||||
"PkgName": "libgcrypt20",
|
||||
"InstalledVersion": "1.8.2-lp151.9.4.1",
|
||||
"FixedVersion": "1.8.2-lp151.9.7.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libgcrypt",
|
||||
"Description": "This update for libgcrypt fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2019-13627: Mitigation against an ECDSA timing attack (bsc#1148987).\n\nBug fixes:\n\n- Added CMAC AES self test (bsc#1155339).\n- Added CMAC TDES self test missing (bsc#1155338).\n- Fix test dsa-rfc6979 in FIPS mode.\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00018.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2019:2611-1",
|
||||
"PkgName": "libidn2-0",
|
||||
@@ -26,6 +60,7 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libidn2",
|
||||
"Description": "This update for libidn2 to version 2.2.0 fixes the following issues:\n\n- CVE-2019-12290: Fixed an improper round-trip check when converting A-labels to U-labels (bsc#1154884).\n- CVE-2019-18224: Fixed a heap-based buffer overflow that was caused by long domain strings (bsc#1154887).\n\nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-12/msg00009.html",
|
||||
@@ -41,12 +76,45 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for ncurses",
|
||||
"Description": "This update for ncurses fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036).\n- CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037).\n\nNon-security issue fixed:\n\n- Removed screen.xterm from terminfo database (bsc#1103320).\n\nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0062-1",
|
||||
"PkgName": "libopenssl1_1",
|
||||
"InstalledVersion": "1.1.0i-lp151.8.3.1",
|
||||
"FixedVersion": "1.1.0i-lp151.8.6.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for openssl-1_1",
|
||||
"Description": "This update for openssl-1_1 fixes the following issues:\n\nSecurity issue fixed:\n\n- CVE-2019-1551: Fixed an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli (bsc#1158809). \n\nVarious FIPS related improvements were done:\n\n- FIPS: Backport SSH KDF to openssl (jsc#SLE-8789, bsc#1157775).\n- Port FIPS patches from SLE-12 (bsc#1158101).\n- Use SHA-2 in the RSA pairwise consistency check (bsc#1155346).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00030.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0255-1",
|
||||
"PkgName": "libsolv-tools",
|
||||
"InstalledVersion": "0.7.6-lp151.2.3.2",
|
||||
"FixedVersion": "0.7.10-lp151.2.10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libsolv, libzypp, zypper",
|
||||
"Description": "This update for libsolv, libzypp, zypper fixes the following issues:\n\n\nSecurity issue fixed:\n\n- CVE-2019-18900: Fixed assert cookie file that was world readable (bsc#1158763).\n\nBug fixes\n\n- Fixed removing orphaned packages dropped by to-be-installed products (bsc#1155819).\n- Adds libzypp API to mark all obsolete kernels according to the existing purge-kernel script rules (bsc#1155198).\n- Do not enforce 'en' being in RequestedLocales If the user decides to have a system without explicit language support he may do so (bsc#1155678). \n- Load only target resolvables for zypper rm (bsc#1157377).\n- Fix broken search by filelist (bsc#1135114).\n- Replace python by a bash script in zypper-log (fixes#304, fixes#306, bsc#1156158).\n- Do not sort out requested locales which are not available (bsc#1155678).\n- Prevent listing duplicate matches in tables. XML result is provided within the new list-patches-byissue element (bsc#1154805). \n- XML add patch issue-date and issue-list (bsc#1154805).\n- Fix zypper lp --cve/bugzilla/issue options (bsc#1155298).\n- Always execute commit when adding/removing locales (fixes bsc#1155205).\n- Fix description of --table-style,-s in man page (bsc#1154804).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00036.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2019:2689-1",
|
||||
"PkgName": "libssh4",
|
||||
@@ -56,12 +124,61 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libssh",
|
||||
"Severity": "MEDIUM",
|
||||
"Description": "This update for libssh fixes the following issues:\n\n- CVE-2019-14889: Fixed an arbitrary command execution (bsc#1158095).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "HIGH",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-12/msg00033.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0102-1",
|
||||
"PkgName": "libssh4",
|
||||
"InstalledVersion": "0.8.7-lp151.2.3.1",
|
||||
"FixedVersion": "0.8.7-lp151.2.9.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libssh",
|
||||
"Description": "This update for libssh fixes the following issues:\n\n- CVE-2019-14889: Fixed an unwanted command execution in scp caused by unsanitized location (bsc#1158095).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "HIGH",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00047.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0208-1",
|
||||
"PkgName": "libsystemd0",
|
||||
"InstalledVersion": "234-lp151.26.4.1",
|
||||
"FixedVersion": "234-lp151.26.7.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for systemd",
|
||||
"Description": "This update for systemd fixes the following issues:\n\n- CVE-2020-1712 (bsc#bsc#1162108)\n Fix a heap use-after-free vulnerability, when asynchronous\n Polkit queries were performed while handling Dbus messages. A local\n unprivileged attacker could have abused this flaw to crash systemd services or\n potentially execute code and elevate their privileges, by sending specially\n crafted Dbus messages.\n\n- Use suse.pool.ntp.org server pool on SLE distros (jsc#SLE-7683)\n\n- libblkid: open device in nonblock mode. (bsc#1084671)\n- udev/cdrom_id: Do not open CD-rom in exclusive mode. (bsc#1154256)\n- bus_open leak sd_event_source when udevadm trigger。 (bsc#1161436 CVE-2019-20386)\n- fileio: introduce read_full_virtual_file() for reading virtual files in sysfs, procfs (bsc#1133495 bsc#1159814)\n- fileio: initialize errno to zero before we do fread()\n- fileio: try to read one byte too much in read_full_stream()\n- logind: consider 'greeter' sessions suitable as 'display' sessions of a user (bsc#1158485)\n- logind: never elect a session that is stopping as display\n\n- journal: include kmsg lines from the systemd process which exec()d us (#8078)\n- udevd: don't use monitor after manager_exit()\n- udevd: capitalize log messages in on_sigchld()\n- udevd: merge conditions to decrease indentation\n- Revert 'udevd: fix crash when workers time out after exit is signal caught'\n- core: fragments of masked units ought not be considered for NeedDaemonReload (#7060) (bsc#1156482)\n- udevd: fix crash when workers time out after exit is signal caught\n- udevd: wait for workers to finish when exiting (bsc#1106383)\n\n- Improve bash completion support (bsc#1155207)\n * shell-completion: systemctl: do not list template units in {re,}start\n * shell-completion: systemctl: pass current word to all list_unit*\n * bash-completion: systemctl: pass current partial unit to list-unit* (bsc#1155207)\n * bash-completion: systemctl: use systemctl --no-pager\n * bash-completion: also suggest template unit files\n * bash-completion: systemctl: add missing options and verbs\n * bash-completion: use the first argument instead of the global variable (#6457)\n\n- networkd: VXLan Make group and remote variable separate (bsc#1156213)\n- networkd: vxlan require Remote= to be a non multicast address (#8117) (bsc#1156213)\n- fs-util: let's avoid unnecessary strerror()\n- fs-util: introduce inotify_add_watch_and_warn() helper\n- ask-password: improve log message when inotify limit is reached (bsc#1155574)\n- shared/install: failing with -ELOOP can be due to the use of an alias in install_error() (bsc#1151377)\n- man: alias names can't be used with enable command (bsc#1151377)\n\n- Add boot option to not use swap at system start (jsc#SLE-7689)\n\n- Allow YaST to select Iranian (Persian, Farsi) keyboard layout\n (bsc#1092920)\n \nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "HIGH",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00014.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0208-1",
|
||||
"PkgName": "libudev1",
|
||||
"InstalledVersion": "234-lp151.26.4.1",
|
||||
"FixedVersion": "234-lp151.26.7.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for systemd",
|
||||
"Description": "This update for systemd fixes the following issues:\n\n- CVE-2020-1712 (bsc#bsc#1162108)\n Fix a heap use-after-free vulnerability, when asynchronous\n Polkit queries were performed while handling Dbus messages. A local\n unprivileged attacker could have abused this flaw to crash systemd services or\n potentially execute code and elevate their privileges, by sending specially\n crafted Dbus messages.\n\n- Use suse.pool.ntp.org server pool on SLE distros (jsc#SLE-7683)\n\n- libblkid: open device in nonblock mode. (bsc#1084671)\n- udev/cdrom_id: Do not open CD-rom in exclusive mode. (bsc#1154256)\n- bus_open leak sd_event_source when udevadm trigger。 (bsc#1161436 CVE-2019-20386)\n- fileio: introduce read_full_virtual_file() for reading virtual files in sysfs, procfs (bsc#1133495 bsc#1159814)\n- fileio: initialize errno to zero before we do fread()\n- fileio: try to read one byte too much in read_full_stream()\n- logind: consider 'greeter' sessions suitable as 'display' sessions of a user (bsc#1158485)\n- logind: never elect a session that is stopping as display\n\n- journal: include kmsg lines from the systemd process which exec()d us (#8078)\n- udevd: don't use monitor after manager_exit()\n- udevd: capitalize log messages in on_sigchld()\n- udevd: merge conditions to decrease indentation\n- Revert 'udevd: fix crash when workers time out after exit is signal caught'\n- core: fragments of masked units ought not be considered for NeedDaemonReload (#7060) (bsc#1156482)\n- udevd: fix crash when workers time out after exit is signal caught\n- udevd: wait for workers to finish when exiting (bsc#1106383)\n\n- Improve bash completion support (bsc#1155207)\n * shell-completion: systemctl: do not list template units in {re,}start\n * shell-completion: systemctl: pass current word to all list_unit*\n * bash-completion: systemctl: pass current partial unit to list-unit* (bsc#1155207)\n * bash-completion: systemctl: use systemctl --no-pager\n * bash-completion: also suggest template unit files\n * bash-completion: systemctl: add missing options and verbs\n * bash-completion: use the first argument instead of the global variable (#6457)\n\n- networkd: VXLan Make group and remote variable separate (bsc#1156213)\n- networkd: vxlan require Remote= to be a non multicast address (#8117) (bsc#1156213)\n- fs-util: let's avoid unnecessary strerror()\n- fs-util: introduce inotify_add_watch_and_warn() helper\n- ask-password: improve log message when inotify limit is reached (bsc#1155574)\n- shared/install: failing with -ELOOP can be due to the use of an alias in install_error() (bsc#1151377)\n- man: alias names can't be used with enable command (bsc#1151377)\n\n- Add boot option to not use swap at system start (jsc#SLE-7689)\n\n- Allow YaST to select Iranian (Persian, Farsi) keyboard layout\n (bsc#1092920)\n \nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "HIGH",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00014.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2019:2612-1",
|
||||
"PkgName": "libxml2-2",
|
||||
@@ -71,12 +188,29 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libxml2",
|
||||
"Description": "This update for libxml2 doesn't fix any additional security issues, but correct its rpm changelog to reflect\nall CVEs that have been fixed over the past.\nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "UNKNOWN",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-12/msg00010.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0255-1",
|
||||
"PkgName": "libzypp",
|
||||
"InstalledVersion": "17.15.0-lp151.2.3.2",
|
||||
"FixedVersion": "17.19.0-lp151.2.10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libsolv, libzypp, zypper",
|
||||
"Description": "This update for libsolv, libzypp, zypper fixes the following issues:\n\n\nSecurity issue fixed:\n\n- CVE-2019-18900: Fixed assert cookie file that was world readable (bsc#1158763).\n\nBug fixes\n\n- Fixed removing orphaned packages dropped by to-be-installed products (bsc#1155819).\n- Adds libzypp API to mark all obsolete kernels according to the existing purge-kernel script rules (bsc#1155198).\n- Do not enforce 'en' being in RequestedLocales If the user decides to have a system without explicit language support he may do so (bsc#1155678). \n- Load only target resolvables for zypper rm (bsc#1157377).\n- Fix broken search by filelist (bsc#1135114).\n- Replace python by a bash script in zypper-log (fixes#304, fixes#306, bsc#1156158).\n- Do not sort out requested locales which are not available (bsc#1155678).\n- Prevent listing duplicate matches in tables. XML result is provided within the new list-patches-byissue element (bsc#1154805). \n- XML add patch issue-date and issue-list (bsc#1154805).\n- Fix zypper lp --cve/bugzilla/issue options (bsc#1155298).\n- Always execute commit when adding/removing locales (fixes bsc#1155205).\n- Fix description of --table-style,-s in man page (bsc#1154804).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00036.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2019:2551-1",
|
||||
"PkgName": "ncurses-utils",
|
||||
@@ -86,12 +220,29 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for ncurses",
|
||||
"Description": "This update for ncurses fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036).\n- CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037).\n\nNon-security issue fixed:\n\n- Removed screen.xterm from terminfo database (bsc#1103320).\n\nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0062-1",
|
||||
"PkgName": "openssl-1_1",
|
||||
"InstalledVersion": "1.1.0i-lp151.8.3.1",
|
||||
"FixedVersion": "1.1.0i-lp151.8.6.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for openssl-1_1",
|
||||
"Description": "This update for openssl-1_1 fixes the following issues:\n\nSecurity issue fixed:\n\n- CVE-2019-1551: Fixed an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli (bsc#1158809). \n\nVarious FIPS related improvements were done:\n\n- FIPS: Backport SSH KDF to openssl (jsc#SLE-8789, bsc#1157775).\n- Port FIPS patches from SLE-12 (bsc#1158101).\n- Use SHA-2 in the RSA pairwise consistency check (bsc#1155346).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00030.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2019:2672-1",
|
||||
"PkgName": "permissions",
|
||||
@@ -101,6 +252,7 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for permissions",
|
||||
"Description": "This update for permissions fixes the following issues:\n\n- CVE-2019-3688: Changed wrong ownership in /usr/sbin/pinger to root:squid\n which could have allowed a squid user to gain persistence by changing the \n binary (bsc#1093414).\n- CVE-2019-3690: Fixed a privilege escalation through untrusted symbolic \n links (bsc#1150734).\n- Fixed a regression which caused sagmentation fault (bsc#1157198).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-12/msg00024.html",
|
||||
@@ -116,11 +268,28 @@
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for ncurses",
|
||||
"Description": "This update for ncurses fixes the following issues:\n\nSecurity issues fixed:\n\n- CVE-2019-17594: Fixed a heap-based buffer over-read in the _nc_find_entry function (bsc#1154036).\n- CVE-2019-17595: Fixed a heap-based buffer over-read in the fmt_entry function (bsc#1154037).\n\nNon-security issue fixed:\n\n- Removed screen.xterm from terminfo database (bsc#1103320).\n\nThis update was imported from the SUSE:SLE-15:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00059.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "openSUSE-SU-2020:0255-1",
|
||||
"PkgName": "zypper",
|
||||
"InstalledVersion": "1.14.30-lp151.2.3.1",
|
||||
"FixedVersion": "1.14.33-lp151.2.10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:f7f9ae80878a1c56d8f9ca977a5d844168f7afc0c1429feef9366e713eac06ff"
|
||||
},
|
||||
"Title": "Security update for libsolv, libzypp, zypper",
|
||||
"Description": "This update for libsolv, libzypp, zypper fixes the following issues:\n\n\nSecurity issue fixed:\n\n- CVE-2019-18900: Fixed assert cookie file that was world readable (bsc#1158763).\n\nBug fixes\n\n- Fixed removing orphaned packages dropped by to-be-installed products (bsc#1155819).\n- Adds libzypp API to mark all obsolete kernels according to the existing purge-kernel script rules (bsc#1155198).\n- Do not enforce 'en' being in RequestedLocales If the user decides to have a system without explicit language support he may do so (bsc#1155678). \n- Load only target resolvables for zypper rm (bsc#1157377).\n- Fix broken search by filelist (bsc#1135114).\n- Replace python by a bash script in zypper-log (fixes#304, fixes#306, bsc#1156158).\n- Do not sort out requested locales which are not available (bsc#1155678).\n- Prevent listing duplicate matches in tables. XML result is provided within the new list-patches-byissue element (bsc#1154805). \n- XML add patch issue-date and issue-list (bsc#1154805).\n- Fix zypper lp --cve/bugzilla/issue options (bsc#1155298).\n- Always execute commit when adding/removing locales (fixes bsc#1155205).\n- Fix description of --table-style,-s in man page (bsc#1154804).\n\nThis update was imported from the SUSE:SLE-15-SP1:Update update project.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00036.html",
|
||||
"https://www.suse.com/support/security/rating/"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/opensuse-leap-423.tar.gz (opensuse.leap 42.3)",
|
||||
"Type": "opensuse.leap",
|
||||
"Vulnerabilities": null
|
||||
}
|
||||
]
|
||||
498
integration/testdata/oraclelinux-6-slim.json.golden
vendored
498
integration/testdata/oraclelinux-6-slim.json.golden
vendored
@@ -1,91 +1,8 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/oraclelinux-6-slim.tar.gz (oracle 6.10)",
|
||||
"Type": "oracle",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3855",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.4.2-2.el6_7.1",
|
||||
"FixedVersion": "1.4.2-3.0.1.el6_10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"Title": "libssh2: Integer overflow in transport read resulting in out of bounds write",
|
||||
"Description": "An integer overflow flaw which could lead to an out of bounds write was discovered in libssh2 before 1.8.1 in the way packets are read from the server. A remote attacker who compromises a SSH server may be able to execute code on the client system when a user connects to the server.",
|
||||
"Severity": "CRITICAL",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"http://packetstormsecurity.com/files/152136/Slackware-Security-Advisory-libssh2-Updates.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/03/18/3",
|
||||
"http://www.securityfocus.com/bid/107485",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3855",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3855",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XCWEA5ZCLKRDUK62QVVYMFWLWKOPX3LO/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://seclists.org/bugtraq/2019/Mar/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.broadcom.com/support/fibre-channel-networking/security-advisories/brocade-security-advisory-2019-767",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3855.html"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3856",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.4.2-2.el6_7.1",
|
||||
"FixedVersion": "1.4.2-3.0.1.el6_10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"Title": "libssh2: Integer overflow in keyboard interactive handling resulting in out of bounds write",
|
||||
"Description": "An integer overflow flaw, which could lead to an out of bounds write, was discovered in libssh2 before 1.8.1 in the way keyboard prompt requests are parsed. A remote attacker who compromises a SSH server may be able to execute code on the client system when a user connects to the server.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3856",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3856",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3856.html"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3857",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.4.2-2.el6_7.1",
|
||||
"FixedVersion": "1.4.2-3.0.1.el6_10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"Title": "libssh2: Integer overflow in SSH packet processing channel resulting in out of bounds write",
|
||||
"Description": "An integer overflow flaw which could lead to an out of bounds write was discovered in libssh2 before 1.8.1 in the way SSH_MSG_CHANNEL_REQUEST packets with an exit signal are parsed. A remote attacker who compromises a SSH server may be able to execute code on the client system when a user connects to the server.",
|
||||
"Severity": "MEDIUM",
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3857",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3857",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3857.html"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3862",
|
||||
"PkgName": "libssh2",
|
||||
@@ -94,10 +11,29 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3862",
|
||||
"Title": "libssh2: Out-of-bounds memory comparison with specially crafted message channel request",
|
||||
"Description": "An out of bounds read flaw was discovered in libssh2 before 1.8.1 in the way SSH_MSG_CHANNEL_REQUEST packets with an exit status message and no payload are parsed. A remote attacker who compromises a SSH server may be able to cause a Denial of Service or read data in the client memory.",
|
||||
"Severity": "MEDIUM",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
|
||||
"V2Score": 6.4,
|
||||
"V3Score": 9.1
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 7.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-3862.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-4693.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"http://packetstormsecurity.com/files/152136/Slackware-Security-Advisory-libssh2-Updates.html",
|
||||
@@ -105,6 +41,8 @@
|
||||
"http://www.securityfocus.com/bid/107485",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3862",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3862",
|
||||
"https://github.com/libssh2/libssh2/pull/316",
|
||||
"https://libssh2.org/CVE-2019-3862.html",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XCWEA5ZCLKRDUK62QVVYMFWLWKOPX3LO/",
|
||||
@@ -114,7 +52,159 @@
|
||||
"https://www.broadcom.com/support/fibre-channel-networking/security-advisories/brocade-security-advisory-2019-767",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3862.html"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-03-21T16:01:00Z",
|
||||
"LastModifiedDate": "2019-04-15T12:31:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3855",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.4.2-2.el6_7.1",
|
||||
"FixedVersion": "1.4.2-3.0.1.el6_10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3855",
|
||||
"Title": "libssh2: Integer overflow in transport read resulting in out of bounds write",
|
||||
"Description": "An integer overflow flaw which could lead to an out of bounds write was discovered in libssh2 before 1.8.1 in the way packets are read from the server. A remote attacker who compromises a SSH server may be able to execute code on the client system when a user connects to the server.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-190"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:C/I:C/A:C",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 9.3,
|
||||
"V3Score": 8.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-3855.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-1652.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"http://packetstormsecurity.com/files/152136/Slackware-Security-Advisory-libssh2-Updates.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/03/18/3",
|
||||
"http://www.securityfocus.com/bid/107485",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3855",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3855",
|
||||
"https://github.com/libssh2/libssh2/pull/315",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XCWEA5ZCLKRDUK62QVVYMFWLWKOPX3LO/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://seclists.org/bugtraq/2019/Mar/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.broadcom.com/support/fibre-channel-networking/security-advisories/brocade-security-advisory-2019-767",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3855.html"
|
||||
],
|
||||
"PublishedDate": "2019-03-21T21:29:00Z",
|
||||
"LastModifiedDate": "2019-05-14T21:29:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3856",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.4.2-2.el6_7.1",
|
||||
"FixedVersion": "1.4.2-3.0.1.el6_10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3856",
|
||||
"Title": "libssh2: Integer overflow in keyboard interactive handling resulting in out of bounds write",
|
||||
"Description": "An integer overflow flaw, which could lead to an out of bounds write, was discovered in libssh2 before 1.8.1 in the way keyboard prompt requests are parsed. A remote attacker who compromises a SSH server may be able to execute code on the client system when a user connects to the server.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-190"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 6.8,
|
||||
"V3Score": 8.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-3856.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-1652.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3856",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3856",
|
||||
"https://github.com/libssh2/libssh2/pull/315",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3856.html"
|
||||
],
|
||||
"PublishedDate": "2019-03-25T19:29:00Z",
|
||||
"LastModifiedDate": "2019-05-14T21:29:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3857",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.4.2-2.el6_7.1",
|
||||
"FixedVersion": "1.4.2-3.0.1.el6_10.1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3857",
|
||||
"Title": "libssh2: Integer overflow in SSH packet processing channel resulting in out of bounds write",
|
||||
"Description": "An integer overflow flaw which could lead to an out of bounds write was discovered in libssh2 before 1.8.1 in the way SSH_MSG_CHANNEL_REQUEST packets with an exit signal are parsed. A remote attacker who compromises a SSH server may be able to execute code on the client system when a user connects to the server.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-190"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 6.8,
|
||||
"V3Score": 8.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-3857.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-1652.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3857",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3857",
|
||||
"https://github.com/libssh2/libssh2/pull/315",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3857.html"
|
||||
],
|
||||
"PublishedDate": "2019-03-25T19:29:00Z",
|
||||
"LastModifiedDate": "2019-05-14T21:29:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3863",
|
||||
@@ -124,23 +214,145 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3863",
|
||||
"Title": "libssh2: Integer overflow in user authenticate keyboard interactive allows out-of-bounds writes",
|
||||
"Description": "A flaw was found in libssh2 before 1.8.1. A server could send a multiple keyboard interactive response messages whose total length are greater than unsigned char max characters. This value is used as an index to copy memory causing in an out of bounds memory write error.",
|
||||
"Severity": "MEDIUM",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 6.8,
|
||||
"V3Score": 8.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-3863.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-1652.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00040.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00003.html",
|
||||
"https://access.redhat.com/errata/RHSA-2019:0679",
|
||||
"https://access.redhat.com/errata/RHSA-2019:1175",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3863",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3863",
|
||||
"https://github.com/libssh2/libssh2/pull/315",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/03/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5DK6VO2CEUTAJFYIKWNZKEKYMYR3NO2O/",
|
||||
"https://seclists.org/bugtraq/2019/Apr/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190327-0005/",
|
||||
"https://www.debian.org/security/2019/dsa-4431",
|
||||
"https://www.libssh2.org/CVE-2019-3863.html"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-03-25T18:29:00Z",
|
||||
"LastModifiedDate": "2019-05-14T21:29:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-11745",
|
||||
"PkgName": "nss-softokn",
|
||||
"InstalledVersion": "3.14.3-23.3.0.1.el6_8",
|
||||
"FixedVersion": "3.44.0-6.0.1.el6_10",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-11745",
|
||||
"Title": "nss: Out-of-bounds write when passing an output buffer smaller than the block size to NSC_EncryptUpdate",
|
||||
"Description": "When encrypting with a block cipher, if a call to NSC_EncryptUpdate was made with data smaller than the block size, a small out of bounds write could occur. This could have caused heap corruption and a potentially exploitable crash. This vulnerability affects Thunderbird \u003c 68.3, Firefox ESR \u003c 68.3, and Firefox \u003c 71.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 6.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 8.1
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-11745.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-4190.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00000.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00001.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00006.html",
|
||||
"https://bugzilla.mozilla.org/show_bug.cgi?id=1586176",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11745",
|
||||
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.44.3_release_notes",
|
||||
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.47.1_release_notes",
|
||||
"https://usn.ubuntu.com/4241-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4203-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4203-2",
|
||||
"https://usn.ubuntu.com/usn/usn-4216-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4216-2",
|
||||
"https://usn.ubuntu.com/usn/usn-4241-1",
|
||||
"https://www.mozilla.org/en-US/security/advisories/mfsa2019-38/#CVE-2019-11745",
|
||||
"https://www.mozilla.org/security/advisories/mfsa2019-36/",
|
||||
"https://www.mozilla.org/security/advisories/mfsa2019-37/",
|
||||
"https://www.mozilla.org/security/advisories/mfsa2019-38/"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T20:15:00Z",
|
||||
"LastModifiedDate": "2020-01-16T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-11745",
|
||||
"PkgName": "nss-softokn-freebl",
|
||||
"InstalledVersion": "3.14.3-23.3.0.1.el6_8",
|
||||
"FixedVersion": "3.44.0-6.0.1.el6_10",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-11745",
|
||||
"Title": "nss: Out-of-bounds write when passing an output buffer smaller than the block size to NSC_EncryptUpdate",
|
||||
"Description": "When encrypting with a block cipher, if a call to NSC_EncryptUpdate was made with data smaller than the block size, a small out of bounds write could occur. This could have caused heap corruption and a potentially exploitable crash. This vulnerability affects Thunderbird \u003c 68.3, Firefox ESR \u003c 68.3, and Firefox \u003c 71.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 6.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 8.1
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-11745.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-4190.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00000.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00001.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-01/msg00006.html",
|
||||
"https://bugzilla.mozilla.org/show_bug.cgi?id=1586176",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11745",
|
||||
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.44.3_release_notes",
|
||||
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS/NSS_3.47.1_release_notes",
|
||||
"https://usn.ubuntu.com/4241-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4203-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4203-2",
|
||||
"https://usn.ubuntu.com/usn/usn-4216-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4216-2",
|
||||
"https://usn.ubuntu.com/usn/usn-4241-1",
|
||||
"https://www.mozilla.org/en-US/security/advisories/mfsa2019-38/#CVE-2019-11745",
|
||||
"https://www.mozilla.org/security/advisories/mfsa2019-36/",
|
||||
"https://www.mozilla.org/security/advisories/mfsa2019-37/",
|
||||
"https://www.mozilla.org/security/advisories/mfsa2019-38/"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T20:15:00Z",
|
||||
"LastModifiedDate": "2020-01-16T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1559",
|
||||
@@ -150,10 +362,29 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1559",
|
||||
"Title": "openssl: 0-byte record padding oracle",
|
||||
"Description": "If an application encounters a fatal protocol error and then calls SSL_shutdown() twice (once to send a close_notify, and once to receive one) then OpenSSL can respond differently to the calling application if a 0 byte record is received with invalid padding compared to if a 0 byte record is received with an invalid MAC. If the application then behaves differently based on that in a way that is detectable to the remote peer, then this amounts to a padding oracle that could be used to decrypt data. In order for this to be exploitable \"non-stitched\" ciphersuites must be in use. Stitched ciphersuites are optimised implementations of certain commonly used ciphersuites. Also the application must call SSL_shutdown() twice even if a protocol error has occurred (applications should not do this but some do anyway). Fixed in OpenSSL 1.0.2r (Affected 1.0.2-1.0.2q).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V2Score": 4.3,
|
||||
"V3Score": 5.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:N/A:N",
|
||||
"V3Score": 6.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-1559.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-2471.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-03/msg00041.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00019.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-04/msg00046.html",
|
||||
@@ -171,12 +402,101 @@
|
||||
"https://security.netapp.com/advisory/ntap-20190423-0002/",
|
||||
"https://support.f5.com/csp/article/K18549143",
|
||||
"https://usn.ubuntu.com/3899-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-3899-1",
|
||||
"https://www.debian.org/security/2019/dsa-4400",
|
||||
"https://www.openssl.org/news/secadv/20190226.txt",
|
||||
"https://www.oracle.com/technetwork/security-advisory/cpuapr2019-5072813.html",
|
||||
"https://www.tenable.com/security/tns-2019-02",
|
||||
"https://www.tenable.com/security/tns-2019-03"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-02-27T23:29:00Z",
|
||||
"LastModifiedDate": "2019-05-22T00:29:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2018-20852",
|
||||
"PkgName": "python",
|
||||
"InstalledVersion": "2.6.6-68.0.1.el6_10",
|
||||
"FixedVersion": "2.6.6-68.0.2.el6_10",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2018-20852",
|
||||
"Title": "python: Cookie domain check returns incorrect results",
|
||||
"Description": "http.cookiejar.DefaultPolicy.domain_return_ok in Lib/http/cookiejar.py in Python before 3.7.3 does not correctly validate the domain: it can be tricked into sending existing cookies to the wrong server. An attacker may abuse this flaw by using a server with a hostname that has another valid hostname as a suffix (e.g., pythonicexample.com to steal cookies for example.com). When a program uses http.cookiejar.DefaultPolicy and tries to do an HTTP connection to an attacker-controlled server, existing cookies can be leaked to the attacker. This affects 2.x through 2.7.16, 3.x before 3.4.10, 3.5.x before 3.5.7, 3.6.x before 3.6.9, and 3.7.x before 3.7.3.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V2Score": 5,
|
||||
"V3Score": 5.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2018-20852.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-4884.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00071.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00074.html",
|
||||
"https://bugs.python.org/issue35121",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20852",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/08/msg00022.html",
|
||||
"https://python-security.readthedocs.io/vuln/cookie-domain-check.html",
|
||||
"https://usn.ubuntu.com/usn/usn-4127-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4127-2"
|
||||
],
|
||||
"PublishedDate": "2019-07-13T21:15:00Z",
|
||||
"LastModifiedDate": "2019-08-17T21:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2018-20852",
|
||||
"PkgName": "python-libs",
|
||||
"InstalledVersion": "2.6.6-68.0.1.el6_10",
|
||||
"FixedVersion": "2.6.6-68.0.2.el6_10",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:a6f189f69066d36aff8efe2602482d28c02de433aef44ee9087b291df7e8fd08"
|
||||
},
|
||||
"SeveritySource": "nvd",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2018-20852",
|
||||
"Title": "python: Cookie domain check returns incorrect results",
|
||||
"Description": "http.cookiejar.DefaultPolicy.domain_return_ok in Lib/http/cookiejar.py in Python before 3.7.3 does not correctly validate the domain: it can be tricked into sending existing cookies to the wrong server. An attacker may abuse this flaw by using a server with a hostname that has another valid hostname as a suffix (e.g., pythonicexample.com to steal cookies for example.com). When a program uses http.cookiejar.DefaultPolicy and tries to do an HTTP connection to an attacker-controlled server, existing cookies can be leaked to the attacker. This affects 2.x through 2.7.16, 3.x before 3.4.10, 3.5.x before 3.5.7, 3.6.x before 3.6.9, and 3.7.x before 3.7.3.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V2Score": 5,
|
||||
"V3Score": 5.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2018-20852.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-4884.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00071.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00074.html",
|
||||
"https://bugs.python.org/issue35121",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20852",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/08/msg00022.html",
|
||||
"https://python-security.readthedocs.io/vuln/cookie-domain-check.html",
|
||||
"https://usn.ubuntu.com/usn/usn-4127-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4127-2"
|
||||
],
|
||||
"PublishedDate": "2019-07-13T21:15:00Z",
|
||||
"LastModifiedDate": "2019-08-17T21:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
2016
integration/testdata/oraclelinux-7-slim.json.golden
vendored
2016
integration/testdata/oraclelinux-7-slim.json.golden
vendored
File diff suppressed because it is too large
Load Diff
1721
integration/testdata/oraclelinux-8-slim.json.golden
vendored
1721
integration/testdata/oraclelinux-8-slim.json.golden
vendored
File diff suppressed because it is too large
Load Diff
736
integration/testdata/photon-10.json.golden
vendored
736
integration/testdata/photon-10.json.golden
vendored
@@ -1,7 +1,43 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/photon-10.tar.gz (photon 1.0)",
|
||||
"Type": "photon",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18276",
|
||||
"PkgName": "bash",
|
||||
"InstalledVersion": "4.3.48-3.ph1",
|
||||
"FixedVersion": "4.3.48-5.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18276",
|
||||
"Title": "bash: when effective UID is not equal to its real UID the saved UID is not dropped",
|
||||
"Description": "An issue was discovered in disable_priv_mode in shell.c in GNU Bash through 5.0 patch 11. By default, if Bash is run with its effective UID not equal to its real UID, it will drop privileges by setting its effective UID to its real UID. However, it does so incorrectly. On Linux and other systems that support \"saved UID\" functionality, the saved UID is not dropped. An attacker with command execution in the shell can use \"enable -f\" for runtime loading of a new builtin, which can be a shared object that calls setuid() and therefore regains privileges. However, binaries running with an effective UID of 0 are unaffected.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-273"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:C/I:C/A:C",
|
||||
"V2Score": 7.2
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155498/Bash-5.0-Patch-11-Privilege-Escalation.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18276",
|
||||
"https://github.com/bminor/bash/commit/951bdaad7a18cc0dc1036bba86b18b90874d39ff",
|
||||
"https://www.youtube.com/watch?v=-wGtxJ8opa8"
|
||||
],
|
||||
"PublishedDate": "2019-11-28T01:15:00Z",
|
||||
"LastModifiedDate": "2020-01-22T14:27:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2012-6711",
|
||||
"PkgName": "bash",
|
||||
@@ -10,37 +46,228 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2012-6711",
|
||||
"Title": "bash: heap-based buffer overflow during echo of unsupported characters",
|
||||
"Description": "A heap-based buffer overflow exists in GNU Bash before 4.3 when wide characters, not supported by the current locale set in the LC_CTYPE environment variable, are printed through the echo built-in function. A local attacker, who can provide data to print through the \"echo -e\" built-in function, may use this flaw to crash a script or execute code with the privileges of the bash process. This occurs because ansicstr() in lib/sh/strtrans.c mishandles u32cconv().",
|
||||
"Severity": "MEDIUM",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-119"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 4.6,
|
||||
"V3Score": 7.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://git.savannah.gnu.org/cgit/bash.git/commit/?h=devel\u0026id=863d31ae775d56b785dc5b0105b6d251515d81d5",
|
||||
"http://www.securityfocus.com/bid/108824",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=1721071",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-6711"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-06-18T18:15:00Z",
|
||||
"LastModifiedDate": "2019-06-20T09:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "1.0.2s-1.ph1",
|
||||
"FixedVersion": "1.0.2t-1.ph1",
|
||||
"VulnerabilityID": "CVE-2019-5481",
|
||||
"PkgName": "curl",
|
||||
"InstalledVersion": "7.59.0-8.ph1",
|
||||
"FixedVersion": "7.59.0-9.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "MEDIUM",
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5481",
|
||||
"Title": "curl: double free due to subsequent call of realloc()",
|
||||
"Description": "Double-free vulnerability in the FTP-kerberos code in cURL 7.52.0 to 7.65.3.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-415"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 5.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5481.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5481",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5482",
|
||||
"PkgName": "curl",
|
||||
"InstalledVersion": "7.59.0-8.ph1",
|
||||
"FixedVersion": "7.59.0-9.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5482",
|
||||
"Title": "curl: heap buffer overflow in function tftp_receive_packet()",
|
||||
"Description": "Heap buffer overflow in the TFTP protocol handler in cURL 7.19.4 to 7.65.3.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-120"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 6.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5482.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5482",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18218",
|
||||
"PkgName": "file",
|
||||
"InstalledVersion": "5.24-3.ph1",
|
||||
"FixedVersion": "5.24-4.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18218",
|
||||
"Title": "file: heap-based buffer overflow in cdf_read_property_info in cdf.c",
|
||||
"Description": "cdf_read_property_info in cdf.c in file through 5.37 does not restrict the number of CDF_VECTOR elements, which allows a heap-based buffer overflow (4-byte out-of-bounds write).",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=16780",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18218",
|
||||
"https://github.com/file/file/commit/46a8443f76cec4b41ec736eca396984c74664f84",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/10/msg00032.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/CV6PFCEYHYALMTT45QE2U5C5TEJZQPXJ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/VBK6XOJR6OVWT2FUEBO7V7KCOSSLAP52/",
|
||||
"https://usn.ubuntu.com/4172-1/",
|
||||
"https://usn.ubuntu.com/4172-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4172-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4172-2",
|
||||
"https://www.debian.org/security/2019/dsa-4550"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T05:15:00Z",
|
||||
"LastModifiedDate": "2019-10-26T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-20387",
|
||||
"PkgName": "libsolv",
|
||||
"InstalledVersion": "0.6.19-6.ph1",
|
||||
"FixedVersion": "0.6.19-7.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-20387",
|
||||
"Title": "libsolv: out-of-bounds read in repodata_schema2id in repodata.c",
|
||||
"Description": "repodata_schema2id in repodata.c in libsolv before 0.7.6 has a heap-based buffer over-read via a last schema whose length is less than the length of the input schema.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-20387",
|
||||
"https://github.com/openSUSE/libsolv/commit/fdb9c9c03508990e4583046b590c30d958f272da",
|
||||
"https://github.com/openSUSE/libsolv/commit/fdb9c9c03508990e4583046b590c30d958f272da (0.7.6)",
|
||||
"https://github.com/openSUSE/libsolv/compare/0.7.5...0.7.6",
|
||||
"https://lists.debian.org/debian-lts-announce/2020/01/msg00034.html"
|
||||
],
|
||||
"PublishedDate": "2020-01-21T23:15:00Z",
|
||||
"LastModifiedDate": "2020-01-30T21:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17498",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.9.0-1.ph1",
|
||||
"FixedVersion": "1.9.0-2.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17498",
|
||||
"Title": "libssh2: integer overflow in SSH_MSG_DISCONNECT logic in packet.c",
|
||||
"Description": "In libssh2 v1.9.0 and earlier versions, the SSH_MSG_DISCONNECT logic in packet.c has an integer overflow in a bounds check, enabling an attacker to specify an arbitrary (out-of-bounds) offset for a subsequent memory read. A crafted SSH server may be able to disclose sensitive information or cause a denial of service condition on the client system when a user connects to the server.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-190"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:P",
|
||||
"V2Score": 5.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 6.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00026.html",
|
||||
"https://blog.semmle.com/libssh2-integer-overflow-CVE-2019-17498/",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17498",
|
||||
"https://github.com/kevinbackhouse/SecurityExploits/tree/8cbdbbe6363510f7d9ceec685373da12e6fc752d/libssh2/out_of_bounds_read_disconnect_CVE-2019-17498",
|
||||
"https://github.com/libssh2/libssh2/blob/42d37aa63129a1b2644bf6495198923534322d64/src/packet.c#L480",
|
||||
"https://github.com/libssh2/libssh2/pull/402/commits/1c6fa92b77e34d089493fe6d3e2c6c8775858b94",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/11/msg00010.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/TY7EEE34RFKCTXTMBQQWWSLXZWSCXNDB/"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T22:15:00Z",
|
||||
"LastModifiedDate": "2019-11-07T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
@@ -50,9 +277,24 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
@@ -63,7 +305,461 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "1.0.2s-1.ph1",
|
||||
"FixedVersion": "1.0.2u-1.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "1.0.2s-1.ph1",
|
||||
"FixedVersion": "1.0.2t-1.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19317",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.30.1-2.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19317",
|
||||
"Title": "sqlite: omits bits from the colUsed bitmask in the case of a generated column",
|
||||
"Description": "lookupName in resolve.c in SQLite 3.30.1 omits bits from the colUsed bitmask in the case of a generated column, which allows attackers to cause a denial of service or possibly have unspecified other impact.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://github.com/sqlite/sqlite/commit/522ebfa7cee96fb325a22ea3a2464a63485886a8",
|
||||
"https://github.com/sqlite/sqlite/commit/73bacb7f93eab9f4bd5a65cbc4ae242acf63c9e3",
|
||||
"https://security.netapp.com/advisory/ntap-20191223-0001/"
|
||||
],
|
||||
"PublishedDate": "2019-12-05T14:15:00Z",
|
||||
"LastModifiedDate": "2020-01-07T21:36:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19603",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.30.1-2.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19603",
|
||||
"Title": "sqlite: mishandles certain SELECT statements with a nonexistent VIEW, leading to DoS",
|
||||
"Description": "SQLite 3.30.1 mishandles certain SELECT statements with a nonexistent VIEW, leading to an application crash.",
|
||||
"Severity": "CRITICAL",
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19603",
|
||||
"https://github.com/sqlite/sqlite/commit/527cbd4a104cb93bf3994b3dd3619a6299a78b13",
|
||||
"https://security.netapp.com/advisory/ntap-20191223-0001/",
|
||||
"https://www.sqlite.org/"
|
||||
],
|
||||
"PublishedDate": "2019-12-09T19:15:00Z",
|
||||
"LastModifiedDate": "2020-02-03T14:22:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19646",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.30.1-2.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19646",
|
||||
"Title": "sqlite: pragma.c mishandles NOT NULL in an integrity_check PRAGMA command in certain cases of generated columns",
|
||||
"Description": "pragma.c in SQLite through 3.30.1 mishandles NOT NULL in an integrity_check PRAGMA command in certain cases of generated columns.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-754"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 6.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://github.com/sqlite/sqlite/commit/926f796e8feec15f3836aa0a060ed906f8ae04d3",
|
||||
"https://github.com/sqlite/sqlite/commit/ebd70eedd5d6e6a890a670b5ee874a5eae86b4dd",
|
||||
"https://security.netapp.com/advisory/ntap-20191223-0001/",
|
||||
"https://www.sqlite.org/"
|
||||
],
|
||||
"PublishedDate": "2019-12-09T19:15:00Z",
|
||||
"LastModifiedDate": "2019-12-23T05:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-20218",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.30.1-2.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-20218",
|
||||
"Title": "sqlite: selectExpander in select.c proceeds with WITH stack unwinding even after a parsing error",
|
||||
"Description": "selectExpander in select.c in SQLite 3.30.1 proceeds with WITH stack unwinding even after a parsing error.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-755"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-20218",
|
||||
"https://github.com/sqlite/sqlite/commit/a6c1a71cde082e09750465d5675699062922e387"
|
||||
],
|
||||
"PublishedDate": "2020-01-02T14:16:00Z",
|
||||
"LastModifiedDate": "2020-01-16T20:35:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19244",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.31.1-1.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19244",
|
||||
"Title": "sqlite: allows a crash if a sub-select uses both DISTINCT and window functions and also has certain ORDER BY usage",
|
||||
"Description": "sqlite3Select in select.c in SQLite 3.30.1 allows a crash if a sub-select uses both DISTINCT and window functions, and also has certain ORDER BY usage.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19244",
|
||||
"https://github.com/sqlite/sqlite/commit/e59c562b3f6894f84c715772c4b116d7b5c01348",
|
||||
"https://usn.ubuntu.com/4205-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4205-1"
|
||||
],
|
||||
"PublishedDate": "2019-11-25T20:15:00Z",
|
||||
"LastModifiedDate": "2019-12-04T16:11:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19880",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.30.1-2.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19880",
|
||||
"Title": "sqlite: invalid pointer dereference in exprListAppendList in window.c",
|
||||
"Description": "exprListAppendList in window.c in SQLite 3.30.1 allows attackers to trigger an invalid pointer dereference because constant integer values in ORDER BY clauses of window definitions are mishandled.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-476"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19880",
|
||||
"https://github.com/sqlite/sqlite/commit/75e95e1fcd52d3ec8282edb75ac8cd0814095d54",
|
||||
"https://security.netapp.com/advisory/ntap-20200114-0001/"
|
||||
],
|
||||
"PublishedDate": "2019-12-18T06:15:00Z",
|
||||
"LastModifiedDate": "2020-01-14T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19923",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.31.1-1.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19923",
|
||||
"Title": "sqlite: mishandling of certain uses of SELECT DISTINCT involving a LEFT JOIN in flattenSubquery in select.c leads to a NULL pointer dereference",
|
||||
"Description": "flattenSubquery in select.c in SQLite 3.30.1 mishandles certain uses of SELECT DISTINCT involving a LEFT JOIN in which the right-hand side is a view. This can cause a NULL pointer dereference (or incorrect results).",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-476"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19923",
|
||||
"https://github.com/sqlite/sqlite/commit/396afe6f6aa90a31303c183e11b2b2d4b7956b35",
|
||||
"https://security.netapp.com/advisory/ntap-20200114-0003/"
|
||||
],
|
||||
"PublishedDate": "2019-12-24T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-14T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19925",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.31.1-1.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19925",
|
||||
"Title": "sqlite: zipfileUpdate in ext/misc/zipfile.c mishandles a NULL pathname during an update of a ZIP archive",
|
||||
"Description": "zipfileUpdate in ext/misc/zipfile.c in SQLite 3.30.1 mishandles a NULL pathname during an update of a ZIP archive.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-434"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19925",
|
||||
"https://github.com/sqlite/sqlite/commit/54d501092d88c0cf89bec4279951f548fb0b8618",
|
||||
"https://security.netapp.com/advisory/ntap-20200114-0003/"
|
||||
],
|
||||
"PublishedDate": "2019-12-24T17:15:00Z",
|
||||
"LastModifiedDate": "2020-01-14T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19926",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.31.1-1.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19926",
|
||||
"Title": "sqlite: error mishandling because of incomplete fix of CVE-2019-19880",
|
||||
"Description": "multiSelect in select.c in SQLite 3.30.1 mishandles certain errors during parsing, as demonstrated by errors from sqlite3WindowRewrite() calls. NOTE: this vulnerability exists because of an incomplete fix for CVE-2019-19880.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-476"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19926",
|
||||
"https://github.com/sqlite/sqlite/commit/8428b3b437569338a9d1e10c4cd8154acbe33089",
|
||||
"https://security.netapp.com/advisory/ntap-20200114-0003/"
|
||||
],
|
||||
"PublishedDate": "2019-12-23T01:15:00Z",
|
||||
"LastModifiedDate": "2020-01-14T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19959",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.31.1-1.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19959",
|
||||
"Title": "sqlite: mishandles certain uses of INSERT INTO in situations involving embedded '\\0' characters in filenames",
|
||||
"Description": "ext/misc/zipfile.c in SQLite 3.30.1 mishandles certain uses of INSERT INTO in situations involving embedded '\\0' characters in filenames, leading to a memory-management error that can be detected by (for example) valgrind.",
|
||||
"Severity": "HIGH",
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 7.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19959",
|
||||
"https://github.com/sqlite/sqlite/commit/1e490c4ca6b43a9cf8637d695907888349f69bec",
|
||||
"https://github.com/sqlite/sqlite/commit/d8f2d46cbc9925e034a68aaaf60aad788d9373c1",
|
||||
"https://security.netapp.com/advisory/ntap-20200204-0001/"
|
||||
],
|
||||
"PublishedDate": "2020-01-03T22:15:00Z",
|
||||
"LastModifiedDate": "2020-02-04T12:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19645",
|
||||
"PkgName": "sqlite-autoconf",
|
||||
"InstalledVersion": "3.27.2-3.ph1",
|
||||
"FixedVersion": "3.30.1-2.ph1",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:9740df1ac227d21600b22524f869c9bec2d8c13446d1c8579a6195b6d855ae2b"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19645",
|
||||
"Title": "sqlite: infinite recursion via certain types of self-referential views in conjunction with ALTER TABLE statements",
|
||||
"Description": "alter.c in SQLite through 3.30.1 allows attackers to trigger infinite recursion via certain types of self-referential views in conjunction with ALTER TABLE statements.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-674"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 2.1
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19645",
|
||||
"https://github.com/sqlite/sqlite/commit/38096961c7cd109110ac21d3ed7dad7e0cb0ae06",
|
||||
"https://security.netapp.com/advisory/ntap-20191223-0001/"
|
||||
],
|
||||
"PublishedDate": "2019-12-09T16:15:00Z",
|
||||
"LastModifiedDate": "2019-12-23T05:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
908
integration/testdata/photon-20.json.golden
vendored
908
integration/testdata/photon-20.json.golden
vendored
File diff suppressed because it is too large
Load Diff
546
integration/testdata/photon-30.json.golden
vendored
546
integration/testdata/photon-30.json.golden
vendored
@@ -1,7 +1,43 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/photon-30.tar.gz (photon 3.0)",
|
||||
"Type": "photon",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18276",
|
||||
"PkgName": "bash",
|
||||
"InstalledVersion": "4.4.18-1.ph3",
|
||||
"FixedVersion": "4.4.18-2.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18276",
|
||||
"Title": "bash: when effective UID is not equal to its real UID the saved UID is not dropped",
|
||||
"Description": "An issue was discovered in disable_priv_mode in shell.c in GNU Bash through 5.0 patch 11. By default, if Bash is run with its effective UID not equal to its real UID, it will drop privileges by setting its effective UID to its real UID. However, it does so incorrectly. On Linux and other systems that support \"saved UID\" functionality, the saved UID is not dropped. An attacker with command execution in the shell can use \"enable -f\" for runtime loading of a new builtin, which can be a shared object that calls setuid() and therefore regains privileges. However, binaries running with an effective UID of 0 are unaffected.",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-273"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:C/I:C/A:C",
|
||||
"V2Score": 7.2
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155498/Bash-5.0-Patch-11-Privilege-Escalation.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18276",
|
||||
"https://github.com/bminor/bash/commit/951bdaad7a18cc0dc1036bba86b18b90874d39ff",
|
||||
"https://www.youtube.com/watch?v=-wGtxJ8opa8"
|
||||
],
|
||||
"PublishedDate": "2019-11-28T01:15:00Z",
|
||||
"LastModifiedDate": "2020-01-22T14:27:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5481",
|
||||
"PkgName": "curl",
|
||||
@@ -10,16 +46,35 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5481",
|
||||
"Title": "curl: double free due to subsequent call of realloc()",
|
||||
"Description": "Double-free vulnerability in the FTP-kerberos code in cURL 7.52.0 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-415"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 5.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5481.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5481",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5482",
|
||||
@@ -29,17 +84,36 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5482",
|
||||
"Title": "curl: heap buffer overflow in function tftp_receive_packet()",
|
||||
"Description": "Heap buffer overflow in the TFTP protocol handler in cURL 7.19.4 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-120"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 6.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5482.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5482",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5481",
|
||||
@@ -49,16 +123,35 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5481",
|
||||
"Title": "curl: double free due to subsequent call of realloc()",
|
||||
"Description": "Double-free vulnerability in the FTP-kerberos code in cURL 7.52.0 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-415"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 5.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5481.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5481",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5482",
|
||||
@@ -68,17 +161,36 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5482",
|
||||
"Title": "curl: heap buffer overflow in function tftp_receive_packet()",
|
||||
"Description": "Heap buffer overflow in the TFTP protocol handler in cURL 7.19.4 to 7.65.3.",
|
||||
"Severity": "HIGH",
|
||||
"Severity": "CRITICAL",
|
||||
"CweIDs": [
|
||||
"CWE-120"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 6.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00048.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00055.html",
|
||||
"https://curl.haxx.se/docs/CVE-2019-5482.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5482",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/RGDVKSLY5JUNJRLYRUA6CXGQ2LM63XC3/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/"
|
||||
]
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/UA7KDM2WPM5CJDDGOEGFV6SSGD2J7RNT/",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4129-2"
|
||||
],
|
||||
"PublishedDate": "2019-09-16T19:15:00Z",
|
||||
"LastModifiedDate": "2019-09-18T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -88,38 +200,149 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "1.0.2s-1.ph3",
|
||||
"FixedVersion": "1.0.2t-1.ph3",
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "e2fsprogs-libs",
|
||||
"InstalledVersion": "1.44.3-2.ph3",
|
||||
"FixedVersion": "1.45.5-1.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-20387",
|
||||
"PkgName": "libsolv",
|
||||
"InstalledVersion": "0.6.26-5.ph3",
|
||||
"FixedVersion": "0.6.35-2.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-20387",
|
||||
"Title": "libsolv: out-of-bounds read in repodata_schema2id in repodata.c",
|
||||
"Description": "repodata_schema2id in repodata.c in libsolv before 0.7.6 has a heap-based buffer over-read via a last schema whose length is less than the length of the input schema.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-125"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-20387",
|
||||
"https://github.com/openSUSE/libsolv/commit/fdb9c9c03508990e4583046b590c30d958f272da",
|
||||
"https://github.com/openSUSE/libsolv/commit/fdb9c9c03508990e4583046b590c30d958f272da (0.7.6)",
|
||||
"https://github.com/openSUSE/libsolv/compare/0.7.5...0.7.6",
|
||||
"https://lists.debian.org/debian-lts-announce/2020/01/msg00034.html"
|
||||
],
|
||||
"PublishedDate": "2020-01-21T23:15:00Z",
|
||||
"LastModifiedDate": "2020-01-30T21:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-17498",
|
||||
"PkgName": "libssh2",
|
||||
"InstalledVersion": "1.9.0-1.ph3",
|
||||
"FixedVersion": "1.9.0-2.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-17498",
|
||||
"Title": "libssh2: integer overflow in SSH_MSG_DISCONNECT logic in packet.c",
|
||||
"Description": "In libssh2 v1.9.0 and earlier versions, the SSH_MSG_DISCONNECT logic in packet.c has an integer overflow in a bounds check, enabling an attacker to specify an arbitrary (out-of-bounds) offset for a subsequent memory read. A crafted SSH server may be able to disclose sensitive information or cause a denial of service condition on the client system when a user connects to the server.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-190"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:P",
|
||||
"V2Score": 5.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 6.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-11/msg00026.html",
|
||||
"https://blog.semmle.com/libssh2-integer-overflow-CVE-2019-17498/",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-17498",
|
||||
"https://github.com/kevinbackhouse/SecurityExploits/tree/8cbdbbe6363510f7d9ceec685373da12e6fc752d/libssh2/out_of_bounds_read_disconnect_CVE-2019-17498",
|
||||
"https://github.com/libssh2/libssh2/blob/42d37aa63129a1b2644bf6495198923534322d64/src/packet.c#L480",
|
||||
"https://github.com/libssh2/libssh2/pull/402/commits/1c6fa92b77e34d089493fe6d3e2c6c8775858b94",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/11/msg00010.html",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/TY7EEE34RFKCTXTMBQQWWSLXZWSCXNDB/"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T22:15:00Z",
|
||||
"LastModifiedDate": "2019-11-07T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1547",
|
||||
@@ -129,9 +352,24 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1547",
|
||||
"Title": "openssl: side-channel weak encryption vulnerability",
|
||||
"Description": "Normally in OpenSSL EC groups always have a co-factor present and this is used in side channel resistant code paths. However, in some cases, it is possible to construct a group using explicit parameters (instead of using a named curve). In those cases it is possible that such a group does not have the cofactor present. This can occur even where all the parameters match a known named curve. If such a curve is used then OpenSSL falls back to non-side channel resistant code paths which may result in full key recovery during an ECDSA signature operation. In order to be vulnerable an attacker would have to have the ability to time the creation of a large number of signatures where explicit parameters with no co-factor present are in use by an application using libcrypto. For the avoidance of doubt libssl is not vulnerable because explicit parameters are never used. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 1.9
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
|
||||
"V3Score": 5.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://arxiv.org/abs/1909.01785",
|
||||
@@ -142,7 +380,90 @@
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T16:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1551",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "1.0.2s-1.ph3",
|
||||
"FixedVersion": "1.0.2u-1.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1551",
|
||||
"Title": "openssl: Integer overflow in RSAZ modular exponentiation on x86_64",
|
||||
"Description": "There is an overflow bug in the x64_64 Montgomery squaring procedure used in exponentiation with 512-bit moduli. No EC algorithms are affected. Analysis suggests that attacks against 2-prime RSA1024, 3-prime RSA1536, and DSA1024 as a result of this defect would be very difficult to perform and are not believed likely. Attacks against DH512 are considered just feasible. However, for an attack the target would have to re-use the DH512 private key, which is not recommended anyway. Also applications directly using the low level API BN_mod_exp may be affected if they use BN_FLG_CONSTTIME. Fixed in OpenSSL 1.1.1e-dev (Affected 1.1.1-1.1.1d). Fixed in OpenSSL 1.0.2u-dev (Affected 1.0.2-1.0.2t).",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-200"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N",
|
||||
"V3Score": 4.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/155754/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1551",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=419102400a2811582a7a3d4a4e317d72e5ce0a8f",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f1c5eea8a817075d31e43f5876993c6710238c98",
|
||||
"https://github.com/openssl/openssl/pull/10575",
|
||||
"https://seclists.org/bugtraq/2019/Dec/39",
|
||||
"https://seclists.org/bugtraq/2019/Dec/46",
|
||||
"https://security.netapp.com/advisory/ntap-20191210-0001/",
|
||||
"https://www.debian.org/security/2019/dsa-4594",
|
||||
"https://www.openssl.org/news/secadv/20191206.txt",
|
||||
"https://www.tenable.com/security/tns-2019-09"
|
||||
],
|
||||
"PublishedDate": "2019-12-06T18:15:00Z",
|
||||
"LastModifiedDate": "2019-12-25T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-1563",
|
||||
"PkgName": "openssl",
|
||||
"InstalledVersion": "1.0.2s-1.ph3",
|
||||
"FixedVersion": "1.0.2t-1.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-1563",
|
||||
"Title": "openssl: information disclosure in PKCS7_dataDecode and CMS_decrypt_set1_pkey",
|
||||
"Description": "In situations where an attacker receives automated notification of the success or failure of a decryption attempt an attacker, after sending a very large number of messages to be decrypted, can recover a CMS/PKCS7 transported encryption key or decrypt any RSA encrypted message that was encrypted with the public RSA key, using a Bleichenbacher padding oracle attack. Applications are not affected if they use a certificate together with the private RSA key to the CMS_decrypt or PKCS7_decrypt functions to select the correct recipient info to decrypt. Fixed in OpenSSL 1.1.1d (Affected 1.1.1-1.1.1c). Fixed in OpenSSL 1.1.0l (Affected 1.1.0-1.1.0k). Fixed in OpenSSL 1.0.2t (Affected 1.0.2-1.0.2s).",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-311"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:N/A:N",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N",
|
||||
"V3Score": 3.7
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://packetstormsecurity.com/files/154467/Slackware-Security-Advisory-openssl-Updates.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-1563",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=08229ad838c50f644d7e928e2eef147b4308ad64",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=631f94db0065c78181ca9ba5546ebc8bb3884b97",
|
||||
"https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=e21f8cf78a125cd3c8c0d1a1a6c8bb0b901f893f",
|
||||
"https://seclists.org/bugtraq/2019/Sep/25",
|
||||
"https://security.netapp.com/advisory/ntap-20190919-0002/",
|
||||
"https://www.openssl.org/news/secadv/20190910.txt"
|
||||
],
|
||||
"PublishedDate": "2019-09-10T17:15:00Z",
|
||||
"LastModifiedDate": "2019-09-12T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-16168",
|
||||
@@ -152,14 +473,175 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-16168",
|
||||
"Title": "sqlite: division by zero in whereLoopAddBtreeIndex in sqlite3.c",
|
||||
"Description": "In SQLite through 3.29.0, whereLoopAddBtreeIndex in sqlite3.c can crash a browser or other application because of missing validation of a sqlite_stat1 sz field, aka a \"severe division by zero in the query planner.\"",
|
||||
"Severity": "MEDIUM",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-369"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 4.3
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 6.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-10/msg00032.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-10/msg00033.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-16168",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/XZARJHJJDBHI7CE5PZEBXS5HKK6HXKW2/",
|
||||
"https://security.netapp.com/advisory/ntap-20190926-0003/",
|
||||
"https://security.netapp.com/advisory/ntap-20200122-0003/",
|
||||
"https://usn.ubuntu.com/4205-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4205-1",
|
||||
"https://www.mail-archive.com/sqlite-users@mailinglists.sqlite.org/msg116312.html",
|
||||
"https://www.oracle.com/security-alerts/cpujan2020.html",
|
||||
"https://www.sqlite.org/src/info/e4598ecbdd18bd82945f6029013296690e719a62",
|
||||
"https://www.sqlite.org/src/timeline?c=98357d8c1263920b"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-09T17:15:00Z",
|
||||
"LastModifiedDate": "2020-01-15T20:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19244",
|
||||
"PkgName": "sqlite-libs",
|
||||
"InstalledVersion": "3.27.2-3.ph3",
|
||||
"FixedVersion": "3.31.1-1.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19244",
|
||||
"Title": "sqlite: allows a crash if a sub-select uses both DISTINCT and window functions and also has certain ORDER BY usage",
|
||||
"Description": "sqlite3Select in select.c in SQLite 3.30.1 allows a crash if a sub-select uses both DISTINCT and window functions, and also has certain ORDER BY usage.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19244",
|
||||
"https://github.com/sqlite/sqlite/commit/e59c562b3f6894f84c715772c4b116d7b5c01348",
|
||||
"https://usn.ubuntu.com/4205-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4205-1"
|
||||
],
|
||||
"PublishedDate": "2019-11-25T20:15:00Z",
|
||||
"LastModifiedDate": "2019-12-04T16:11:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19923",
|
||||
"PkgName": "sqlite-libs",
|
||||
"InstalledVersion": "3.27.2-3.ph3",
|
||||
"FixedVersion": "3.31.1-1.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19923",
|
||||
"Title": "sqlite: mishandling of certain uses of SELECT DISTINCT involving a LEFT JOIN in flattenSubquery in select.c leads to a NULL pointer dereference",
|
||||
"Description": "flattenSubquery in select.c in SQLite 3.30.1 mishandles certain uses of SELECT DISTINCT involving a LEFT JOIN in which the right-hand side is a view. This can cause a NULL pointer dereference (or incorrect results).",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-476"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19923",
|
||||
"https://github.com/sqlite/sqlite/commit/396afe6f6aa90a31303c183e11b2b2d4b7956b35",
|
||||
"https://security.netapp.com/advisory/ntap-20200114-0003/"
|
||||
],
|
||||
"PublishedDate": "2019-12-24T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-14T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19926",
|
||||
"PkgName": "sqlite-libs",
|
||||
"InstalledVersion": "3.27.2-3.ph3",
|
||||
"FixedVersion": "3.31.1-1.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19926",
|
||||
"Title": "sqlite: error mishandling because of incomplete fix of CVE-2019-19880",
|
||||
"Description": "multiSelect in select.c in SQLite 3.30.1 mishandles certain errors during parsing, as demonstrated by errors from sqlite3WindowRewrite() calls. NOTE: this vulnerability exists because of an incomplete fix for CVE-2019-19880.",
|
||||
"Severity": "HIGH",
|
||||
"CweIDs": [
|
||||
"CWE-476"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19926",
|
||||
"https://github.com/sqlite/sqlite/commit/8428b3b437569338a9d1e10c4cd8154acbe33089",
|
||||
"https://security.netapp.com/advisory/ntap-20200114-0003/"
|
||||
],
|
||||
"PublishedDate": "2019-12-23T01:15:00Z",
|
||||
"LastModifiedDate": "2020-01-14T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-19959",
|
||||
"PkgName": "sqlite-libs",
|
||||
"InstalledVersion": "3.27.2-3.ph3",
|
||||
"FixedVersion": "3.31.1-1.ph3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:0f379947a276b7b051643960392fa66c2f0cb493bc1dcd471abb5545005949fd"
|
||||
},
|
||||
"SeveritySource": "photon",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-19959",
|
||||
"Title": "sqlite: mishandles certain uses of INSERT INTO in situations involving embedded '\\0' characters in filenames",
|
||||
"Description": "ext/misc/zipfile.c in SQLite 3.30.1 mishandles certain uses of INSERT INTO in situations involving embedded '\\0' characters in filenames, leading to a memory-management error that can be detected by (for example) valgrind.",
|
||||
"Severity": "HIGH",
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V2Score": 5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 7.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-19959",
|
||||
"https://github.com/sqlite/sqlite/commit/1e490c4ca6b43a9cf8637d695907888349f69bec",
|
||||
"https://github.com/sqlite/sqlite/commit/d8f2d46cbc9925e034a68aaaf60aad788d9373c1",
|
||||
"https://security.netapp.com/advisory/ntap-20200204-0001/"
|
||||
],
|
||||
"PublishedDate": "2020-01-03T22:15:00Z",
|
||||
"LastModifiedDate": "2020-02-04T12:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
BIN
integration/testdata/trivy.db.gz
vendored
BIN
integration/testdata/trivy.db.gz
vendored
Binary file not shown.
26048
integration/testdata/ubi-7.json.golden
vendored
26048
integration/testdata/ubi-7.json.golden
vendored
File diff suppressed because it is too large
Load Diff
5291
integration/testdata/ubuntu-1604.json.golden
vendored
5291
integration/testdata/ubuntu-1604.json.golden
vendored
File diff suppressed because it is too large
Load Diff
@@ -1,6 +1,7 @@
|
||||
[
|
||||
{
|
||||
"Target": "testdata/fixtures/ubuntu-1804.tar.gz (ubuntu 18.04)",
|
||||
"Type": "ubuntu",
|
||||
"Vulnerabilities": [
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -10,16 +11,74 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "e2fsprogs",
|
||||
"InstalledVersion": "1.44.1-1ubuntu1.1",
|
||||
"FixedVersion": "1.44.1-1ubuntu1.3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -29,16 +88,74 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libcom-err2",
|
||||
"InstalledVersion": "1.44.1-1ubuntu1.1",
|
||||
"FixedVersion": "1.44.1-1ubuntu1.3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -48,16 +165,187 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libext2fs2",
|
||||
"InstalledVersion": "1.44.1-1ubuntu1.1",
|
||||
"FixedVersion": "1.44.1-1ubuntu1.3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-13627",
|
||||
"PkgName": "libgcrypt20",
|
||||
"InstalledVersion": "1.8.1-4ubuntu1.1",
|
||||
"FixedVersion": "1.8.1-4ubuntu1.2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-13627",
|
||||
"Title": "libgcrypt: ECDSA timing attack in the libgcrypt20 cryptographic library",
|
||||
"Description": "It was discovered that there was a ECDSA timing attack in the libgcrypt20 cryptographic library. Version affected: 1.8.4-5, 1.7.6-2+deb9u3, and 1.6.3-2+deb8u4. Versions fixed: 1.8.5-2 and 1.6.3-2+deb8u7.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-362"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 6.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:N",
|
||||
"V3Score": 6.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-09/msg00060.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/10/02/2",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-13627",
|
||||
"https://dev.gnupg.org/T4683",
|
||||
"https://github.com/gpg/libgcrypt/releases/tag/libgcrypt-1.8.5",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00024.html",
|
||||
"https://minerva.crocs.fi.muni.cz/",
|
||||
"https://security-tracker.debian.org/tracker/CVE-2019-13627",
|
||||
"https://usn.ubuntu.com/usn/usn-4236-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4236-2",
|
||||
"https://usn.ubuntu.com/usn/usn-4236-3"
|
||||
],
|
||||
"PublishedDate": "2019-09-25T15:15:00Z",
|
||||
"LastModifiedDate": "2019-10-03T00:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-12290",
|
||||
"PkgName": "libidn2-0",
|
||||
"InstalledVersion": "2.0.4-1.1build2",
|
||||
"FixedVersion": "2.0.4-1.1ubuntu0.2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-12290",
|
||||
"Description": "GNU libidn2 before 2.2.0 fails to perform the roundtrip checks specified in RFC3490 Section 4.2 when converting A-labels to U-labels. This makes it possible in some circumstances for one domain to impersonate another. By creating a malicious domain that matches a target domain except for the inclusion of certain punycoded Unicode characters (that would be discarded when converted first to a Unicode label and then back to an ASCII label), arbitrary domains can be impersonated.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-20"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V2Score": 5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-12290",
|
||||
"https://gitlab.com/libidn/libidn2/commit/241e8f486134793cb0f4a5b0e5817a97883401f5",
|
||||
"https://gitlab.com/libidn/libidn2/commit/614117ef6e4c60e1950d742e3edf0a0ef8d389de",
|
||||
"https://gitlab.com/libidn/libidn2/merge_requests/71",
|
||||
"https://usn.ubuntu.com/4168-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4168-1"
|
||||
],
|
||||
"PublishedDate": "2019-10-22T16:15:00Z",
|
||||
"LastModifiedDate": "2019-10-29T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-18224",
|
||||
"PkgName": "libidn2-0",
|
||||
"InstalledVersion": "2.0.4-1.1build2",
|
||||
"FixedVersion": "2.0.4-1.1ubuntu0.2",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-18224",
|
||||
"Title": "libidn2: heap-based buffer overflow in idn2_to_ascii_4i in lib/lookup.c",
|
||||
"Description": "idn2_to_ascii_4i in lib/lookup.c in GNU libidn2 before 2.1.1 has a heap-based buffer overflow via a long domain string.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 7.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.6
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12420",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-18224",
|
||||
"https://github.com/libidn/libidn2/commit/e4d1558aa2c1c04a05066ee8600f37603890ba8c",
|
||||
"https://github.com/libidn/libidn2/compare/libidn2-2.1.0...libidn2-2.1.1",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/JDQVQ2XPV5BTZUFINT7AFJSKNNBVURNJ/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/MINU5RKDFE6TKAFY5DRFN3WSFDS4DYVS/",
|
||||
"https://usn.ubuntu.com/4168-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4168-1"
|
||||
],
|
||||
"PublishedDate": "2019-10-21T17:15:00Z",
|
||||
"LastModifiedDate": "2019-10-29T19:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5094",
|
||||
@@ -67,16 +355,74 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5094",
|
||||
"Title": "e2fsprogs: crafted ext4 partition leads to out-of-bounds write",
|
||||
"Description": "An exploitable code execution vulnerability exists in the quota file functionality of E2fsprogs 1.45.3. A specially crafted ext4 partition can cause an out-of-bounds write on the heap, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 6.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5094",
|
||||
"https://lists.debian.org/debian-lts-announce/2019/09/msg00029.html",
|
||||
"https://seclists.org/bugtraq/2019/Sep/58",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0887",
|
||||
"https://usn.ubuntu.com/4142-2/",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-1",
|
||||
"https://usn.ubuntu.com/usn/usn-4142-2",
|
||||
"https://www.debian.org/security/2019/dsa-4535"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-09-24T22:15:00Z",
|
||||
"LastModifiedDate": "2019-09-28T03:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-5188",
|
||||
"PkgName": "libss2",
|
||||
"InstalledVersion": "1.44.1-1ubuntu1.1",
|
||||
"FixedVersion": "1.44.1-1ubuntu1.3",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-5188",
|
||||
"Title": "e2fsprogs: Out-of-bounds write in e2fsck/rehash.c",
|
||||
"Description": "A code execution vulnerability exists in the directory rehashing functionality of E2fsprogs e2fsck 1.45.4. A specially crafted ext4 directory can cause an out-of-bounds write on the stack, resulting in code execution. An attacker can corrupt a partition to trigger this vulnerability.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-787"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V2Score": 4.6
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:C/C:H/I:H/A:H",
|
||||
"V3Score": 7.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00004.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-5188",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/2AKETJ6BREDUHRWQTV35SPGG5C6H7KSI/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/6DOBCYQKCTTWXBLMUPJ5TX3FY7JNCOKY/",
|
||||
"https://talosintelligence.com/vulnerability_reports/TALOS-2019-0973",
|
||||
"https://usn.ubuntu.com/4249-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4249-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-08T16:15:00Z",
|
||||
"LastModifiedDate": "2020-01-28T06:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-15718",
|
||||
@@ -86,17 +432,181 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-15718",
|
||||
"Title": "systemd: systemd-resolved allows unprivileged users to configure DNS",
|
||||
"Description": "In systemd 240, bus_open_system_watch_bind_with_description in shared/bus-util.c (as used by systemd-resolved to connect to the system D-Bus instance), calls sd_bus_set_trusted, which disables access controls for incoming D-Bus messages. An unprivileged user can exploit this by executing D-Bus methods that should be restricted to privileged users, in order to change the system's DNS resolver settings.",
|
||||
"Severity": "LOW",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-284"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N",
|
||||
"V2Score": 2.1,
|
||||
"V3Score": 5.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-15718.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-3592.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/09/03/1",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=1746057",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-15718",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/BRE5IS24XTF5WNZGH2L7GSQJKARBOEGL/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HIKGKXZ5OEGOEYURHLJHEMFYNLEGAW5B/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/U2WNHRJW4XI6H5YMDG4BUFGPAXWUMUVG/"
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/U2WNHRJW4XI6H5YMDG4BUFGPAXWUMUVG/",
|
||||
"https://usn.ubuntu.com/usn/usn-4120-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-04T12:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T04:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2020-1712",
|
||||
"PkgName": "libsystemd0",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2020-1712",
|
||||
"Title": "systemd: use-after-free when asynchronous polkit queries are performed",
|
||||
"Description": "A heap use-after-free vulnerability was found in systemd, where asynchronous Polkit queries are performed while handling dbus messages. A local unprivileged attacker can abuse this flaw to crash systemd services or potentially execute code and elevate their privileges, by sending specially crafted dbus messages.",
|
||||
"Severity": "MEDIUM",
|
||||
"CVSS": {
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2020-1712.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2020-0575.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-1712",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-20386",
|
||||
"PkgName": "libsystemd0",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-20386",
|
||||
"Title": "systemd: a memory leak was discovered in button_open in login/logind-button.c when udev events are received",
|
||||
"Description": "An issue was discovered in button_open in login/logind-button.c in systemd before 243. When executing the udevadm trigger command, a memory leak may occur.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-772"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 2.1
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L",
|
||||
"V3Score": 2.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00014.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-20386",
|
||||
"https://github.com/systemd/systemd/commit/b2774a3ae692113e1f47a336a6c09bac9cfb49ad",
|
||||
"https://security.netapp.com/advisory/ntap-20200210-0002/",
|
||||
"https://usn.ubuntu.com/4269-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-21T06:15:00Z",
|
||||
"LastModifiedDate": "2020-02-10T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3843",
|
||||
"PkgName": "libsystemd0",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3843",
|
||||
"Title": "systemd: services with DynamicUser can create SUID/SGID binaries",
|
||||
"Description": "It was discovered that a systemd service that uses DynamicUser property can create a SUID/SGID binary that would be allowed to run as the transient service UID/GID even after the service is terminated. A local attacker may use this flaw to access resources that will be owned by a potentially different service in the future, when the UID/GID will be recycled.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-264"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 4.6,
|
||||
"V3Score": 7.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 4.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://www.securityfocus.com/bid/108116",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3843",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3843",
|
||||
"https://github.com/systemd/systemd-stable/pull/54 (backport for v241-stable)",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5JXQAKSTMABZ46EVCRMW62DHWYHTTFES/",
|
||||
"https://security.netapp.com/advisory/ntap-20190619-0002/",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
],
|
||||
"PublishedDate": "2019-04-26T21:29:00Z",
|
||||
"LastModifiedDate": "2019-06-19T10:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3844",
|
||||
"PkgName": "libsystemd0",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3844",
|
||||
"Title": "systemd: services with DynamicUser can get new privileges and create SGID binaries",
|
||||
"Description": "It was discovered that a systemd service that uses DynamicUser property can get new privileges through the execution of SUID binaries, which would allow to create binaries owned by the service transient group with the setgid bit set. A local attacker may use this flaw to access resources that will be owned by a potentially different service in the future, when the GID will be recycled.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-264"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 4.6,
|
||||
"V3Score": 7.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 4.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://www.securityfocus.com/bid/108096",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3844",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3844",
|
||||
"https://security.netapp.com/advisory/ntap-20190619-0002/",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
],
|
||||
"PublishedDate": "2019-04-26T21:29:00Z",
|
||||
"LastModifiedDate": "2019-06-19T10:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-15718",
|
||||
"PkgName": "libudev1",
|
||||
@@ -105,17 +615,181 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-15718",
|
||||
"Title": "systemd: systemd-resolved allows unprivileged users to configure DNS",
|
||||
"Description": "In systemd 240, bus_open_system_watch_bind_with_description in shared/bus-util.c (as used by systemd-resolved to connect to the system D-Bus instance), calls sd_bus_set_trusted, which disables access controls for incoming D-Bus messages. An unprivileged user can exploit this by executing D-Bus methods that should be restricted to privileged users, in order to change the system's DNS resolver settings.",
|
||||
"Severity": "LOW",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-284"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:N/I:P/A:N",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:N",
|
||||
"V2Score": 2.1,
|
||||
"V3Score": 5.5
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 5.3
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2019-15718.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2019-3592.html",
|
||||
"http://www.openwall.com/lists/oss-security/2019/09/03/1",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=1746057",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-15718",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/BRE5IS24XTF5WNZGH2L7GSQJKARBOEGL/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/HIKGKXZ5OEGOEYURHLJHEMFYNLEGAW5B/",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/U2WNHRJW4XI6H5YMDG4BUFGPAXWUMUVG/"
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/U2WNHRJW4XI6H5YMDG4BUFGPAXWUMUVG/",
|
||||
"https://usn.ubuntu.com/usn/usn-4120-1"
|
||||
],
|
||||
"PublishedDate": "2019-09-04T12:15:00Z",
|
||||
"LastModifiedDate": "2019-09-19T04:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2020-1712",
|
||||
"PkgName": "libudev1",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2020-1712",
|
||||
"Title": "systemd: use-after-free when asynchronous polkit queries are performed",
|
||||
"Description": "A heap use-after-free vulnerability was found in systemd, where asynchronous Polkit queries are performed while handling dbus messages. A local unprivileged attacker can abuse this flaw to crash systemd services or potentially execute code and elevate their privileges, by sending specially crafted dbus messages.",
|
||||
"Severity": "MEDIUM",
|
||||
"CVSS": {
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V3Score": 7.8
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://linux.oracle.com/cve/CVE-2020-1712.html",
|
||||
"http://linux.oracle.com/errata/ELSA-2020-0575.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-1712",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
]
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-20386",
|
||||
"PkgName": "libudev1",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-20386",
|
||||
"Title": "systemd: a memory leak was discovered in button_open in login/logind-button.c when udev events are received",
|
||||
"Description": "An issue was discovered in button_open in login/logind-button.c in systemd before 243. When executing the udevadm trigger command, a memory leak may occur.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-772"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:N/I:N/A:P",
|
||||
"V2Score": 2.1
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.1/AV:P/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L",
|
||||
"V3Score": 2.4
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2020-02/msg00014.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-20386",
|
||||
"https://github.com/systemd/systemd/commit/b2774a3ae692113e1f47a336a6c09bac9cfb49ad",
|
||||
"https://security.netapp.com/advisory/ntap-20200210-0002/",
|
||||
"https://usn.ubuntu.com/4269-1/",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
],
|
||||
"PublishedDate": "2020-01-21T06:15:00Z",
|
||||
"LastModifiedDate": "2020-02-10T11:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3843",
|
||||
"PkgName": "libudev1",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3843",
|
||||
"Title": "systemd: services with DynamicUser can create SUID/SGID binaries",
|
||||
"Description": "It was discovered that a systemd service that uses DynamicUser property can create a SUID/SGID binary that would be allowed to run as the transient service UID/GID even after the service is terminated. A local attacker may use this flaw to access resources that will be owned by a potentially different service in the future, when the UID/GID will be recycled.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-264"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 4.6,
|
||||
"V3Score": 7.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 4.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://www.securityfocus.com/bid/108116",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3843",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3843",
|
||||
"https://github.com/systemd/systemd-stable/pull/54 (backport for v241-stable)",
|
||||
"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/5JXQAKSTMABZ46EVCRMW62DHWYHTTFES/",
|
||||
"https://security.netapp.com/advisory/ntap-20190619-0002/",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
],
|
||||
"PublishedDate": "2019-04-26T21:29:00Z",
|
||||
"LastModifiedDate": "2019-06-19T10:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-3844",
|
||||
"PkgName": "libudev1",
|
||||
"InstalledVersion": "237-3ubuntu10.25",
|
||||
"FixedVersion": "237-3ubuntu10.38",
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-3844",
|
||||
"Title": "systemd: services with DynamicUser can get new privileges and create SGID binaries",
|
||||
"Description": "It was discovered that a systemd service that uses DynamicUser property can get new privileges through the execution of SUID binaries, which would allow to create binaries owned by the service transient group with the setgid bit set. A local attacker may use this flaw to access resources that will be owned by a potentially different service in the future, when the GID will be recycled.",
|
||||
"Severity": "LOW",
|
||||
"CweIDs": [
|
||||
"CWE-264"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:L/AC:L/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 4.6,
|
||||
"V3Score": 7.8
|
||||
},
|
||||
"redhat": {
|
||||
"V3Vector": "CVSS:3.0/AV:L/AC:H/PR:L/UI:N/S:U/C:L/I:L/A:L",
|
||||
"V3Score": 4.5
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://www.securityfocus.com/bid/108096",
|
||||
"https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2019-3844",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-3844",
|
||||
"https://security.netapp.com/advisory/ntap-20190619-0002/",
|
||||
"https://usn.ubuntu.com/usn/usn-4269-1"
|
||||
],
|
||||
"PublishedDate": "2019-04-26T21:29:00Z",
|
||||
"LastModifiedDate": "2019-06-19T10:15:00Z"
|
||||
},
|
||||
{
|
||||
"VulnerabilityID": "CVE-2019-11922",
|
||||
"PkgName": "libzstd1",
|
||||
@@ -124,15 +798,32 @@
|
||||
"Layer": {
|
||||
"DiffID": "sha256:6cebf3abed5fac58d2e792ce8461454e92c245d5312c42118f02e231a73b317f"
|
||||
},
|
||||
"SeveritySource": "ubuntu",
|
||||
"PrimaryURL": "https://avd.aquasec.com/nvd/cve-2019-11922",
|
||||
"Description": "A race condition in the one-pass compression functions of Zstandard prior to version 1.3.8 could allow an attacker to write bytes out of bounds if an output buffer smaller than the recommended size was used.",
|
||||
"Severity": "MEDIUM",
|
||||
"CweIDs": [
|
||||
"CWE-362"
|
||||
],
|
||||
"CVSS": {
|
||||
"nvd": {
|
||||
"V2Vector": "AV:N/AC:M/Au:N/C:P/I:P/A:P",
|
||||
"V3Vector": "CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H",
|
||||
"V2Score": 6.8,
|
||||
"V3Score": 8.1
|
||||
}
|
||||
},
|
||||
"References": [
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00008.html",
|
||||
"http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00062.html",
|
||||
"https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11922",
|
||||
"https://github.com/facebook/zstd/commit/3e5cdf1b6a85843e991d7d10f6a2567c15580da0",
|
||||
"https://github.com/facebook/zstd/pull/1404/commits/3e5cdf1b6a85843e991d7d10f6a2567c15580da0",
|
||||
"https://usn.ubuntu.com/usn/usn-4108-1",
|
||||
"https://www.facebook.com/security/advisories/cve-2019-11922"
|
||||
]
|
||||
],
|
||||
"PublishedDate": "2019-07-25T21:15:00Z",
|
||||
"LastModifiedDate": "2019-08-12T21:15:00Z"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
2786
integration/testdata/ubuntu-1804.json.golden
vendored
2786
integration/testdata/ubuntu-1804.json.golden
vendored
File diff suppressed because it is too large
Load Diff
528
internal/app.go
528
internal/app.go
@@ -8,18 +8,19 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/spf13/afero"
|
||||
"github.com/urfave/cli"
|
||||
"github.com/urfave/cli/v2"
|
||||
|
||||
"github.com/aquasecurity/trivy-db/pkg/db"
|
||||
"github.com/aquasecurity/trivy-db/pkg/types"
|
||||
"github.com/aquasecurity/trivy/internal/artifact"
|
||||
"github.com/aquasecurity/trivy/internal/client"
|
||||
"github.com/aquasecurity/trivy/internal/server"
|
||||
"github.com/aquasecurity/trivy/internal/standalone"
|
||||
tdb "github.com/aquasecurity/trivy/pkg/db"
|
||||
"github.com/aquasecurity/trivy/pkg/utils"
|
||||
"github.com/aquasecurity/trivy/pkg/vulnerability"
|
||||
)
|
||||
|
||||
// VersionInfo holds the trivy DB version Info
|
||||
type VersionInfo struct {
|
||||
Version string `json:",omitempty"`
|
||||
VulnerabilityDB *db.Metadata `json:",omitempty"`
|
||||
@@ -27,164 +28,239 @@ type VersionInfo struct {
|
||||
|
||||
var (
|
||||
templateFlag = cli.StringFlag{
|
||||
Name: "template, t",
|
||||
Value: "",
|
||||
Usage: "output template",
|
||||
EnvVar: "TRIVY_TEMPLATE",
|
||||
Name: "template",
|
||||
Aliases: []string{"t"},
|
||||
Value: "",
|
||||
Usage: "output template",
|
||||
EnvVars: []string{"TRIVY_TEMPLATE"},
|
||||
}
|
||||
|
||||
formatFlag = cli.StringFlag{
|
||||
Name: "format, f",
|
||||
Value: "table",
|
||||
Usage: "format (table, json, template)",
|
||||
EnvVar: "TRIVY_FORMAT",
|
||||
Name: "format",
|
||||
Aliases: []string{"f"},
|
||||
Value: "table",
|
||||
Usage: "format (table, json, template)",
|
||||
EnvVars: []string{"TRIVY_FORMAT"},
|
||||
}
|
||||
|
||||
inputFlag = cli.StringFlag{
|
||||
Name: "input, i",
|
||||
Value: "",
|
||||
Usage: "input file path instead of image name",
|
||||
EnvVar: "TRIVY_INPUT",
|
||||
Name: "input",
|
||||
Aliases: []string{"i"},
|
||||
Value: "",
|
||||
Usage: "input file path instead of image name",
|
||||
EnvVars: []string{"TRIVY_INPUT"},
|
||||
}
|
||||
|
||||
severityFlag = cli.StringFlag{
|
||||
Name: "severity, s",
|
||||
Value: strings.Join(types.SeverityNames, ","),
|
||||
Usage: "severities of vulnerabilities to be displayed (comma separated)",
|
||||
EnvVar: "TRIVY_SEVERITY",
|
||||
Name: "severity",
|
||||
Aliases: []string{"s"},
|
||||
Value: strings.Join(types.SeverityNames, ","),
|
||||
Usage: "severities of vulnerabilities to be displayed (comma separated)",
|
||||
EnvVars: []string{"TRIVY_SEVERITY"},
|
||||
}
|
||||
|
||||
outputFlag = cli.StringFlag{
|
||||
Name: "output, o",
|
||||
Usage: "output file name",
|
||||
EnvVar: "TRIVY_OUTPUT",
|
||||
Name: "output",
|
||||
Aliases: []string{"o"},
|
||||
Usage: "output file name",
|
||||
EnvVars: []string{"TRIVY_OUTPUT"},
|
||||
}
|
||||
|
||||
exitCodeFlag = cli.IntFlag{
|
||||
Name: "exit-code",
|
||||
Usage: "Exit code when vulnerabilities were found",
|
||||
Value: 0,
|
||||
EnvVar: "TRIVY_EXIT_CODE",
|
||||
Name: "exit-code",
|
||||
Usage: "Exit code when vulnerabilities were found",
|
||||
Value: 0,
|
||||
EnvVars: []string{"TRIVY_EXIT_CODE"},
|
||||
}
|
||||
|
||||
skipUpdateFlag = cli.BoolFlag{
|
||||
Name: "skip-update",
|
||||
Usage: "skip db update",
|
||||
EnvVar: "TRIVY_SKIP_UPDATE",
|
||||
Name: "skip-update",
|
||||
Usage: "skip db update",
|
||||
EnvVars: []string{"TRIVY_SKIP_UPDATE"},
|
||||
}
|
||||
|
||||
downloadDBOnlyFlag = cli.BoolFlag{
|
||||
Name: "download-db-only",
|
||||
Usage: "download/update vulnerability database but don't run a scan",
|
||||
EnvVar: "TRIVY_DOWNLOAD_DB_ONLY",
|
||||
Name: "download-db-only",
|
||||
Usage: "download/update vulnerability database but don't run a scan",
|
||||
EnvVars: []string{"TRIVY_DOWNLOAD_DB_ONLY"},
|
||||
}
|
||||
|
||||
resetFlag = cli.BoolFlag{
|
||||
Name: "reset",
|
||||
Usage: "remove all caches and database",
|
||||
EnvVar: "TRIVY_RESET",
|
||||
Name: "reset",
|
||||
Usage: "remove all caches and database",
|
||||
EnvVars: []string{"TRIVY_RESET"},
|
||||
}
|
||||
|
||||
clearCacheFlag = cli.BoolFlag{
|
||||
Name: "clear-cache, c",
|
||||
Usage: "clear image caches without scanning",
|
||||
EnvVar: "TRIVY_CLEAR_CACHE",
|
||||
Name: "clear-cache",
|
||||
Aliases: []string{"c"},
|
||||
Usage: "clear image caches without scanning",
|
||||
EnvVars: []string{"TRIVY_CLEAR_CACHE"},
|
||||
}
|
||||
|
||||
quietFlag = cli.BoolFlag{
|
||||
Name: "quiet, q",
|
||||
Usage: "suppress progress bar and log output",
|
||||
EnvVar: "TRIVY_QUIET",
|
||||
Name: "quiet",
|
||||
Aliases: []string{"q"},
|
||||
Usage: "suppress progress bar and log output",
|
||||
EnvVars: []string{"TRIVY_QUIET"},
|
||||
}
|
||||
|
||||
noProgressFlag = cli.BoolFlag{
|
||||
Name: "no-progress",
|
||||
Usage: "suppress progress bar",
|
||||
EnvVar: "TRIVY_NO_PROGRESS",
|
||||
Name: "no-progress",
|
||||
Usage: "suppress progress bar",
|
||||
EnvVars: []string{"TRIVY_NO_PROGRESS"},
|
||||
}
|
||||
|
||||
ignoreUnfixedFlag = cli.BoolFlag{
|
||||
Name: "ignore-unfixed",
|
||||
Usage: "display only fixed vulnerabilities",
|
||||
EnvVar: "TRIVY_IGNORE_UNFIXED",
|
||||
Name: "ignore-unfixed",
|
||||
Usage: "display only fixed vulnerabilities",
|
||||
EnvVars: []string{"TRIVY_IGNORE_UNFIXED"},
|
||||
}
|
||||
|
||||
debugFlag = cli.BoolFlag{
|
||||
Name: "debug, d",
|
||||
Usage: "debug mode",
|
||||
EnvVar: "TRIVY_DEBUG",
|
||||
Name: "debug",
|
||||
Aliases: []string{"d"},
|
||||
Usage: "debug mode",
|
||||
EnvVars: []string{"TRIVY_DEBUG"},
|
||||
}
|
||||
|
||||
removedPkgsFlag = cli.BoolFlag{
|
||||
Name: "removed-pkgs",
|
||||
Usage: "detect vulnerabilities of removed packages (only for Alpine)",
|
||||
EnvVar: "TRIVY_REMOVED_PKGS",
|
||||
Name: "removed-pkgs",
|
||||
Usage: "detect vulnerabilities of removed packages (only for Alpine)",
|
||||
EnvVars: []string{"TRIVY_REMOVED_PKGS"},
|
||||
}
|
||||
|
||||
vulnTypeFlag = cli.StringFlag{
|
||||
Name: "vuln-type",
|
||||
Value: "os,library",
|
||||
Usage: "comma-separated list of vulnerability types (os,library)",
|
||||
EnvVar: "TRIVY_VULN_TYPE",
|
||||
Name: "vuln-type",
|
||||
Value: "os,library",
|
||||
Usage: "comma-separated list of vulnerability types (os,library)",
|
||||
EnvVars: []string{"TRIVY_VULN_TYPE"},
|
||||
}
|
||||
|
||||
cacheDirFlag = cli.StringFlag{
|
||||
Name: "cache-dir",
|
||||
Value: utils.DefaultCacheDir(),
|
||||
Usage: "cache directory",
|
||||
EnvVar: "TRIVY_CACHE_DIR",
|
||||
Name: "cache-dir",
|
||||
Value: utils.DefaultCacheDir(),
|
||||
Usage: "cache directory",
|
||||
EnvVars: []string{"TRIVY_CACHE_DIR"},
|
||||
}
|
||||
|
||||
cacheBackendFlag = cli.StringFlag{
|
||||
Name: "cache-backend",
|
||||
Value: "fs",
|
||||
Usage: "cache backend (e.g. redis://localhost:6379)",
|
||||
EnvVars: []string{"TRIVY_CACHE_BACKEND"},
|
||||
}
|
||||
|
||||
ignoreFileFlag = cli.StringFlag{
|
||||
Name: "ignorefile",
|
||||
Value: vulnerability.DefaultIgnoreFile,
|
||||
Usage: "specify .trivyignore file",
|
||||
EnvVar: "TRIVY_IGNOREFILE",
|
||||
Name: "ignorefile",
|
||||
Value: vulnerability.DefaultIgnoreFile,
|
||||
Usage: "specify .trivyignore file",
|
||||
EnvVars: []string{"TRIVY_IGNOREFILE"},
|
||||
}
|
||||
|
||||
timeoutFlag = cli.DurationFlag{
|
||||
Name: "timeout",
|
||||
Value: time.Second * 120,
|
||||
Usage: "docker timeout",
|
||||
EnvVar: "TRIVY_TIMEOUT",
|
||||
Name: "timeout",
|
||||
Value: time.Second * 120,
|
||||
Usage: "docker timeout",
|
||||
EnvVars: []string{"TRIVY_TIMEOUT"},
|
||||
}
|
||||
|
||||
lightFlag = cli.BoolFlag{
|
||||
Name: "light",
|
||||
Usage: "light mode: it's faster, but vulnerability descriptions and references are not displayed",
|
||||
EnvVar: "TRIVY_LIGHT",
|
||||
Name: "light",
|
||||
Usage: "light mode: it's faster, but vulnerability descriptions and references are not displayed",
|
||||
EnvVars: []string{"TRIVY_LIGHT"},
|
||||
}
|
||||
|
||||
token = cli.StringFlag{
|
||||
Name: "token",
|
||||
Usage: "for authentication",
|
||||
EnvVar: "TRIVY_TOKEN",
|
||||
Name: "token",
|
||||
Usage: "for authentication",
|
||||
EnvVars: []string{"TRIVY_TOKEN"},
|
||||
}
|
||||
|
||||
tokenHeader = cli.StringFlag{
|
||||
Name: "token-header",
|
||||
Value: "Trivy-Token",
|
||||
Usage: "specify a header name for token",
|
||||
EnvVar: "TRIVY_TOKEN_HEADER",
|
||||
Name: "token-header",
|
||||
Value: "Trivy-Token",
|
||||
Usage: "specify a header name for token",
|
||||
EnvVars: []string{"TRIVY_TOKEN_HEADER"},
|
||||
}
|
||||
|
||||
ignorePolicy = cli.StringFlag{
|
||||
Name: "ignore-policy",
|
||||
Usage: "specify the Rego file to evaluate each vulnerability",
|
||||
EnvVars: []string{"TRIVY_IGNORE_POLICY"},
|
||||
}
|
||||
|
||||
listAllPackages = cli.BoolFlag{
|
||||
Name: "list-all-pkgs",
|
||||
Usage: "enabling the option will output all packages regardless of vulnerability",
|
||||
EnvVars: []string{"TRIVY_LIST_ALL_PKGS"},
|
||||
}
|
||||
|
||||
skipFiles = cli.StringFlag{
|
||||
Name: "skip-files",
|
||||
Usage: "specify the file path to skip traversal",
|
||||
EnvVars: []string{"TRIVY_SKIP_FILES"},
|
||||
}
|
||||
|
||||
skipDirectories = cli.StringFlag{
|
||||
Name: "skip-dirs",
|
||||
Usage: "specify the directory where the traversal is skipped",
|
||||
EnvVars: []string{"TRIVY_SKIP_DIRS"},
|
||||
}
|
||||
|
||||
globalFlags = []cli.Flag{
|
||||
&quietFlag,
|
||||
&debugFlag,
|
||||
&cacheDirFlag,
|
||||
}
|
||||
|
||||
imageFlags = []cli.Flag{
|
||||
&templateFlag,
|
||||
&formatFlag,
|
||||
&inputFlag,
|
||||
&severityFlag,
|
||||
&outputFlag,
|
||||
&exitCodeFlag,
|
||||
&skipUpdateFlag,
|
||||
&downloadDBOnlyFlag,
|
||||
&resetFlag,
|
||||
&clearCacheFlag,
|
||||
&noProgressFlag,
|
||||
&ignoreUnfixedFlag,
|
||||
&removedPkgsFlag,
|
||||
&vulnTypeFlag,
|
||||
&ignoreFileFlag,
|
||||
&timeoutFlag,
|
||||
&lightFlag,
|
||||
&ignorePolicy,
|
||||
&listAllPackages,
|
||||
&skipFiles,
|
||||
&skipDirectories,
|
||||
&cacheBackendFlag,
|
||||
}
|
||||
|
||||
// deprecated options
|
||||
deprecatedFlags = []cli.Flag{
|
||||
&cli.StringFlag{
|
||||
Name: "only-update",
|
||||
Usage: "deprecated",
|
||||
EnvVars: []string{"TRIVY_ONLY_UPDATE"},
|
||||
},
|
||||
&cli.BoolFlag{
|
||||
Name: "refresh",
|
||||
Usage: "deprecated",
|
||||
EnvVars: []string{"TRIVY_REFRESH"},
|
||||
},
|
||||
&cli.BoolFlag{
|
||||
Name: "auto-refresh",
|
||||
Usage: "deprecated",
|
||||
EnvVars: []string{"TRIVY_AUTO_REFRESH"},
|
||||
},
|
||||
}
|
||||
)
|
||||
|
||||
// NewApp is the factory method to return Trivy CLI
|
||||
func NewApp(version string) *cli.App {
|
||||
cli.AppHelpTemplate = `NAME:
|
||||
{{.Name}}{{if .Usage}} - {{.Usage}}{{end}}
|
||||
USAGE:
|
||||
{{if .UsageText}}{{.UsageText}}{{else}}{{.HelpName}} {{if .VisibleFlags}}[options]{{end}} {{if .ArgsUsage}}{{.ArgsUsage}}{{else}}[arguments...]{{end}}{{end}}{{if .Version}}{{if not .HideVersion}}
|
||||
VERSION:
|
||||
{{.Version}}{{end}}{{end}}{{if .Description}}
|
||||
DESCRIPTION:
|
||||
{{.Description}}{{end}}{{if len .Authors}}
|
||||
AUTHOR{{with $length := len .Authors}}{{if ne 1 $length}}S{{end}}{{end}}:
|
||||
{{range $index, $author := .Authors}}{{if $index}}
|
||||
{{end}}{{$author}}{{end}}{{end}}{{if .VisibleCommands}}
|
||||
OPTIONS:
|
||||
{{range $index, $option := .VisibleFlags}}{{if $index}}
|
||||
{{end}}{{$option}}{{end}}{{end}}
|
||||
`
|
||||
cli.VersionPrinter = func(c *cli.Context) {
|
||||
showVersion(c.String("cache-dir"), c.String("format"), c.App.Version, c.App.Writer)
|
||||
}
|
||||
@@ -192,77 +268,69 @@ OPTIONS:
|
||||
app := cli.NewApp()
|
||||
app.Name = "trivy"
|
||||
app.Version = version
|
||||
app.ArgsUsage = "image_name"
|
||||
|
||||
app.ArgsUsage = "target"
|
||||
app.Usage = "A simple and comprehensive vulnerability scanner for containers"
|
||||
|
||||
app.EnableBashCompletion = true
|
||||
|
||||
app.Flags = []cli.Flag{
|
||||
templateFlag,
|
||||
formatFlag,
|
||||
inputFlag,
|
||||
severityFlag,
|
||||
outputFlag,
|
||||
exitCodeFlag,
|
||||
skipUpdateFlag,
|
||||
downloadDBOnlyFlag,
|
||||
resetFlag,
|
||||
clearCacheFlag,
|
||||
quietFlag,
|
||||
noProgressFlag,
|
||||
ignoreUnfixedFlag,
|
||||
debugFlag,
|
||||
removedPkgsFlag,
|
||||
vulnTypeFlag,
|
||||
cacheDirFlag,
|
||||
ignoreFileFlag,
|
||||
timeoutFlag,
|
||||
lightFlag,
|
||||
flags := append(globalFlags, setHidden(deprecatedFlags, true)...)
|
||||
flags = append(flags, setHidden(imageFlags, true)...)
|
||||
|
||||
// deprecated options
|
||||
cli.StringFlag{
|
||||
Name: "only-update",
|
||||
Usage: "deprecated",
|
||||
EnvVar: "TRIVY_ONLY_UPDATE",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "refresh",
|
||||
Usage: "deprecated",
|
||||
EnvVar: "TRIVY_REFRESH",
|
||||
},
|
||||
cli.BoolFlag{
|
||||
Name: "auto-refresh",
|
||||
Usage: "deprecated",
|
||||
EnvVar: "TRIVY_AUTO_REFRESH",
|
||||
},
|
||||
}
|
||||
|
||||
app.Commands = []cli.Command{
|
||||
app.Flags = flags
|
||||
app.Commands = []*cli.Command{
|
||||
NewImageCommand(),
|
||||
NewFilesystemCommand(),
|
||||
NewRepositoryCommand(),
|
||||
NewClientCommand(),
|
||||
NewServerCommand(),
|
||||
}
|
||||
|
||||
app.Action = standalone.Run
|
||||
app.Action = artifact.ImageRun
|
||||
return app
|
||||
}
|
||||
|
||||
func setHidden(flags []cli.Flag, hidden bool) []cli.Flag {
|
||||
var newFlags []cli.Flag
|
||||
for _, flag := range flags {
|
||||
var f cli.Flag
|
||||
switch pf := flag.(type) {
|
||||
case *cli.StringFlag:
|
||||
stringFlag := *pf
|
||||
stringFlag.Hidden = hidden
|
||||
f = &stringFlag
|
||||
case *cli.BoolFlag:
|
||||
boolFlag := *pf
|
||||
boolFlag.Hidden = hidden
|
||||
f = &boolFlag
|
||||
case *cli.IntFlag:
|
||||
intFlag := *pf
|
||||
intFlag.Hidden = hidden
|
||||
f = &intFlag
|
||||
case *cli.DurationFlag:
|
||||
durationFlag := *pf
|
||||
durationFlag.Hidden = hidden
|
||||
f = &durationFlag
|
||||
}
|
||||
newFlags = append(newFlags, f)
|
||||
}
|
||||
return newFlags
|
||||
}
|
||||
|
||||
func showVersion(cacheDir, outputFormat, version string, outputWriter io.Writer) {
|
||||
var dbMeta *db.Metadata
|
||||
|
||||
metadata, _ := tdb.NewMetadata(afero.NewOsFs(), cacheDir).Get()
|
||||
metadata, _ := tdb.NewMetadata(afero.NewOsFs(), cacheDir).Get() // nolint: errcheck
|
||||
if !metadata.UpdatedAt.IsZero() && !metadata.NextUpdate.IsZero() && metadata.Version != 0 {
|
||||
dbMeta = &db.Metadata{
|
||||
Version: metadata.Version,
|
||||
Type: metadata.Type,
|
||||
NextUpdate: metadata.NextUpdate.UTC(),
|
||||
UpdatedAt: metadata.UpdatedAt.UTC(),
|
||||
Version: metadata.Version,
|
||||
Type: metadata.Type,
|
||||
NextUpdate: metadata.NextUpdate.UTC(),
|
||||
UpdatedAt: metadata.UpdatedAt.UTC(),
|
||||
DownloadedAt: metadata.DownloadedAt.UTC(),
|
||||
}
|
||||
}
|
||||
|
||||
switch outputFormat {
|
||||
case "json":
|
||||
b, _ := json.Marshal(VersionInfo{
|
||||
b, _ := json.Marshal(VersionInfo{ // nolint: errcheck
|
||||
Version: version,
|
||||
VulnerabilityDB: dbMeta,
|
||||
})
|
||||
@@ -282,75 +350,151 @@ func showVersion(cacheDir, outputFormat, version string, outputWriter io.Writer)
|
||||
Version: %d
|
||||
UpdatedAt: %s
|
||||
NextUpdate: %s
|
||||
`, dbType, dbMeta.Version, dbMeta.UpdatedAt.UTC(), dbMeta.NextUpdate.UTC())
|
||||
DownloadedAt: %s
|
||||
`, dbType, dbMeta.Version, dbMeta.UpdatedAt.UTC(), dbMeta.NextUpdate.UTC(), dbMeta.DownloadedAt.UTC())
|
||||
}
|
||||
fmt.Fprintf(outputWriter, output)
|
||||
}
|
||||
}
|
||||
|
||||
func NewClientCommand() cli.Command {
|
||||
return cli.Command{
|
||||
Name: "client",
|
||||
Aliases: []string{"c"},
|
||||
Usage: "client mode",
|
||||
Action: client.Run,
|
||||
// NewImageCommand is the factory method to add image command
|
||||
func NewImageCommand() *cli.Command {
|
||||
return &cli.Command{
|
||||
Name: "image",
|
||||
Aliases: []string{"i"},
|
||||
ArgsUsage: "image_name",
|
||||
Usage: "scan an image",
|
||||
Action: artifact.ImageRun,
|
||||
Flags: imageFlags,
|
||||
}
|
||||
}
|
||||
|
||||
// NewFilesystemCommand is the factory method to add filesystem command
|
||||
func NewFilesystemCommand() *cli.Command {
|
||||
return &cli.Command{
|
||||
Name: "filesystem",
|
||||
Aliases: []string{"fs"},
|
||||
ArgsUsage: "dir",
|
||||
Usage: "scan local filesystem",
|
||||
Action: artifact.FilesystemRun,
|
||||
Flags: []cli.Flag{
|
||||
templateFlag,
|
||||
formatFlag,
|
||||
inputFlag,
|
||||
severityFlag,
|
||||
outputFlag,
|
||||
exitCodeFlag,
|
||||
clearCacheFlag,
|
||||
quietFlag,
|
||||
ignoreUnfixedFlag,
|
||||
debugFlag,
|
||||
removedPkgsFlag,
|
||||
vulnTypeFlag,
|
||||
ignoreFileFlag,
|
||||
cacheDirFlag,
|
||||
timeoutFlag,
|
||||
&templateFlag,
|
||||
&formatFlag,
|
||||
&inputFlag,
|
||||
&severityFlag,
|
||||
&outputFlag,
|
||||
&exitCodeFlag,
|
||||
&skipUpdateFlag,
|
||||
&clearCacheFlag,
|
||||
&ignoreUnfixedFlag,
|
||||
&removedPkgsFlag,
|
||||
&vulnTypeFlag,
|
||||
&ignoreFileFlag,
|
||||
&cacheBackendFlag,
|
||||
&timeoutFlag,
|
||||
&noProgressFlag,
|
||||
&ignorePolicy,
|
||||
&listAllPackages,
|
||||
&skipFiles,
|
||||
&skipDirectories,
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
// NewRepositoryCommand is the factory method to add repository command
|
||||
func NewRepositoryCommand() *cli.Command {
|
||||
return &cli.Command{
|
||||
Name: "repository",
|
||||
Aliases: []string{"repo"},
|
||||
ArgsUsage: "repo_url",
|
||||
Usage: "scan remote repository",
|
||||
Action: artifact.RepositoryRun,
|
||||
Flags: []cli.Flag{
|
||||
&templateFlag,
|
||||
&formatFlag,
|
||||
&inputFlag,
|
||||
&severityFlag,
|
||||
&outputFlag,
|
||||
&exitCodeFlag,
|
||||
&skipUpdateFlag,
|
||||
&clearCacheFlag,
|
||||
&ignoreUnfixedFlag,
|
||||
&removedPkgsFlag,
|
||||
&vulnTypeFlag,
|
||||
&ignoreFileFlag,
|
||||
&cacheBackendFlag,
|
||||
&timeoutFlag,
|
||||
&noProgressFlag,
|
||||
&ignorePolicy,
|
||||
&listAllPackages,
|
||||
&skipFiles,
|
||||
&skipDirectories,
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
// NewClientCommand is the factory method to add client command
|
||||
func NewClientCommand() *cli.Command {
|
||||
return &cli.Command{
|
||||
Name: "client",
|
||||
Aliases: []string{"c"},
|
||||
ArgsUsage: "image_name",
|
||||
Usage: "client mode",
|
||||
Action: client.Run,
|
||||
Flags: []cli.Flag{
|
||||
&templateFlag,
|
||||
&formatFlag,
|
||||
&inputFlag,
|
||||
&severityFlag,
|
||||
&outputFlag,
|
||||
&exitCodeFlag,
|
||||
&clearCacheFlag,
|
||||
&ignoreUnfixedFlag,
|
||||
&removedPkgsFlag,
|
||||
&vulnTypeFlag,
|
||||
&ignoreFileFlag,
|
||||
&timeoutFlag,
|
||||
&ignorePolicy,
|
||||
|
||||
// original flags
|
||||
token,
|
||||
tokenHeader,
|
||||
cli.StringFlag{
|
||||
Name: "remote",
|
||||
Value: "http://localhost:4954",
|
||||
Usage: "server address",
|
||||
EnvVar: "TRIVY_REMOTE",
|
||||
&token,
|
||||
&tokenHeader,
|
||||
&cli.StringFlag{
|
||||
Name: "remote",
|
||||
Value: "http://localhost:4954",
|
||||
Usage: "server address",
|
||||
EnvVars: []string{"TRIVY_REMOTE"},
|
||||
},
|
||||
cli.StringSliceFlag{
|
||||
Name: "custom-headers",
|
||||
Usage: "custom headers",
|
||||
EnvVar: "TRIVY_CUSTOM_HEADERS",
|
||||
&cli.StringSliceFlag{
|
||||
Name: "custom-headers",
|
||||
Usage: "custom headers",
|
||||
EnvVars: []string{"TRIVY_CUSTOM_HEADERS"},
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
|
||||
func NewServerCommand() cli.Command {
|
||||
return cli.Command{
|
||||
// NewServerCommand is the factory method to add server command
|
||||
func NewServerCommand() *cli.Command {
|
||||
return &cli.Command{
|
||||
Name: "server",
|
||||
Aliases: []string{"s"},
|
||||
Usage: "server mode",
|
||||
Action: server.Run,
|
||||
Flags: []cli.Flag{
|
||||
skipUpdateFlag,
|
||||
downloadDBOnlyFlag,
|
||||
resetFlag,
|
||||
quietFlag,
|
||||
debugFlag,
|
||||
cacheDirFlag,
|
||||
&skipUpdateFlag,
|
||||
&downloadDBOnlyFlag,
|
||||
&resetFlag,
|
||||
&cacheBackendFlag,
|
||||
|
||||
// original flags
|
||||
token,
|
||||
tokenHeader,
|
||||
cli.StringFlag{
|
||||
Name: "listen",
|
||||
Value: "localhost:4954",
|
||||
Usage: "listen address",
|
||||
EnvVar: "TRIVY_LISTEN",
|
||||
&token,
|
||||
&tokenHeader,
|
||||
&cli.StringFlag{
|
||||
Name: "listen",
|
||||
Value: "localhost:4954",
|
||||
Usage: "listen address",
|
||||
EnvVars: []string{"TRIVY_LISTEN"},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package internal
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"encoding/json"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
"path/filepath"
|
||||
@@ -10,7 +11,6 @@ import (
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
|
||||
dbFile "github.com/aquasecurity/trivy/pkg/db"
|
||||
"github.com/spf13/afero"
|
||||
|
||||
"github.com/aquasecurity/trivy-db/pkg/db"
|
||||
@@ -42,6 +42,7 @@ Vulnerability DB:
|
||||
Version: 42
|
||||
UpdatedAt: 2020-03-16 23:40:20 +0000 UTC
|
||||
NextUpdate: 2020-03-16 23:57:00 +0000 UTC
|
||||
DownloadedAt: 2020-03-16 23:40:20 +0000 UTC
|
||||
`,
|
||||
createDB: true,
|
||||
},
|
||||
@@ -51,7 +52,7 @@ Vulnerability DB:
|
||||
outputFormat: "json",
|
||||
version: "1.2.3",
|
||||
},
|
||||
expectedOutput: `{"Version":"1.2.3","VulnerabilityDB":{"Version":42,"Type":1,"NextUpdate":"2020-03-16T23:57:00Z","UpdatedAt":"2020-03-16T23:40:20Z"}}
|
||||
expectedOutput: `{"Version":"1.2.3","VulnerabilityDB":{"Version":42,"Type":1,"NextUpdate":"2020-03-16T23:57:00Z","UpdatedAt":"2020-03-16T23:40:20Z","DownloadedAt":"2020-03-16T23:40:20Z"}}
|
||||
`,
|
||||
createDB: true,
|
||||
},
|
||||
@@ -87,17 +88,21 @@ Vulnerability DB:
|
||||
}
|
||||
|
||||
if tt.createDB {
|
||||
m := dbFile.NewMetadata(afero.NewOsFs(), cacheDir)
|
||||
fs := afero.NewOsFs()
|
||||
err := os.MkdirAll(filepath.Join(cacheDir, "db"), os.ModePerm)
|
||||
require.NoError(t, err)
|
||||
metadataFile := filepath.Join(cacheDir, "db", "metadata.json")
|
||||
|
||||
err = m.Store(db.Metadata{
|
||||
Version: 42,
|
||||
Type: 1,
|
||||
NextUpdate: time.Unix(1584403020, 0),
|
||||
UpdatedAt: time.Unix(1584402020, 0),
|
||||
b, err := json.Marshal(db.Metadata{
|
||||
Version: 42,
|
||||
Type: 1,
|
||||
NextUpdate: time.Unix(1584403020, 0),
|
||||
UpdatedAt: time.Unix(1584402020, 0),
|
||||
DownloadedAt: time.Unix(1584402020, 0),
|
||||
})
|
||||
require.NoError(t, err)
|
||||
err = afero.WriteFile(fs, metadataFile, b, 0600)
|
||||
require.NoError(t, err)
|
||||
}
|
||||
|
||||
fw := new(bytes.Buffer)
|
||||
@@ -106,3 +111,12 @@ Vulnerability DB:
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestNewCommands(t *testing.T) {
|
||||
NewApp("test")
|
||||
NewClientCommand()
|
||||
NewFilesystemCommand()
|
||||
NewImageCommand()
|
||||
NewRepositoryCommand()
|
||||
NewServerCommand()
|
||||
}
|
||||
|
||||
94
internal/artifact/config/config.go
Normal file
94
internal/artifact/config/config.go
Normal file
@@ -0,0 +1,94 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"github.com/urfave/cli/v2"
|
||||
"golang.org/x/xerrors"
|
||||
|
||||
"github.com/aquasecurity/trivy/internal/config"
|
||||
)
|
||||
|
||||
// Config holds the artifact config
|
||||
type Config struct {
|
||||
config.GlobalConfig
|
||||
config.ArtifactConfig
|
||||
config.DBConfig
|
||||
config.ImageConfig
|
||||
config.ReportConfig
|
||||
config.CacheConfig
|
||||
|
||||
// deprecated
|
||||
onlyUpdate string
|
||||
// deprecated
|
||||
refresh bool
|
||||
// deprecated
|
||||
autoRefresh bool
|
||||
}
|
||||
|
||||
// New is the factory method to return config
|
||||
func New(c *cli.Context) (Config, error) {
|
||||
gc, err := config.NewGlobalConfig(c)
|
||||
if err != nil {
|
||||
return Config{}, xerrors.Errorf("failed to initialize global options: %w", err)
|
||||
}
|
||||
|
||||
return Config{
|
||||
GlobalConfig: gc,
|
||||
ArtifactConfig: config.NewArtifactConfig(c),
|
||||
DBConfig: config.NewDBConfig(c),
|
||||
ImageConfig: config.NewImageConfig(c),
|
||||
ReportConfig: config.NewReportConfig(c),
|
||||
CacheConfig: config.NewCacheConfig(c),
|
||||
|
||||
onlyUpdate: c.String("only-update"),
|
||||
refresh: c.Bool("refresh"),
|
||||
autoRefresh: c.Bool("auto-refresh"),
|
||||
}, nil
|
||||
}
|
||||
|
||||
// Init initializes the artifact config
|
||||
func (c *Config) Init(image bool) error {
|
||||
if c.onlyUpdate != "" || c.refresh || c.autoRefresh {
|
||||
c.Logger.Warn("--only-update, --refresh and --auto-refresh are unnecessary and ignored now. These commands will be removed in the next version.")
|
||||
}
|
||||
|
||||
if err := c.initPreScanConfigs(); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// --clear-cache, --download-db-only and --reset don't conduct the scan
|
||||
if c.skipScan() {
|
||||
return nil
|
||||
}
|
||||
|
||||
if err := c.ArtifactConfig.Init(c.Context, c.Logger); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if image {
|
||||
if err := c.ImageConfig.Init(c.Context.Args(), c.Logger); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *Config) initPreScanConfigs() error {
|
||||
if err := c.ReportConfig.Init(c.Logger); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := c.DBConfig.Init(); err != nil {
|
||||
return err
|
||||
}
|
||||
if err := c.CacheConfig.Init(); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
||||
func (c *Config) skipScan() bool {
|
||||
if c.ClearCache || c.DownloadDBOnly || c.Reset {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
242
internal/artifact/config/config_test.go
Normal file
242
internal/artifact/config/config_test.go
Normal file
@@ -0,0 +1,242 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"flag"
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
"github.com/urfave/cli/v2"
|
||||
"go.uber.org/zap"
|
||||
"go.uber.org/zap/zaptest/observer"
|
||||
|
||||
dbTypes "github.com/aquasecurity/trivy-db/pkg/types"
|
||||
"github.com/aquasecurity/trivy/internal/config"
|
||||
)
|
||||
|
||||
func TestConfig_Init(t *testing.T) {
|
||||
tests := []struct {
|
||||
name string
|
||||
globalConfig config.GlobalConfig
|
||||
dbConfig config.DBConfig
|
||||
imageConfig config.ImageConfig
|
||||
reportConfig config.ReportConfig
|
||||
args []string
|
||||
logs []string
|
||||
want Config
|
||||
wantErr string
|
||||
}{
|
||||
{
|
||||
name: "happy path",
|
||||
reportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
|
||||
VulnType: []string{"os"},
|
||||
},
|
||||
args: []string{"--severity", "CRITICAL", "--vuln-type", "os", "--quiet", "alpine:3.10"},
|
||||
want: Config{
|
||||
GlobalConfig: config.GlobalConfig{
|
||||
Quiet: true,
|
||||
},
|
||||
ArtifactConfig: config.ArtifactConfig{
|
||||
Target: "alpine:3.10",
|
||||
},
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
|
||||
VulnType: []string{"os"},
|
||||
Output: os.Stdout,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "happy path: reset",
|
||||
args: []string{"--reset"},
|
||||
want: Config{
|
||||
DBConfig: config.DBConfig{
|
||||
Reset: true,
|
||||
},
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
|
||||
Output: os.Stdout,
|
||||
VulnType: []string{"os", "library"},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "happy path with an unknown severity",
|
||||
args: []string{"--severity", "CRITICAL,INVALID", "centos:7"},
|
||||
logs: []string{
|
||||
"unknown severity option: unknown severity: INVALID",
|
||||
},
|
||||
want: Config{
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityCritical, dbTypes.SeverityUnknown},
|
||||
Output: os.Stdout,
|
||||
VulnType: []string{"os", "library"},
|
||||
},
|
||||
ArtifactConfig: config.ArtifactConfig{
|
||||
Target: "centos:7",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "deprecated options",
|
||||
args: []string{"--only-update", "alpine", "--severity", "LOW", "debian:buster"},
|
||||
logs: []string{
|
||||
"--only-update, --refresh and --auto-refresh are unnecessary and ignored now. These commands will be removed in the next version.",
|
||||
},
|
||||
want: Config{
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityLow},
|
||||
Output: os.Stdout,
|
||||
VulnType: []string{"os", "library"},
|
||||
},
|
||||
ArtifactConfig: config.ArtifactConfig{
|
||||
Target: "debian:buster",
|
||||
},
|
||||
onlyUpdate: "alpine",
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "invalid option combination: --template enabled without --format",
|
||||
args: []string{"--template", "@contrib/gitlab.tpl", "gitlab/gitlab-ce:12.7.2-ce.0"},
|
||||
logs: []string{
|
||||
"--template is ignored because --format template is not specified. Use --template option with --format template option.",
|
||||
},
|
||||
want: Config{
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
|
||||
Output: os.Stdout,
|
||||
VulnType: []string{"os", "library"},
|
||||
Template: "@contrib/gitlab.tpl",
|
||||
},
|
||||
ArtifactConfig: config.ArtifactConfig{
|
||||
Target: "gitlab/gitlab-ce:12.7.2-ce.0",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "invalid option combination: --template and --format json",
|
||||
args: []string{"--format", "json", "--template", "@contrib/gitlab.tpl", "gitlab/gitlab-ce:12.7.2-ce.0"},
|
||||
logs: []string{
|
||||
"--template is ignored because --format json is specified. Use --template option with --format template option.",
|
||||
},
|
||||
want: Config{
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
|
||||
Output: os.Stdout,
|
||||
VulnType: []string{"os", "library"},
|
||||
Template: "@contrib/gitlab.tpl",
|
||||
Format: "json",
|
||||
},
|
||||
ArtifactConfig: config.ArtifactConfig{
|
||||
Target: "gitlab/gitlab-ce:12.7.2-ce.0",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "invalid option combination: --format template without --template",
|
||||
args: []string{"--format", "template", "--severity", "MEDIUM", "gitlab/gitlab-ce:12.7.2-ce.0"},
|
||||
logs: []string{
|
||||
"--format template is ignored because --template not is specified. Specify --template option when you use --format template.",
|
||||
},
|
||||
want: Config{
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityMedium},
|
||||
Output: os.Stdout,
|
||||
VulnType: []string{"os", "library"},
|
||||
Format: "template",
|
||||
},
|
||||
ArtifactConfig: config.ArtifactConfig{
|
||||
Target: "gitlab/gitlab-ce:12.7.2-ce.0",
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "with latest tag",
|
||||
args: []string{"--auto-refresh", "gcr.io/distroless/base"},
|
||||
logs: []string{
|
||||
"--only-update, --refresh and --auto-refresh are unnecessary and ignored now. These commands will be removed in the next version.",
|
||||
"You should avoid using the :latest tag as it is cached. You need to specify '--clear-cache' option when :latest image is changed",
|
||||
},
|
||||
want: Config{
|
||||
ReportConfig: config.ReportConfig{
|
||||
Severities: []dbTypes.Severity{dbTypes.SeverityCritical},
|
||||
Output: os.Stdout,
|
||||
VulnType: []string{"os", "library"},
|
||||
},
|
||||
ArtifactConfig: config.ArtifactConfig{
|
||||
Target: "gcr.io/distroless/base",
|
||||
},
|
||||
autoRefresh: true,
|
||||
},
|
||||
},
|
||||
{
|
||||
name: "sad: skip and download db",
|
||||
args: []string{"--skip-update", "--download-db-only", "alpine:3.10"},
|
||||
wantErr: "--skip-update and --download-db-only options can not be specified both",
|
||||
},
|
||||
{
|
||||
name: "sad: multiple image names",
|
||||
args: []string{"centos:7", "alpine:3.10"},
|
||||
logs: []string{
|
||||
"multiple targets cannot be specified",
|
||||
},
|
||||
wantErr: "arguments error",
|
||||
},
|
||||
{
|
||||
name: "sad: invalid image name",
|
||||
args: []string{`!"#$%&'()`},
|
||||
wantErr: "could not parse reference",
|
||||
},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
core, obs := observer.New(zap.InfoLevel)
|
||||
logger := zap.New(core)
|
||||
|
||||
app := cli.NewApp()
|
||||
set := flag.NewFlagSet("test", 0)
|
||||
set.Bool("quiet", false, "")
|
||||
set.Bool("no-progress", false, "")
|
||||
set.Bool("reset", false, "")
|
||||
set.Bool("skip-update", false, "")
|
||||
set.Bool("download-db-only", false, "")
|
||||
set.Bool("auto-refresh", false, "")
|
||||
set.String("severity", "CRITICAL", "")
|
||||
set.String("vuln-type", "os,library", "")
|
||||
set.String("only-update", "", "")
|
||||
set.String("template", "", "")
|
||||
set.String("format", "", "")
|
||||
|
||||
ctx := cli.NewContext(app, set, nil)
|
||||
_ = set.Parse(tt.args)
|
||||
|
||||
c, err := New(ctx)
|
||||
require.NoError(t, err, err)
|
||||
|
||||
c.GlobalConfig.Logger = logger.Sugar()
|
||||
err = c.Init(true)
|
||||
|
||||
// tests log messages
|
||||
var gotMessages []string
|
||||
for _, entry := range obs.AllUntimed() {
|
||||
gotMessages = append(gotMessages, entry.Message)
|
||||
}
|
||||
assert.Equal(t, tt.logs, gotMessages, tt.name)
|
||||
|
||||
// test the error
|
||||
switch {
|
||||
case tt.wantErr != "":
|
||||
assert.Contains(t, err.Error(), tt.wantErr, tt.name)
|
||||
return
|
||||
default:
|
||||
assert.NoError(t, err, tt.name)
|
||||
}
|
||||
|
||||
tt.want.GlobalConfig.Context = ctx
|
||||
tt.want.GlobalConfig.Logger = logger.Sugar()
|
||||
assert.Equal(t, tt.want, c, tt.name)
|
||||
})
|
||||
}
|
||||
}
|
||||
37
internal/artifact/fs.go
Normal file
37
internal/artifact/fs.go
Normal file
@@ -0,0 +1,37 @@
|
||||
package artifact
|
||||
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
|
||||
"github.com/urfave/cli/v2"
|
||||
"golang.org/x/xerrors"
|
||||
|
||||
"github.com/aquasecurity/fanal/cache"
|
||||
"github.com/aquasecurity/trivy/internal/artifact/config"
|
||||
"github.com/aquasecurity/trivy/pkg/scanner"
|
||||
)
|
||||
|
||||
func filesystemScanner(ctx context.Context, dir string, ac cache.ArtifactCache, lac cache.LocalArtifactCache, timeout time.Duration) (
|
||||
scanner.Scanner, func(), error) {
|
||||
s, cleanup, err := initializeFilesystemScanner(ctx, dir, ac, lac)
|
||||
if err != nil {
|
||||
return scanner.Scanner{}, func() {}, xerrors.Errorf("unable to initialize a filesystem scanner: %w", err)
|
||||
}
|
||||
return s, cleanup, nil
|
||||
}
|
||||
|
||||
// FilesystemRun runs scan on filesystem
|
||||
func FilesystemRun(cliCtx *cli.Context) error {
|
||||
c, err := config.New(cliCtx)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// initialize config
|
||||
if err = c.Init(false); err != nil {
|
||||
return xerrors.Errorf("failed to initialize options: %w", err)
|
||||
}
|
||||
|
||||
return run(c, filesystemScanner)
|
||||
}
|
||||
51
internal/artifact/image.go
Normal file
51
internal/artifact/image.go
Normal file
@@ -0,0 +1,51 @@
|
||||
package artifact
|
||||
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
|
||||
"github.com/urfave/cli/v2"
|
||||
"golang.org/x/xerrors"
|
||||
|
||||
"github.com/aquasecurity/fanal/cache"
|
||||
"github.com/aquasecurity/trivy/internal/artifact/config"
|
||||
"github.com/aquasecurity/trivy/pkg/scanner"
|
||||
)
|
||||
|
||||
func archiveScanner(ctx context.Context, input string, ac cache.ArtifactCache, lac cache.LocalArtifactCache, timeout time.Duration) (
|
||||
scanner.Scanner, func(), error) {
|
||||
s, err := initializeArchiveScanner(ctx, input, ac, lac, timeout)
|
||||
if err != nil {
|
||||
return scanner.Scanner{}, func() {}, xerrors.Errorf("unable to initialize the archive scanner: %w", err)
|
||||
}
|
||||
return s, func() {}, nil
|
||||
}
|
||||
|
||||
func dockerScanner(ctx context.Context, imageName string, ac cache.ArtifactCache, lac cache.LocalArtifactCache, timeout time.Duration) (
|
||||
scanner.Scanner, func(), error) {
|
||||
s, cleanup, err := initializeDockerScanner(ctx, imageName, ac, lac, timeout)
|
||||
if err != nil {
|
||||
return scanner.Scanner{}, func() {}, xerrors.Errorf("unable to initialize a docker scanner: %w", err)
|
||||
}
|
||||
return s, cleanup, nil
|
||||
}
|
||||
|
||||
// ImageRun runs scan on docker image
|
||||
func ImageRun(cliCtx *cli.Context) error {
|
||||
c, err := config.New(cliCtx)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// initialize config
|
||||
if err := c.Init(true); err != nil {
|
||||
return xerrors.Errorf("failed to initialize options: %w", err)
|
||||
}
|
||||
|
||||
if c.Input != "" {
|
||||
// scan tar file
|
||||
return run(c, archiveScanner)
|
||||
}
|
||||
|
||||
return run(c, dockerScanner)
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user