SlideShare a Scribd company logo
All You Need To Know about Secure Coding with
Open Source Software
Javier Perez - javierperez.mozello.com
Open Source Software is Mainstream
● Latest Innovations are all Open Source
AI, Machine Learning, Deep Learning, Blockchain, Virtual Assistance,…
● Millions of Open Source Libraries, all programming languages
2
Augmented Reality Virtual RealityAutonomous Cars
What is Open Source Software?
● Source code is publicly available
● Open to collaboration
● Source code available with a license that permits users to freely
run, study, modify and redistribute
OSS
Explosive Grow of Open Source
50M+
Developers Worldwide
2.9M+
* Organizations
100M+
* Repositories
* Source: State of the Octoverse, GitHub, November 2019
44M+
* Repositories Created in
2019
1.3M+
* First Time Contributors in
2019
App Development in Open Source
1.2M +
NPM Modules with 859 new/day
337K +
Maven Central Modules with 144 new/day
265K +
Packagist Modules with 112 new/day
210K +
PyPI Modules with 117 new/day
202K +
NuGet Modules with 153 new/day
159K +
RubyGems Modules with 18 new/day
* Source: Modulecounts as of May 5, 2020
What’s in Open Source Software?
1. Open Source License
2. README
3. Contribution Guidelines
4. Code of Conduct
Roles in Open Source Software
● Maintainer
○ ”Owner” and Administrator, publish code, website, social
media.
● Committer
○ Becoming a Committer in projects like Cordova, Node.js, Linux,
and others is a highly regarded and respected role.
● Contributor
○ Opportunity to learn, join a community and meet people.
Open Source Software Contributions
● Contribute Upstream
● Company Sponsored or Individually
○ Enhancements, Bug Fixes and
Vulnerability Fixes
● Modified code not contributed back
becomes close code
Top Open Source
Projects 2019
Number of
Contributors
Visual Studio Code 19.1K
Azure Docs 14K
Flutter 13K
First Contributions 11.6K
TensorFlow 9.9K
React Native 9.1K
Kubernetes 6.9K
DefinitelyTyped 6.9K
Ansible 6.8K
Home-Assistant 6.3K
* Source: State of the Octoverse, GitHub, November 2019
Open Source Libraries and Dependencies
● Popular Open Source Libraries have many
contributors and they are dependencies for
millions of repositories
● Depending on the Programming Language
Open Source Libraries can have from a few to
1000’s of dependencies
● There are Direct Dependencies and Transitive
Dependencies
Security in Open Source Software
Vulnerability
Vulnerability
Discovered
Vulnerabilities in Open Source Libraries
● Security is about identify Vulnerabilities
● Vulnerable Method in the Library
● Common Vulnerability and Exposures (CVE)
● Common Vulnerability Score System (CVSS)
● Vulnerabilities outside CVE and NVD
Let’s Review a Popular OSS: Angular.JS
● JavaScript Framework that lets you write client-side web applications
and use HTML.
● Over 1,500 direct contributors, 8,971 Commits
Other Popular Projects: Tensorflow
● Newer but with more participation
Other Popular Projects: Kubernetes
Back to Angular.JS: Contributions
● Contributors with hundreds of commits
● Top Committers added 1,438 and 842 commits
Angular.JS: Versions and Vulnerabilities
● 140 versions since Mar 2012
● 22 Vulnerabilities, 139 Versions Affected by Vulnerabilities
● Only one “safe version” the latest 1.7.9
● 6 Critical/High Risk Vulnerabilities
Angular.JS: Versions and Vulnerabilities
● High-Risk Vulnerabilities with Versions affected
Open Source Software Security
● Does you company has this many Developers?
○ ”Given enough eyeballs, all bugs are shallow” - Linus’
Law - Linus Torvalds
● Large Open Source Projects don’t have a Single
Unified Architecture
○ Top developers are contributors
○ It is not the developer’s fault
● Visibility to more Security Champions
● Same security practices used on close software,
i.e. the top 10 OWASP Proactive Controls
Not a Single Unified Architecture
Increased Risk with Reuse of Libraries
Apache Commons IO Library:
Used by:
18,595
artifacts
Apache
Commons
Lang
16,281
ScalaTest
12,779
Spring
Web
5,475
Apache
Log4j Fastjson
Snake
YAML
Hadoop
Common
Zoo
Keeper
Selenium
Java
* Source: MavenRepository.com
More on Open Source Security
● New vulnerabilities are constantly being discovered in
Open Source code
● Most vulnerabilities are unintentional
● Much smaller risk of malicious code being injected
● The smart way to make them public is when you have a fix
(public disclosure)
● More than 98% of public vulnerabilities have a fix
● But you have to keep up with the latest fixes
The Real Risk: Not Lack of Fix, Lack of Speed
● Once a vulnerability is disclosed, exploiting it becomes far easier.
The attacker has the full detail of the vulnerability and how it can be
invoked
● Most attacks exploit known vulnerabilities that have never been
patched despite patches being available
● Symantec predicts that "Through 2020, 99% of vulnerabilities
exploited will continue to be ones known by security and IT
professionals for at least one year"
Salt Framework Vulnerabilities Example
● Open Source Framework used to monitor and update the state of servers
● IBM Cloud, LinkedIn, and eBay, use Salt to configure servers, relay messages
from the "master server" and issue commands to a specific time schedule.
● Two high severity vulnerabilities
○ CVE-2020-11651 (an authentication bypass)
○ CVE-2020-11652 (a directory traversal)
○ When combined, could allow attackers to bypass login procedures and run code on
Salt master servers left exposed on the internet
● Disclosed publicly on April 30 by researchers at F-Secure Labs and SaltStack
had released updated versions that fixed it the previous day.
● Exploits at: LineageOS, Ghost blog platform, Xen Orchestra and most likely
more
Manage your Open Source Usage: SCA
● Visibility of all your Open Source usage
● Visibility of license and vulnerability risk based on policies.
● Vulnerabilities prioritization will reduce significant risk.
● Make SCA scans part of SDLC, and part of CI/CD
● SCA provides insight into remediation and act to prevent security
breaches
● Do not scan once, new vulnerabilities are introduced all the time
Apply What You Have Learned Today
● Keep promoting Open Source, keep promoting innovation in your
organization
● Keep and active inventory of the open source you use
● Detect vulnerabilities from NVD and other sources
● Prioritize fixes: Update vulnerable libraries
● SCA Scan Automation: DevSecOps
THANK YOU!
Javier Perez - javierperez.mozello.com

