Skip to content

Commit 3a3f7c2

Browse files
committed
Updates based on feedback for the triage process
1 parent 5157835 commit 3a3f7c2

File tree

5 files changed

+50
-20
lines changed

5 files changed

+50
-20
lines changed

sig-security/README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,13 @@ Security Documents and Documentation
4747
- [kubernetes/community/sig-security/sig-security-docs](https://github.com/kubernetes/community/blob/master/sig-security/sig-security-docs/OWNERS)
4848
- **Contact:**
4949
- Slack: [#sig-security-docs](https://kubernetes.slack.com/messages/sig-security-docs)
50+
### security-tooling
51+
Development and Enhancements of Security Tooling
52+
- **Owners:**
53+
- [kubernetes/community/sig-security/sig-security-tooling](https://github.com/kubernetes/community/blob/master/sig-security/sig-security-tooling/OWNERS)
54+
- **Contact:**
55+
- Slack: [#sig-security-tooling](https://kubernetes.slack.com/messages/sig-security-tooling)
56+
- [Mailing List]([email protected])
5057

5158
[subproject-definition]: https://github.com/kubernetes/community/blob/master/governance.md#subprojects
5259
<!-- BEGIN CUSTOM CONTENT -->

sig-security/sig-security-tooling/vulnerability-mgmt/README.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,25 @@
11
# Vulnerability Management
2-
Covers kubernetes wide vulnerability management process, policies and workflows
2+
Covers Kubernetes wide vulnerability management process, policies and workflows
33
that tackle known vulnerabilities in kubernetes artifacts
44

55
## Goals
66

7-
1. Identify known vulnerabilities in kubernetes artifacts by scanning them periodically
7+
1. Identify known vulnerabilities in Kubernetes artifacts by scanning them periodically
88
2. Leverage the existing triage and resolution process (i.e. Github issues, PRs)
9-
to document and resolve any vulnerabilities that impact kubernetes
9+
to document and resolve any vulnerabilities that impact Kubernetes
1010
3. Create community driven awareness and documentation around known
11-
CVEs in kubernetes related artifacts
11+
CVEs in Kubernetes related artifacts
1212

1313
### Build Time Dependencies
1414

1515
A tool agnostic periodic scanning of build time dependencies
16-
(typically dependencies found in `go.mod` file) of kubernetes.
16+
(typically dependencies found in `go.mod` file) of Kubernetes.
1717
More details can be found [here](build-time-dependencies.md)
1818

1919
### Vulnerability Resolution Policy
2020

2121
Leveraging community driven triage and impact assessment to resolve known
22-
vulnerabilities in kubernetes artifacts. More details can be found [here](policy-for-vulnerability-resolution.md)
22+
vulnerabilities in Kubernetes artifacts. More details can be found [here](policy-for-vulnerability-resolution.md)
2323

2424
*NOTE*: Artifacts here refer to code, images and binaries
2525

@@ -31,7 +31,7 @@ vulnerabilities in kubernetes artifacts. More details can be found [here](policy
3131
2. **Runtime dependencies**: Triaging of vulnerabilities found in components
3232
that are runtime dependencies for an on-premises or _*
3333
-as-a-service_
34-
kubernetes deployment. Examples include but are not limited to container
34+
Kubernetes deployment. Examples include but are not limited to container
3535
runtimes, container registries, Node OS
3636
3. **Resolving license violations**: Allowed third party license policy can be
3737
found here:
@@ -42,7 +42,7 @@ vulnerabilities in kubernetes artifacts. More details can be found [here](policy
4242
Although, more items will be added through community feedback and organic growth of
4343
security needs of the project, currently identified work includes automating
4444
triage and resolution of vulnerabilities as it relates to container
45-
images in kubernetes repo
45+
images in Kubernetes repo
4646

4747
### Container Images
4848

sig-security/sig-security-tooling/vulnerability-mgmt/build-time-dependencies.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Periodic scanning for vulnerabilities in build time dependencies
22

33
Report vulnerabilities in build time dependencies
4-
of [kubernetes](https://github.com/kubernetes/kubernetes) repository
4+
of [Kubernetes](https://github.com/kubernetes/kubernetes) repository
55

66
Tracker: [Issue #101528](https://github.com/kubernetes/kubernetes/issues/101528)
77

@@ -22,7 +22,7 @@ in place, [snyk](https://snyk.io/) was chosen for following reasons:
2222

2323
## Implementation with Snyk
2424

25-
There are two ways to scan the kubernetes repo for vulnerabilities in
25+
There are two ways to scan the Kubernetes repo for vulnerabilities in
2626
dependencies at build time
2727

2828
### Running the scan locally
@@ -65,7 +65,7 @@ here: https://testgrid.k8s.io/sig-security-snyk-scan#ci-kubernetes-snyk-master
6565

6666
#### Improvements to the raw scan results
6767

68-
Raw scan results were useful, but needed some kubernetes specific work
68+
Raw scan results were useful, but needed some Kubernetes specific work
6969

7070
##### JSON output
7171

@@ -89,7 +89,7 @@ cat licenses-cves.json | jq '.vulnerabilities | .[] | select (.type=="license" |
8989

9090
Since these are really pointing to the code at HEAD in git tracking, we can
9191
ignore the vulnerabilities that are generated when snyk detects v0.0.0 as
92-
kubernetes version because of the way
92+
Kubernetes version because of the way
9393
[replace](https://github.com/golang/go/wiki/Modules#when-should-i-use-the-replace-directive)
9494
directives are used.
9595

@@ -101,6 +101,10 @@ cat licenses-cves.json | jq '.vulnerabilities | .[] | select ((.type=="license")
101101

102102
### Example of filtered JSON scan result
103103

104+
__Note__: Results of the filtered scan are not printed as part of the CI job.
105+
However, the following historical scan result is mentioned here for
106+
reference purposes only:
107+
104108
<!-- markdownlint-disable MD033 -->
105109
<details><summary>Click to view result</summary>
106110
<!-- markdownlint-enable MD033 -->

sig-security/sig-security-tooling/vulnerability-mgmt/policy-for-vulnerability-resolution.md

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Policy for Vulnerability resolution
22

33
Depending on the impact of the vulnerability identified, appropriate resolution
4-
is triggered to apply the fix to kubernetes or document the cause for not fixing
4+
is triggered to apply the fix to Kubernetes or document the cause for not fixing
55

66
## Assumptions
77

@@ -13,13 +13,25 @@ is triggered to apply the fix to kubernetes or document the cause for not fixing
1313

1414
## Triage process
1515

16-
|No. | Category | Definition | Resolution |
17-
|---|---|---|---|
18-
| 1 | False positive | k/k and vulnerable package is not impacted by this CVE | Open a Github issue and log the resolution |
19-
| 2 | True positive but no impact | Package version used in k/k is vulnerable, but k/k is not using the vulnerable code | Open a Github issue and a PR to bump the dependency to the version with a fix. This fix will go in subsequent release of k/k |
20-
| 3 | True positive with negligible impact | Package version used in k/k is vulnerable, but k/k is using the vulnerable code, but the vulnerability does not apply as per k/k threat model | Open a Github issue that describes why this will have negligible impact with relevant compensatory controls. Also, open a PR to bump the dependency to the version with a fix. This fix will go in subsequent release of k/k |
21-
| 4 | True positive with impact | Package version used in k/k is vulnerable, and k/k is using the vulnerable code | Open a Github issue, that assesses impact, modifies CVSS rating for k8s, if needed and suggest compensatory controls. Also, open a PR to bump the dependency and backport the fix up to n-2 k/k version |
22-
| 5 | Embargoed vulnerability | No CVE ID is assigned so scanners do not detect it | Product Security Committee / Security Response Committee triages and follows existing process for embargoed CVEs |
16+
- The vulnerabilities are triaged in private, by members of
17+
18+
- Membership to this group is restricted due to the confidential nature of the
19+
responsibilities
20+
- Once a vulnerability is found through automation, the group members get
21+
notified via an email about it
22+
- One of the group members then triages this vulnerability and classifies it
23+
into one of the following categories:
24+
25+
|No. | Category | Definition | Resolution |
26+
|---|---|---|---|
27+
| 1 | False positive | k/k and vulnerable package is not impacted by this CVE | Open a Github issue and log the resolution |
28+
| 2 | True positive but no impact | Package version used in k/k is vulnerable, but k/k is not using the vulnerable code | Open a Github issue and a PR to bump the dependency to the version with a fix. This fix will go in subsequent release of k/k |
29+
| 3 | True positive with negligible impact | Package version used in k/k is vulnerable, but k/k is using the vulnerable code, but the vulnerability does not apply as per k/k threat model | Open a Github issue that describes why this will have negligible impact with relevant compensatory controls. Also, open a PR to bump the dependency to the version with a fix. This fix will go in subsequent release of k/k |
30+
| 4 | True positive with impact | Package version used in k/k is vulnerable, and k/k is using the vulnerable code | Open a Github issue, that assesses impact, modifies CVSS rating for k8s, if needed and suggest compensatory controls. Also, open a PR to bump the dependency and backport the fix up to n-2 k/k version |
31+
| 5 | Embargoed vulnerability | No CVE ID is assigned so scanners do not detect it | Product Security Committee / Security Response Committee triages and follows existing process for embargoed CVEs |
32+
33+
- Once the category is identified, the resolution is triggered manually by the
34+
member triaging the vulnerability.
2335

2436
## Examples
2537

sigs.yaml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2154,6 +2154,13 @@ sigs:
21542154
slack: sig-security-docs
21552155
owners:
21562156
- https://raw.githubusercontent.com/kubernetes/community/master/sig-security/sig-security-docs/OWNERS
2157+
- name: security-tooling
2158+
description: Development and Enhancements of Security Tooling
2159+
contact:
2160+
slack: sig-security-tooling
2161+
mailing_list: [email protected]
2162+
owners:
2163+
- https://raw.githubusercontent.com/kubernetes/community/master/sig-security/sig-security-tooling/OWNERS
21572164
- dir: sig-service-catalog
21582165
name: Service Catalog
21592166
mission_statement: >

0 commit comments

Comments
 (0)