Anyone is welcome to join our open discussions related to the group's mission and charter.
Our objective is to provide open source developers with best practices recommendations, and with an easy way to learn and apply them.
Unlike other existing best practices list, we want it to be widely distributed to open source developers and community-sourced. And we want these practices to stick, thanks to an effective learning platform.
Our vision is to make it easy for developers to adopt these best practices, thanks to:
- Identifying good practices, requirements, and tools that help open source developers create and maintain more secure software
- Helping maintainers Learn to write secure software
- Provide tools to help developers Adopt these good practices into their daily work
The Developer Best Practices group wants to help identify and curate an accessible inventory of best practices
- Prioritized according to ROI for open source developers
- Categorized per technology, language, framework
- Community-curated
Help build a community
- Program to attract open source contributors and incentivize them to use and contribute to the inventory
Supply a Learning platform -Any free course can be integrated into the platform
- The learner can follow a track, track their progress and get badges
- A suite of exercises are available for each best practice of the inventory
Our work is organized into several discrete-yet-related projects that help us achieve our goals:
-
Concise guides for (1) developing software and (2) evaluating OSS (sandbox)
-
Common Requirement Enumeration (CRE) Project - (incubating) https://www.opencre.org/
- Purpose - (Identify) Identify similar requirements in different specifications
-
Secure Software Development Fundamentals (edX course) - https://openssf.org/training/courses/ and https://github.com/ossf/secure-sw-dev-fundamentals
- Purpose - (Learn) Teach software developers fundamentals of developing secure software
-
SKF - Security Knowledge Framework - https://www.securityknowledgeframework.org/
- Purpose - (Identify/Adopt/Learn) Learn to integrate security by design in your web application
-
OpenSSF Best Practices Badge (formerly CII Best Practices badge) - https://bestpractices.coreinfrastructure.org/ and https://github.com/coreinfrastructure/best-practices-badge
- Purpose - (Identify/Adopt) Identifies FLOSS best practices & implements a badging system for those practices,
-
Scorecards Project - https://github.com/ossf/scorecard
- Purpose - (Adopt) Automate analysis and trust decisions on the security posture of open source projects.
-
Great MFA Distribution Project - (incubating) https://github.com/ossf/great-mfa-project
- Distribute MFA tokens to OSS developers and best practices on how to easily use them
-
Recommended compiler option flags for C/C++ programs (incubating)
- Recommended compiler option flags for C/C++ programs, especially warning and hardening flags, for developers & distributions
-
Interactive artwork - (incubating) https://github.com/blabla1337/wg-best-practices-os-developers/tree/main/infinity2
- Place where we want to guide developers in what stage they can use what type of tooling or approach. We have tons of great tools and materials but hard to find for devs, using this page and interactive loop we want to guide them to find the right stuff.
-
Existing Guidelines for Developing and Distributing Secure Software GitHub Repo
- Purpose - (Identify) - Highlight documentation and training materials that educate OSS developers on good secure coding practices
-
Package Manager Best Practices - (incubating) - https://github.com/ossf/package-manager-best-practices
- Purpose - (Identify/Learn) Collect and document security best practices for projects using various package managers.
-
npm Best Practices Guide - This document aims to be a one-time stop explaining the security supply-chain best practices when using npm's package manager.
- Purpose - (Identify/Learn) Collect and document security best practices for projects npm.
-
Education SIG - (incubating) - https://github.com/ossf/education/
- Purpose - (Learn) To provide industry standard secure software development training materials that will educate learners of all levels and backgrounds on how to create, compose, deploy, and maintain software securely using best practices in cyber and application security.
We welcome contributions, suggestions and updates to our projects. To contribute please fill in an issue or create a pull request.
There are many great projects both within and outside the Foundation that compliment and intersect our work here. Some other great projects/resources to explore:
- SLSA Supply-chain Levels for Software Artifacts - https://github.com/slsa-framework/slsa
- Purpose - A security framework from source to service, giving anyone working with software a common language for increasing levels of software security and supply chain integrity
Anyone is welcome to join our open discussions related to the group's mission and charter.
- 2023 Meeting Notes
- 2022 Meeting Minutes
- Historic Group Notes 1
- Historic Notes 2021
- Recent WG report to the TAC on activities and project statuses
- Discussions
- Official communications occur on the Best Practices mailing list
- Manage your subscriptions to Open SSF mailing lists
- Join the conversation on Slack
- Any topics related to helping developers more easily make more secure software or consumers to better understand the security qualities of the software they wish to ingest
- Issues can be reviewed and filed here
Every 2 weeks, Tuesday 10am EST. The meeting invite is available on the public OSSF calendar
The CHARTER.md outlines the scope and governance of our group activities.
- Lead - Christopher "CRob" Robinson
- Co-Lead - Xavier René-Corail
- Christopher "CRob" Robinson, Intel
- Xavier René-Corail, GitHub
- David A Wheeler, LF/OSSF
- Dave Russo, Red Hat
- Glenn ten Cate, OWASP/SKF
- Marta Rybczynska, Syslinbit
- VM Brasseur, WiPro
- Eric Tice, WiPro
- Judy Kelly, Red Hat
- Arnaud J Le Hor, IBMs
- Matt Rutkowski, IBM
- Jeff Borek, IBM
- Randall T. Vasquez, Gentoo/Homebrew
- Avishay Balter, Microsoft
- Yotam Perkal,Rezilion
- Georg Kunz,Ericsson
- Christine Abernathy, F5
- Daniel Applequist, Synk
- Laurent Simon, Google/Scorecard
- Azeem Shaikh, Google/Scorecard
- Spyros Gasteratos, OWASP/CRE
- Harimohan Rajamohanan, Wipro
- Aeva Black, Microsoft
- Patricia Tarro, Dell
- Sami Guirguis, TELUS
- Jeff Mendoza, Google
- Jonathan Leitschuh, Dan Kaminsky Fellowship @ Human Security
- Jory Burson, Linux Foundation
- Ixchel Ruiz, jfrog
- Kara Olive, Google
- Riccardo ten Cate, SKF
Linux Foundation meetings involve participation by industry competitors, and it is the intention of the Linux Foundation to conduct all of its activities in accordance with applicable antitrust and competition laws. It is therefore extremely important that attendees adhere to meeting agendas, and be aware of, and not participate in, any activities that are prohibited under applicable US state, federal or foreign antitrust and competition laws.
Examples of types of actions that are prohibited at Linux Foundation meetings and in connection with Linux Foundation activities are described in the Linux Foundation Antitrust Policy available at http://www.linuxfoundation.org/antitrust-policy. If you have questions about these matters, please contact your company counsel, or if you are a member of the Linux Foundation, feel free to contact Andrew Updegrove of the firm of Gesmer Updegrove LLP, which provides legal counsel to the Linux Foundation.