More Related Content

What's hot (20)

PDF
UNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware
Sajjad "JJ" Arshad
 
PPTX
Secure application deployment in Apache CloudStack
Tim Mackey
 
PDF
OWASP Workshop: Docker Image Security Best Practices by Liran Tal - January 2020
Liran Tal
 
PPTX
DevSecCon Tel Aviv 2018 - Integrated Security Testing by Morgan Roman
DevSecCon
 
PPTX
Security in the Age of Open Source
Black Duck by Synopsys
 
PDF
BASIC OVERVIEW OF KALI LINUX
Deborah Akuoko
 
PDF
Stranger Danger - Finding vulnerabilities before they find you - Liran Tal 2021
Liran Tal
 
PDF
Building a DevSecOps Pipeline Around Your Spring Boot Application
VMware Tanzu
 
PDF
The Future of Security and Productivity in Our Newly Remote World
DevOps.com
 
PDF
DevSecOps: What Why and How : Blackhat 2019
NotSoSecure Global Services
 
PPTX
Continuous security: Bringing agility to the secure development lifecycle
Rogue Wave Software
 
PDF
[OWASP Poland Day] A study of Electron security
OWASP
 
PDF
Node.js Security Done Right - Tips and Tricks They Won't Teach You In School
Liran Tal
 
