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

lifecycle document draft #254

Closed
wants to merge 12 commits into from
Closed

lifecycle document draft #254

wants to merge 12 commits into from

Conversation

rficcaglia
Copy link
Contributor

still WIP but given recent CVEs I thought it important to keep momentum by PRing what I have so far. Definitely NOT complete. feedback welcome.

re: #152

@ultrasaurus
Copy link
Member

nit: governance/AssessmentLifecycle.png => please make filenames all lower case with dashes to separate words

as requested in PR comments
and missing header
@rficcaglia
Copy link
Contributor Author

@ultrasaurus done!

Copy link
Collaborator

@JustinCappos JustinCappos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm a bit confused about the CVE discussion here. Shouldn't all projects monitor CVEs that are in their codebase or libraries they use? Doesn't the impact of a CVE vary so widely it is hard to generalize if it is okay to ignore / defer them?

@ultrasaurus
Copy link
Member

I haven't had the chance to give this a thorough read, but think a document like this will be helpful. Some quick notes:

  • It would be helpful to situate this within the repo. Where would it be linked from?
  • Is the CVE review for the SIG or the project? The SIG doesn't have the bandwidth to commit to reviewing CVEs in a timely manner -- we're still trying to get these assessments to happen quickly!
  • the diagram really helps highlight the content! (side note: I wonder if we could use something like mermaid to have text representations of diagrams)
  • the idea of biennial assessments is new to me. I remember discussions about annual updates to the assessment and would like to try that (since I think annually, many projects will have few changes and I would like to see if that happens). In the text, it says "biennial or annual." While we're waiting on formal guidance from TOC, maybe diagram could use a different word like "Assessment Update"
  • pls review writing style guide -- we're trying to keep repo consistent (noticed long lines, headline caps)

Thank you!

@rficcaglia
Copy link
Contributor Author

rficcaglia commented Sep 17, 2019 via email

Copy link
Collaborator

@JustinCappos JustinCappos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the overall document, but I feel the focus on CVEs is a bit odd. Shouldn't projects be reviewing CVEs as they come out? Shouldn't we be responsive to issues that are critical quickly?

@rficcaglia
Copy link
Contributor Author

rficcaglia commented Nov 18, 2019

I like the overall document, but I feel the focus on CVEs is a bit odd.

I can remove the mention of CVEs - was merely a placeholder or shorthand for "some discrete event of varying level of importance"

Shouldn't projects be reviewing CVEs as they come out? Shouldn't we be responsive to issues that are critical quickly?

Yes, for CVEs they should. But does that mean they will? I guess in scope in my mind is a review of how good a job the project is in fact doing responding to CVEs and other events.

@lumjjb
Copy link
Contributor

lumjjb commented Jan 21, 2020

@rficcaglia Any continued work on this? Should i add the inactive tag for this in the meantime?

@rficcaglia
Copy link
Contributor Author

rficcaglia commented Jan 21, 2020 via email

@lumjjb
Copy link
Contributor

lumjjb commented Jan 21, 2020

I think having it in the doc will be good and we can set aside some time on one of the sig meeting agendas to have additional discussion than existing on the PR

@lumjjb lumjjb added the assessment-process proposed improvements to security assessment process label Jan 21, 2020
@MVrachev
Copy link
Contributor

MVrachev commented Feb 26, 2020

I agree with @rficcaglia that making assessments annually for every project is currently too big requirement for our group.
I liked the separation of the risk level for the projects and it makes sense to have projects which are reviewed more often than others.

How often we do periodic reviews will become a really important question if at one point the TOC decides that the security assessments are necessary part when applying for Incubation, Graduation, etc.

Another think we should keep in mind that it's possible for one project to be initially categorized as a Basic Risk Level and in future to become Medium or even High Risk level. This could happen depending on the new features, adoption and overall direction of the project.

I am wondering should we consider third-party audits in the scheduling of the security assessments?
Of course this depends a lot from the size and level of risk for the particular project but at least we should think about it.
For example if a Basic Risk level project is initially reviewed by us. Then, if year later they got a security review from third party security company, should we do an annual security assessment of the project right away?

@stale
Copy link

stale bot commented Apr 26, 2020

