Skip to content

Commit ed13865

Browse files
committed
added files to sig-security
Signed-off-by: Ayushman <[email protected]> Directories Renamed Signed-off-by: Ayushman <[email protected]>
1 parent 16f9ec4 commit ed13865

28 files changed

+2003
-0
lines changed

sig-security-docs/OWNERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# See the OWNERS docs at https://go.k8s.io/owners
2+
3+
reviewers:
4+
- savitharaghunathan
5+
approvers:
6+
- savitharaghunathan

sig-security-external-audit/OWNERS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
# See the OWNERS docs at https://go.k8s.io/owners
2+
3+
reviewers:
4+
- reylejano
5+
approvers:
6+
- reylejano

sig-security-external-audit/README.md

Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
# SIG Security External Audit Subproject
2+
3+
## Overview
4+
5+
The SIG Security External Audit subproject (subproject, henceforth) is responsible for coordinating regular,
6+
comprehensive, third-party security audits.
7+
The subproject publishes the deliverables of the audit after abiding to the
8+
[Security Release Process](https://github.com/kubernetes/committee-security-response/blob/main/security-release-process.md) and
9+
[embargo policy](https://github.com/kubernetes/committee-security-response/blob/main/private-distributors-list.md#embargo-policy).
10+
11+
- [Request for Proposal (RFP)](#rfp)
12+
- [Security Audit Scope](#security-audit-scope)
13+
- [Vendor and Community Questions](#vendor-and-community-questions)
14+
- [Review of Proposals](#review-of-proposals)
15+
- [Vendor Selection](#vendor-selection)
16+
- [Deliverables](#deliverables)
17+
18+
## RFP
19+
20+
The subproject produces a RFP for a third-party, comprehensive security audit. The subproject publishes the RFP in the
21+
`sig-security` folder in the `kubernetes/community` repository. The subproject defines the scope, schedule,
22+
methodology, selection criteria, and deliverables in the RFP.
23+
24+
Previous RFPs:
25+
- [2019](https://github.com/kubernetes/community/blob/master/sig-security/security-audit-2019/RFP.md)
26+
- [2021](https://github.com/kubernetes/community/blob/master/sig-security/security-audit-2021/RFP.md)
27+
28+
As efforts begin for the year's security audit, create a tracking issue for the security audit in
29+
`kubernetes/community` with the `/sig security` label.
30+
31+
### Security Audit Scope
32+
33+
The scope of an audit is the most recent release at commencement of audit of the core
34+
[Kubernetes project](https://github.com/kubernetes/kubernetes) and certain other code maintained by
35+
[Kubernetes SIGs](https://github.com/kubernetes-sigs/).
36+
37+
Core Kubernetes components remain as focus areas of regular audits. Additional focus areas are finalized by the
38+
subproject.
39+
40+
### Vendor and Community Questions
41+
42+
Potential vendors and the community can submit questions regarding the RFP through a Google form. The Google form is
43+
linked in the RFP.
44+
[Example from the 2021 audit](https://docs.google.com/forms/d/e/1FAIpQLScjApMDAJ5o5pIBFKpJ3mUhdY9w5s9VYd_TffcMSvYH_O7-og/viewform).
45+
46+
The subproject answers questions publicly on the RFP with pull requests to update the RFP.
47+
[Example from the 2021 audit](https://github.com/kubernetes/community/pull/5813).
48+
49+
The question period is typically open between the RFP's opening date and closing date.
50+
51+
## Review of Proposals
52+
53+
Proposals are reviewed by the subproject proposal reviewers after the RFP closing date. An understanding of security audits is required to be a proposal reviewer.
54+
55+
All proposal reviewers must agree to abide by the
56+
**[Security Release Process](https://github.com/kubernetes/committee-security-response/blob/main/security-release-process.md)**,
57+
**[embargo policy](https://github.com/kubernetes/committee-security-response/blob/main/private-distributors-list.md#embargo-policy)**,
58+
and have no [conflict of interest](#conflict-of-interest) the tracking issue.
59+
This is done by placing a comment on the issue associated with the security audit.
60+
e.g. `I agree to abide by the guidelines set forth in the Security Release Process, specifically the embargo on CVE
61+
communications and have no conflict of interest`
62+
63+
Proposal reviewers are members of a private Google group and private Slack channel to exchange sensitive, confidential information and to share artifacts.
64+
65+
### Conflict of Interest
66+
67+
There is a possibility of a conflict of interest between a proposal reviewer and a vendor. Proposal reviewers should not have a conflict of interest. Examples of conflict of interest:
68+
- Proposal reviewer is employed by a vendor who submitted a proposal
69+
- Proposal reviewer has financial interest directly tied to the audit
70+
71+
Should a conflict arise during the proposal review, reviewers should notify the subproject owner and SIG Security chairs when they become aware of the conflict.
72+
73+
> The _Conflict of Interest_ section is inspired by the
74+
[CNCF Security TAG security reviewer process](https://github.com/cncf/tag-security/blob/main/assessments/guide/security-reviewer.md#conflict-of-interest).
75+
76+
## Vendor Selection
77+
78+
On the vendor selection date, the subproject will publish a the selected vendor in the 'sig-security' folder in the `kubernetes/community` repository.
79+
[Example from the 2019 audit](https://github.com/kubernetes/community/blob/master/sig-security/security-audit-2019/RFP_Decision.md).
80+
81+
## Deliverables
82+
83+
The deliverables of the audit are defined in the RFP e.g. findings report, threat model, white paper, audited reference architecture spec (with yaml manifests) and published in the 'sig-security' folder in the `kubernetes/community` repository.
84+
[Example from the 2019 audit](https://github.com/kubernetes/community/tree/master/sig-security/security-audit-2019/findings).
85+
86+
**All information gathered and deliverables created as a part of the audit must not be shared outside the vendor or the subproject without the explicit consent of the subproject and SIG Security chairs.**
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
Past external security audits have not been comprehensive of the entire Kubernetes project.
2+
This roadmap lists previously audited focus areas and focus areas requested to be included in future audits.
3+
The Kubernetes community is invited to create issues and PRs to request additional components to be audited.
4+
5+
6+
| **Kubernetes Focus Area** | **Audit Year**| **Links** |
7+
|---------------------------|---------------|-----------|
8+
| Networking | 2019 | |
9+
| Cryptography | 2019 | |
10+
| Authentication & Authorization (including Role Based Access Controls) | 2019 | |
11+
| Secrets Management | 2019 | |
12+
| Multi-tenancy isolation: Specifically soft (non-hostile co-tenants) | 2019 | |
13+
| kube-apiserver | 2021 | |
14+
| kube-scheduler | 2021 | |
15+
| etcd (in the context of Kubernetes use of etcd) | 2021 | |
16+
| kube-controller-manager | 2021 | |
17+
| cloud-controller-manager | 2021 | |
18+
| kubelet | 2021 | https://github.com/kubernetes/kubelet https://github.com/kubernetes/kubernetes/tree/master/staging/src/k8s.io/kubelet |
19+
| kube-proxy | 2021 | https://github.com/kubernetes/kubernetes/tree/master/staging/src/k8s.io/kube-proxy https://github.com/kubernetes/kube-proxy |
20+
| secrets-store-csi-driver | 2021 | https://github.com/kubernetes-sigs/secrets-store-csi-driver |
21+
| cluster API | TBD | https://github.com/kubernetes-sigs/cluster-api |
22+
| kubectl | TBD | https://github.com/kubernetes/kubectl |
23+
| kubeadm | TBD | https://github.com/kubernetes/kubeadm |
24+
| metrics server | TBD | https://github.com/kubernetes-sigs/metrics-server
25+
| nginx-ingress (in the context of a Kubernetes ingress controller) | TBD | https://github.com/kubernetes/ingress-nginx
26+
| kube-state-metrics | TBD | https://github.com/kubernetes/kube-state-metrics
27+
| node feature discovery | TBD | https://github.com/kubernetes-sigs/node-feature-discovery
28+
| hierarchial namespace | TBD | https://github.com/kubernetes-sigs/multi-tenancy/tree/master/incubator/hnc
29+
| pod security policy replacement | TBD | https://github.com/kubernetes/enhancements/tree/master/keps/sig-auth/2579-psp-replacement
30+
| CoreDNS (in the context of Kubernetes use of CoreDNS) | TBD | Concept: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/ Reference: https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/ |
31+
| cluster autoscaler | TBD | https://github.com/kubernetes/autoscaler/tree/master/cluster-autoscaler |
32+
| kube rbac proxy | TBD | https://github.com/brancz/kube-rbac-proxy |
33+
| kms plugins | TBD | https://kubernetes.io/docs/tasks/administer-cluster/kms-provider/#implementing-a-kms-plugin |
34+
| cni plugins | TBD | https://github.com/containernetworking/cni |
35+
| csi plugins | TBD | https://github.com/kubernetes-csi |
36+
| aggregator layer | TBD | https://github.com/kubernetes/kube-aggregator |

0 commit comments

Comments
 (0)