PDF
Serverless Security: What's Left To Protect
Guy Podjarny
 
PDF
The Log4Shell Vulnerability – explained: how to stay secure
Kaspersky
 
PPTX
360° Kubernetes Security: From Source Code to K8s Configuration Security
DevOps.com
 
PPTX
Secure application deployment in the age of continuous delivery
Tim Mackey
 
PPTX
September 13, 2016: Security in the Age of Open Source:
Black Duck by Synopsys
 
PDF
Open Source Software - Please Drink Responsibly
Daniel Sauble
 
PPTX
Linux server penetration testing project
Emad Soltani
 
UNVEIL: A Large-Scale, Automated Approach to Detecting Ransomware
Sajjad "JJ" Arshad
 
Secure application deployment in Apache CloudStack
Tim Mackey
 
OWASP Workshop: Docker Image Security Best Practices by Liran Tal - January 2020
Liran Tal
 
DevSecCon Tel Aviv 2018 - Integrated Security Testing by Morgan Roman
DevSecCon
 
Security in the Age of Open Source
Black Duck by Synopsys
 
BASIC OVERVIEW OF KALI LINUX
Deborah Akuoko
 
Stranger Danger - Finding vulnerabilities before they find you - Liran Tal 2021
Liran Tal
 
Building a DevSecOps Pipeline Around Your Spring Boot Application
VMware Tanzu
 
The Future of Security and Productivity in Our Newly Remote World
DevOps.com
 
DevSecOps: What Why and How : Blackhat 2019
NotSoSecure Global Services
 
Continuous security: Bringing agility to the secure development lifecycle
Rogue Wave Software
 
[OWASP Poland Day] A study of Electron security
OWASP
 
Node.js Security Done Right - Tips and Tricks They Won't Teach You In School
Liran Tal
 
Serverless Security: What's Left To Protect
Guy Podjarny
 
The Log4Shell Vulnerability – explained: how to stay secure
Kaspersky
 
360° Kubernetes Security: From Source Code to K8s Configuration Security
DevOps.com
 
Secure application deployment in the age of continuous delivery
Tim Mackey
 
September 13, 2016: Security in the Age of Open Source:
Black Duck by Synopsys
 
Open Source Software - Please Drink Responsibly
Daniel Sauble
 
Linux server penetration testing project
Emad Soltani
 

Similar to All You need to Know about Secure Coding with Open Source Software (20)

PDF
Q1 2016 Open Source Security Report: Glibc and Beyond
Black Duck by Synopsys
 
PDF
Drupal Dev Days Vienna 2023 - What is the secure software supply chain and th...
sparkfabrik
 
PPTX
Contemporary software TRENDS SOFTWARE TRENDS
melissaguillermo
 
PPTX
Open Source, Sourceforge Projects, & Apache Foundation
Mohammad Kotb
 
PPTX
Intro to open source - 101 presentation
Javier Perez
 
PPT
Open source technology
aparnaz1
 
PPTX
Open Source, Sourceforge Projects, & Apache Foundation
Mohammad Kotb
 
PPTX
Open source media
Emmanuel Lobijo
 
PDF
DockerCon SF 2015: Keynote Day 1
Docker, Inc.
 
PPT
Open Source Technology
priyadharshini murugan
 
PPTX
Securing Container Deployments from Build to Ship to Run - August 2017 - Ranc...
Shannon Williams
 
PPT
Asf icfoss-mentoring
Luciano Resende
 
PPTX
DockerDay2015: Keynote
Docker-Hanoi
 
PDF
Securing Open Source Code in Enterprise
Asankhaya Sharma
 
PPTX
Open source
Nidhi Sharma
 
PDF
The adoption of FOSS workfows in commercial software development: the case of...
dmgerman
 
PDF
The Role of Open-Source Software in Modern Development
AtliQ Technologies
 