This issue has been automatically marked as inactive because it has not had recent activity.

@stale stale bot added the inactive No activity on issue/PR label Apr 26, 2020
@TheFoxAtWork
Copy link
Contributor

@rficcaglia @lumjjb whats the latest on this?

@stale stale bot removed the inactive No activity on issue/PR label Sep 3, 2020
@ultrasaurus
Copy link
Member

I was thinking an annual review would not be a full assessment (unless features that affect security have been changed significantly or added). I attempted to describe that here: https://github.com/cncf/sig-security/blob/master/assessments/intake-process.md#updates-and-renewal

@ultrasaurus
Copy link
Member

@MVrachev belatedly answering your question about third-party audits, see: https://github.com/cncf/sig-security/blob/master/assessments/intake-process.md#intake-priorities with regard to CNCF audits "For future audits, the security assessment will be a pre-condition to the audit."

I don't know if it is mentioned anywhere in the process, but I would certainly expect that if a project has funded their own third-party audit, that it would be referenced in their self-assessment

@lumjjb lumjjb requested a review from dshaw as a code owner September 3, 2020 19:11
Copy link
Contributor

@lumjjb lumjjb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it would be good to go through this and open it up for discussion on one of the weekly meetings. For this PR, I do think that the scope of this document should be limited to the ideology of assessment cycles, leaving out the instruction of assessment cycle decisions... And for those, it should be deferred to the intake process document as pointed out by @ultrasaurus

It can be a separate effort to create some definition of how levels are assessed, something which is more quantitative or if qualitative, a process to determine risk.. i.e. review by assessment team, approved by assessment facilitator / co-chairs.

* Knowledge Transfers (Assessor KT; project team KT; community KT)

# References

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what are the nature of the references to what is written, could there be some indicators/inline citations for the references?

* Review Scope
* Update Process
* Notifications (e.g. invalidating an assessment due to new attack type or critical supply chain vulns)
* Knowledge Transfers (Assessor KT; project team KT; community KT)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Specify (KT) as abbreviation before use


## Levels

In considering how frequently to reassess, 3 levels of risk should be defined:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion: In considering the frequency of reassessment

![Assessment Lifecycle](assessment-lifecycle.png "Assessment Lifecycle")

## Initial Assessment
All projects should go through the same initial assessment so we have a consistent baseline. If 3rd party code audits or pen tests or vulnerability scans have been performed previously, these should be used as inputs into a complete security assessment.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add link to assessment guide for initial assesment

It should be possible to refresh the assessment incrementally unless the underlying project design or architecture changes radically.
The scope of periodic updates should be limited in cases where there are low risk changes, or greatly expanded when security problems are identified by the community (e.g. a high impact CVE).

From the perspective of the (volunteer) assessment team, performing a complete reassessment would likely be onerous - especially with if there is a queue of new project assessments and limited assessor bandwidth.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Maybe more generically, from the perspective of SIG Security, since we have not officially defined an "assessment team"

@TheFoxAtWork
Copy link
Contributor

I'd like to bring this into a working meeting. I see two major things here and this has been a topic needing to be added to the roadmap (@pragashj and i briefly discussed this)

  • [Suggestion] Establish Criteria and Boundaries for Security Assessment #415 which from our discussion in the meeting this past Wednesday was that perhaps we need to rename what we are calling assessments to be more clear. I know there are lots of opinions on this, and related [Suggestion] Perform hands-on security testing during security assessments #394 brought this up as well. (IMHO we should call these 'Evaluations')
  • the renew on assessments/evals. We don't want these to get stale or stagnant. in the past we discussed encouraging projects to collect a listing of their security features which, if changed, effect it's ability to be secure (things like access control changes, methods, availability, integrity mechanism). it would allow teams to potentially add additional scrutiny on changes to those security features as well as give the SIG an actionable trigger to renew their previous evaluation.

@rficcaglia
Copy link
Contributor Author

rficcaglia commented Sep 4, 2020 via email

Copy link
Collaborator

@JustinCappos JustinCappos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like this overall. I do wonder if the design churn of a project should factor into this. Some projects change significantly year-over-year, while others are quite static...

@stale
Copy link

stale bot commented Nov 4, 2020

This issue has been automatically marked as inactive because it has not had recent activity.

