EdX

Secure Software Development: Requirements, Design, and Reuse (edX)

Secure Software Development: Requirements, Design, and Reuse (edX)

Learn the security basics that allow you to develop software that is hardened against attacks, and understand how you can reduce the damage and speed the response when a vulnerability is exploited.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

Modern software is under constant attack, but many software developers have never been told how to effectively counter those attacks. This course works to solve that problem, by explaining the fundamentals of developing secure software. Geared towards software developers, DevOps professionals, software engineers, web application developers, and others interested in learning how to develop secure software, this course focuses on practical steps that can be taken, even with limited resources, to improve information security. This course will enable software developers to create and maintain systems that are much harder to successfully attack, reduce the damage when attacks are successful, and speed the response so that any latent vulnerabilities can be rapidly repaired.
This course discusses the basics of security, such as what risk management really means. It discusses how to consider security as part of the requirements of a system, and what potential security requirements you might consider. This part then discusses how to design software to be secure, including various secure design principles that will help you avoid bad designs and embrace good ones. It also discusses how to secure your software supply chain, that is, how to more securely select and acquire reused software (including open source software) to enhance security.
This is the first of the three courses in the Secure Software Development Fundamentals Professional Certificate program, and was developed by the Open Source Security Foundation (OpenSSF), a project of the Linux Foundation focused on securing the open source ecosystem. The training courses included in this program focus on practical steps that you (as a developer) can take to counter most common kinds of attacks.
This course is part of the Secure Software Development Fundamentals Professional Certificate.

What you'll learn

  • Security basics: risk management, the “CIA” triad, and requirements.
  • Secure design principles: what are principles such as “least privilege” and how to apply these principles.
  • Supply chain evaluation: tips on how to choose packages to reuse, and how to reuse them so that you can rapidly be alerted & update.

Syllabus

. Welcome!
. Security Basics
. Secure Design Principles
. Reusing External Software
. Final Exam (Verified track only)

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

AWS Cloud Technical Essentials (edX) EdX
AWS

AWS Cloud Technical Essentials (edX)

Kick off your cloud career by learning the fundamentals of AWS products, services, and solutions and basic concepts of database, storage, networking, security and cloud computing. Are you in a technical role and want to learn the fundamentals of AWS? Do you aspire to have a job or career as a cloud developer, architect, or in an operations role? If so, this course is an ideal way to start, as it requires no prior knowledge of cloud computing or AWS products and services.

Self Paced
Self-Paced
Side-Channel Security: Developing a Side-Channel Mindset (edX) EdX
Graz University of Technology,TUGrazX

Side-Channel Security: Developing a Side-Channel Mindset (edX)

Side channels are everywhere. They are incredibly powerful and have disrupted the world in the last years, especially with attacks like Meltdown and Spectre that impacted most computers on the planet. You also have seen side channels and used them already yourself. In this course, you will learn and practice the side-channel mindset and how to spot side channels in the real-world and how to use them in non-technical and semi-technical settings.

Self Paced
Self-Paced
IT Fundamentals for Business Professionals: Software development (edX) EdX
Universitat Politècnica de València,UPValenciaX

IT Fundamentals for Business Professionals: Software development (edX)

Working with Information Technology (IT) without the necessary background? Learn the fundamentals of software development. This course is one of the 5 courses of an introductory business information systems series, designed to introduce you to the amazing world of Information Technology.

Self Paced
Self-Paced
Between Physical and Sofware: Fault Attacks, Side Channels, and Mitigations (edX) EdX
Graz University of Technology,TUGrazX

Between Physical and Sofware: Fault Attacks, Side Channels, and Mitigations (edX)

Fault attacks (sometimes also called active side-channel attacks ) are a very powerful means that goes beyond just leaking secrets from an application or device, to actively manipulating it. We will look at fault attacks that can be triggered from software, namely Rowhammer and Plundervolt. We will also learn that some transient-execution attacks have some similarities to fault attacks. You will implement some of these attacks yourself and learn how they are mitigated.

Self Paced
Self-Paced
Introduction to Software Side Channels and Mitigations (edX) EdX
Graz University of Technology,TUGrazX

Introduction to Software Side Channels and Mitigations (edX)

Side channels exist in the real world, but they also exist in computers and can be exploited directly from software. This is a substantial computer security problem today, that we need to learn about to be able to stop attacks. In this course, you will learn and practice basic software-based side channels and understand the thought process to utilize a side channel. You will then learn how to mitigate or avoid side channels in software.

Self Paced
5-12 Weeks
Enterprise Software Lifecycle Management (edX) EdX
National Research Nuclear University MEPhI,MEPhIx

Enterprise Software Lifecycle Management (edX)

Learn the best models, methods and practices for effective lifecycle management for large-scale software. Want to manage software development, but unsure where to begin? This computer science course will teach you the models, methods and practices of software development to make the process manageable and result in high-quality and efficient software products.

Self Paced
Self-Paced
Beginners Guide to Cybersecurity (edX) EdX
IBM

Beginners Guide to Cybersecurity (edX)

This course is designed for beginners to build critical skills to address common security threats, and adopt best practices for reducing risks. A tech talent shortage continues as organizations adopt higher security standards to address the ongoing risk of threats and breaches. This course builds key skills to address common security threats and risks and provides best practices to guard against them.

Self Paced
Self-Paced