PDF
Donu’t Let Vulnerabilities Create a Hole in Your Organization
DevOps.com
 
PDF
Open Source Licenses
Ortus Solutions, Corp
 
PDF
Best practices for using open source software in the enterprise
Marcel de Vries
 
Q1 2016 Open Source Security Report: Glibc and Beyond
Black Duck by Synopsys
 
Drupal Dev Days Vienna 2023 - What is the secure software supply chain and th...
sparkfabrik
 
Contemporary software TRENDS SOFTWARE TRENDS
melissaguillermo
 
Open Source, Sourceforge Projects, & Apache Foundation
Mohammad Kotb
 
Intro to open source - 101 presentation
Javier Perez
 
Open source technology
aparnaz1
 
Open Source, Sourceforge Projects, & Apache Foundation
Mohammad Kotb
 
Open source media
Emmanuel Lobijo
 
DockerCon SF 2015: Keynote Day 1
Docker, Inc.
 
Open Source Technology
priyadharshini murugan
 
Securing Container Deployments from Build to Ship to Run - August 2017 - Ranc...
Shannon Williams
 
Asf icfoss-mentoring
Luciano Resende
 
DockerDay2015: Keynote
Docker-Hanoi
 
Securing Open Source Code in Enterprise
Asankhaya Sharma
 
Open source
Nidhi Sharma
 
The adoption of FOSS workfows in commercial software development: the case of...
dmgerman
 
The Role of Open-Source Software in Modern Development
AtliQ Technologies
 
Donu’t Let Vulnerabilities Create a Hole in Your Organization
DevOps.com
 
Open Source Licenses
Ortus Solutions, Corp
 
Best practices for using open source software in the enterprise
Marcel de Vries
 
Ad

More from Javier Perez (6)

PDF
Open Source Security and ChatGPT-Published.pdf
Javier Perez
 
PDF
All Things Open 2022 - State of OSS Security & Support
Javier Perez
 
PDF
Open Source North - State of OSS in Organizations
Javier Perez
 
PPTX
Open source and AI keynote
Javier Perez
 
PPTX
SacHacks Keynote Open Source Software and IBM Z
Javier Perez
 
PPTX
Guide to open source
Javier Perez
 
Open Source Security and ChatGPT-Published.pdf
Javier Perez
 
All Things Open 2022 - State of OSS Security & Support
Javier Perez
 
Open Source North - State of OSS in Organizations
Javier Perez
 
Open source and AI keynote
Javier Perez
 
SacHacks Keynote Open Source Software and IBM Z
Javier Perez
 
Guide to open source
Javier Perez
 
Ad

Recently uploaded (20)

PPTX
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PDF
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
PPTX
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
PDF
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
PPTX
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
PPTX
AEM User Group: India Chapter Kickoff Meeting
jennaf3
 
PPTX
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pptx
Varsha Nayak
 
PPTX
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
PDF
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
PDF
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
PPTX
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
PDF
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
PDF
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
PDF
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
PPTX
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
PPTX
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
PPTX
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
PPTX
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
PPTX
Tally software_Introduction_Presentation
AditiBansal54083
 
PDF
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 
Change Common Properties in IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Automate Cybersecurity Tasks with Python
VICTOR MAESTRE RAMIREZ
 
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
Shane Coughlan
 
Wondershare PDFelement Pro Crack for MacOS New Version Latest 2025
bashirkhan333g
 
Agentic Automation Journey Series Day 2 – Prompt Engineering for UiPath Agents
klpathrudu
 
AEM User Group: India Chapter Kickoff Meeting
jennaf3
 
Why Businesses Are Switching to Open Source Alternatives to Crystal Reports.pptx
Varsha Nayak
 
OpenChain @ OSS NA - In From the Cold: Open Source as Part of Mainstream Soft...
Shane Coughlan
 
SAP Firmaya İade ABAB Kodları - ABAB ile yazılmıl hazır kod örneği
Salih Küçük
 