@stale stale bot added the inactive No activity on issue/PR label Nov 4, 2020
@stale stale bot removed the inactive No activity on issue/PR label Jun 14, 2021
@TheFoxAtWork
Copy link
Contributor

Let's revitalize this. @rficcaglia would you add to an upcoming meeting? I'd like to close this out, it is our longest outstanding PR has is more important as more projects seek graduation

@sunstonesecure-robert
Copy link
Contributor

@JustinCappos what is the expectation at the TOC level? will there be resources made available and/or a community driven mandate to reassess every 1-2 years (as there is for example for Kubernetes)? will projects be required to do so regardless of resources?

I if there are a) resources to encourage volunteers and projects to participate and b) a TOC authorization/mandate so that volunteers don't feel like the "bad cops" and instead are perceived as helpful to the projects achieving the required steps for TOC, this will go better. Just my .02 BTC.

Also "resources" doesn't mean only 3rd party paid audits - could be training on review skills, funds for or comp'd certification exams, recognition in blogs or marketing, badges or personal recognition of participating volunteers and projects, recognition at conferences with presentation speaker slots, etc. can be very creative on the resourcing to align with participation incentives. doesn't just have to be piles of cash.

@JustinCappos
Copy link
Collaborator

@JustinCappos what is the expectation at the TOC level? will there be resources made available and/or a community driven mandate to reassess every 1-2 years (as there is for example for Kubernetes)? will projects be required to do so regardless of resources?

My sense is that @justincormack may be better positioned to respond to this.

Your second point is a good one though. Community buy-in is hard. We need to show value in proportion with the effort expended.

@stale
Copy link

stale bot commented Aug 14, 2021

This issue has been automatically marked as inactive because it has not had recent activity.

@stale stale bot added the inactive No activity on issue/PR label Aug 14, 2021
@anvega
Copy link
Contributor

anvega commented Jun 15, 2023

@rficcaglia I'm looking at this pr for the first time. It has been a while since it was filled. Is it still something you want to revisit or contribute?

@stale stale bot removed the inactive No activity on issue/PR label Jun 15, 2023
@rficcaglia
Copy link
Contributor Author

rficcaglia commented Jun 16, 2023 via email

@anvega
Copy link
Contributor

anvega commented Jun 17, 2023

I see what you mean regarding a regular cadence to ensure reports are current, although it could be clearer if you are referring to third-party audits like the one for Kubernetes versus assessments done by the TAG. For what it's worth, most projects that underwent security assessments had reviews between 2019 and 2021. Those projects have expanded in scope, deprecated and grown interfaces, and the repositories are now home to child sub-projects with separate code bases in some instances.

Since not all projects share the same release cadence, number of major releases, or dynamic nature, assessing the delta in changes may be worthwhile since the last assessment before starting a new one. In the case of projects like Kubernetes, the differential is more obvious than in others.

If the ideal outcome is for the CNCF to prioritize and budget for more frequent third-party audits, that's one conversation that can be had, which the foundation is receptive to, particularly regarding projects with a large end-user base; this is a recommendation that can be formulated but not much to do on our part other than presenting the case.

If the idea, on the other hand, is to reconvene the assessment teams from TAG-Security every so often, I think between the initiatives of security pals and lightweight threat models, we can create feedback loops to gauge for "risk level" since last fully assessed and have those discussions.

For now, can we move the security-assessment-lifecycle.md to a Google Doc for public comment from the rest of the community and make updates that capture the goal and reflect some of the other streams like the two mentioned we now have in place? We plan to discuss this during an upcoming call. It would be good to get feedback from the assessment facilitators and make it part of a workgroup with the aim of fluidity of reviews.

@stale
Copy link

stale bot commented Sep 17, 2023

This issue has been automatically marked as inactive because it has not had recent activity.

@stale stale bot added the inactive No activity on issue/PR label Sep 17, 2023
@anvega
Copy link
Contributor

anvega commented Oct 16, 2023

Thanks again for putting together the presentation. The feedback was incorporated both into the streamlined assessment process in place by Justin as well as the security pals program.

@anvega anvega closed this Oct 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
assessment-process proposed improvements to security assessment process inactive No activity on issue/PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants