Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document a security issue reporting, response, and distribution process #14

Open
6 tasks
micahhausler opened this issue Jun 22, 2021 · 1 comment
Open
6 tasks
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/documentation Categorizes issue or PR as related to documentation. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete.

Comments

@micahhausler
Copy link
Contributor

micahhausler commented Jun 22, 2021

Is your feature request related to a problem? Please describe.

This came up in the community call today so I'm filing an issue for public tracking.

Tinkerbell does not have a documented security issue reporting or response procedure, and this would be beneficial to developers, distributors, and users alike.

@markyjackson-taulia also brought up the security review required for CNCF, and that has some interaction here

Relates to tinkerbell/tink#373

Describe the solution you'd like

Kubernetes has a more developed process for handling security issues including a response team, a bug bounty program, and a distributor list. Other CNCF projects such as CoreDNS have adopted the parts of the Kubernetes process that worked best for them, and I think Tinkerbell could do something similar.

I don't want to be prescriptive and impose too much process, but here are a few things I think could help

  • Document a method for reporting confirmed or suspected security issues in Tink and projects in the tinkerbell GitHub organization. This can likely be a private Google group or private CNCF group mailing list with core maintainers of the project. Given the likely low volume of reports, this will probably be sufficient for a long time.
  • Add notices to the GitHub issue templates and READMEs for all projects referencing how to safely and privately report security issues
  • Define a release process for addressing issues.
  • Define a way to identify code owners for each project who can assist in developing a fix to a confirmed issue. Kubernetes uses a SECURITY_CONTACTS file in the root of each repository to help the PSC identify owners for a fix. Reusing the root OWNERS file may be sufficient.
  • Define a process for requesting CVE IDs for issues. Kubernetes is now a CVE Numbering Authority (CNA) because we have enough valid reports that it made sense. It may make sense to partner with the Kubernetes PSC for assigning CVE IDs for confirmed issues when you do have one given your low volume. You would handle the issue and disclosure yourself, but maybe just request a CVE ID from the Kubernetes PSC. I'd recommend just requesting CVD IDs from Mitre until we need a block
  • Allow distributors of a project to identify themselves as having an interest in advanced embargoed notice of a high or critical security issue and fix. Kubernetes has a documented process for this, and CoreDNS has a similar model

These do not all need to happen at the same time, but they roughly do need to occur in sequence. For example, adding notices to READMEs and issue templates depends on a reporting process, but coming up with a CVE ID process doesn't have to block getting a distributor list going.

/kind feature
/kind documentation

cc @markyjackson-taulia

@tstromberg tstromberg added kind/documentation Categorizes issue or PR as related to documentation. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete. labels Aug 27, 2021
@tstromberg
Copy link

Thank you for bringing this up. Is anyone up for helping us with this?

@tstromberg tstromberg added the help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. label Aug 27, 2021
@displague displague transferred this issue from tinkerbell/tink Apr 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Denotes an issue that needs help from a contributor. Must meet "help wanted" guidelines. kind/documentation Categorizes issue or PR as related to documentation. priority/important-longterm Important over the long term, but may not be staffed and/or may need multiple releases to complete.
Projects
None yet
Development

No branches or pull requests

2 participants