Top Agile Project Management Tools for Teams in 2025
Orangescrum
 
Milwaukee Marketo User Group - Summer Road Trip: Mapping and Personalizing Yo...
bbedford2
 
MiniTool Partition Wizard Free Crack + Full Free Download 2025
bashirkhan333g
 
Download Canva Pro 2025 PC Crack Full Latest Version
bashirkhan333g
 
4K Video Downloader Plus Pro Crack for MacOS New Download 2025
bashirkhan333g
 
Agentic Automation Journey Session 1/5: Context Grounding and Autopilot for E...
klpathrudu
 
Homogeneity of Variance Test Options IBM SPSS Statistics Version 31.pptx
Version 1 Analytics
 
Home Care Tools: Benefits, features and more
Third Rock Techkno
 
Foundations of Marketo Engage - Powering Campaigns with Marketo Personalization
bbedford2
 
Tally software_Introduction_Presentation
AditiBansal54083
 
[Solution] Why Choose the VeryPDF DRM Protector Custom-Built Solution for You...
Lingwen1998
 

All You need to Know about Secure Coding with Open Source Software

  • 1. All You Need To Know about Secure Coding with Open Source Software Javier Perez - javierperez.mozello.com
  • 2. Open Source Software is Mainstream ● Latest Innovations are all Open Source AI, Machine Learning, Deep Learning, Blockchain, Virtual Assistance,… ● Millions of Open Source Libraries, all programming languages 2 Augmented Reality Virtual RealityAutonomous Cars
  • 3. What is Open Source Software? ● Source code is publicly available ● Open to collaboration ● Source code available with a license that permits users to freely run, study, modify and redistribute OSS
  • 4. Explosive Grow of Open Source 50M+ Developers Worldwide 2.9M+ * Organizations 100M+ * Repositories * Source: State of the Octoverse, GitHub, November 2019 44M+ * Repositories Created in 2019 1.3M+ * First Time Contributors in 2019
  • 5. App Development in Open Source 1.2M + NPM Modules with 859 new/day 337K + Maven Central Modules with 144 new/day 265K + Packagist Modules with 112 new/day 210K + PyPI Modules with 117 new/day 202K + NuGet Modules with 153 new/day 159K + RubyGems Modules with 18 new/day * Source: Modulecounts as of May 5, 2020
  • 6. What’s in Open Source Software? 1. Open Source License 2. README 3. Contribution Guidelines 4. Code of Conduct
  • 7. Roles in Open Source Software ● Maintainer ○ ”Owner” and Administrator, publish code, website, social media. ● Committer ○ Becoming a Committer in projects like Cordova, Node.js, Linux, and others is a highly regarded and respected role. ● Contributor ○ Opportunity to learn, join a community and meet people.
  • 8. Open Source Software Contributions ● Contribute Upstream ● Company Sponsored or Individually ○ Enhancements, Bug Fixes and Vulnerability Fixes ● Modified code not contributed back becomes close code Top Open Source Projects 2019 Number of Contributors Visual Studio Code 19.1K Azure Docs 14K Flutter 13K First Contributions 11.6K TensorFlow 9.9K React Native 9.1K Kubernetes 6.9K DefinitelyTyped 6.9K Ansible 6.8K Home-Assistant 6.3K * Source: State of the Octoverse, GitHub, November 2019
  • 9. Open Source Libraries and Dependencies ● Popular Open Source Libraries have many contributors and they are dependencies for millions of repositories ● Depending on the Programming Language Open Source Libraries can have from a few to 1000’s of dependencies ● There are Direct Dependencies and Transitive Dependencies
  • 10. Security in Open Source Software
  • 11. Vulnerability Vulnerability Discovered Vulnerabilities in Open Source Libraries ● Security is about identify Vulnerabilities ● Vulnerable Method in the Library ● Common Vulnerability and Exposures (CVE) ● Common Vulnerability Score System (CVSS) ● Vulnerabilities outside CVE and NVD
  • 12. Let’s Review a Popular OSS: Angular.JS ● JavaScript Framework that lets you write client-side web applications and use HTML. ● Over 1,500 direct contributors, 8,971 Commits
  • 13. Other Popular Projects: Tensorflow ● Newer but with more participation
  • 15. Back to Angular.JS: Contributions ● Contributors with hundreds of commits ● Top Committers added 1,438 and 842 commits
  • 16. Angular.JS: Versions and Vulnerabilities ● 140 versions since Mar 2012 ● 22 Vulnerabilities, 139 Versions Affected by Vulnerabilities ● Only one “safe version” the latest 1.7.9 ● 6 Critical/High Risk Vulnerabilities
  • 17. Angular.JS: Versions and Vulnerabilities ● High-Risk Vulnerabilities with Versions affected
  • 18. Open Source Software Security ● Does you company has this many Developers? ○ ”Given enough eyeballs, all bugs are shallow” - Linus’ Law - Linus Torvalds ● Large Open Source Projects don’t have a Single Unified Architecture ○ Top developers are contributors ○ It is not the developer’s fault ● Visibility to more Security Champions ● Same security practices used on close software, i.e. the top 10 OWASP Proactive Controls
  • 19. Not a Single Unified Architecture
  • 20. Increased Risk with Reuse of Libraries Apache Commons IO Library: Used by: 18,595 artifacts Apache Commons Lang 16,281 ScalaTest 12,779 Spring Web 5,475 Apache Log4j Fastjson Snake YAML Hadoop Common Zoo Keeper Selenium Java * Source: MavenRepository.com
  • 21. More on Open Source Security ● New vulnerabilities are constantly being discovered in Open Source code ● Most vulnerabilities are unintentional ● Much smaller risk of malicious code being injected ● The smart way to make them public is when you have a fix (public disclosure) ● More than 98% of public vulnerabilities have a fix ● But you have to keep up with the latest fixes
  • 22. The Real Risk: Not Lack of Fix, Lack of Speed ● Once a vulnerability is disclosed, exploiting it becomes far easier. The attacker has the full detail of the vulnerability and how it can be invoked ● Most attacks exploit known vulnerabilities that have never been patched despite patches being available ● Symantec predicts that "Through 2020, 99% of vulnerabilities exploited will continue to be ones known by security and IT professionals for at least one year"
  • 23. Salt Framework Vulnerabilities Example ● Open Source Framework used to monitor and update the state of servers ● IBM Cloud, LinkedIn, and eBay, use Salt to configure servers, relay messages from the "master server" and issue commands to a specific time schedule. ● Two high severity vulnerabilities ○ CVE-2020-11651 (an authentication bypass) ○ CVE-2020-11652 (a directory traversal) ○ When combined, could allow attackers to bypass login procedures and run code on Salt master servers left exposed on the internet ● Disclosed publicly on April 30 by researchers at F-Secure Labs and SaltStack had released updated versions that fixed it the previous day. ● Exploits at: LineageOS, Ghost blog platform, Xen Orchestra and most likely more
  • 24. Manage your Open Source Usage: SCA ● Visibility of all your Open Source usage ● Visibility of license and vulnerability risk based on policies. ● Vulnerabilities prioritization will reduce significant risk. ● Make SCA scans part of SDLC, and part of CI/CD ● SCA provides insight into remediation and act to prevent security breaches ● Do not scan once, new vulnerabilities are introduced all the time
  • 25. Apply What You Have Learned Today ● Keep promoting Open Source, keep promoting innovation in your organization ● Keep and active inventory of the open source you use ● Detect vulnerabilities from NVD and other sources ● Prioritize fixes: Update vulnerable libraries ● SCA Scan Automation: DevSecOps
  • 26. THANK YOU! Javier Perez - javierperez.mozello.com