EdX

Secure Software Development: Verification and More Specialized Topics (edX)

Secure Software Development: Verification and More Specialized Topics (edX)

Learn how to verify software for security, and take a deeper dive into the basics of applying threat models and cryptography. 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.

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

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 how to verify software for security. In particular, it discusses the various static and dynamic analyses approaches, as well as how to apply them (e.g., in a continuous integration pipeline). It also discusses more specialized topics, such as the basics of how to develop a threat model and how to apply various cryptographic capabilities.
This is the third 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 Verification: How to examine software, include some key tool types, and how to apply them in continuous integration (CI). This includes learning about security code scanners/static application security testing (SAST) tools, software component analysis (SCA)/dependency analysis tools, fuzzers, and web application scanners.
  • Threat modeling/Attack modeling: How to consider your system from an attacker’s point of view and how to apply a simple design analysis approach called STRIDE.
  • Fielding: How to deploy and operate secure software, handle vulnerability reports, and how to rapidly update when reused components have publicly-known vulnerabilities.
  • Assurance cases & formal methods: The basics of approaches to more strongly analyze and justify that your software is secure.

Syllabus

Welcome!
Chapter 1. Verification (basics of verification; static analysis; software component analysis - SCA/dependency analysis; dynamic analysis; other verification topics - combining verification approaches)
Chapter 2. Threat Modeling
Chapter 3. Cryptography (symmetric/shared key encryption; cryptographic hashes (digital fingerprints); public-key (asymmetric) cryptography; cryptographic pseudo-random number generator (PRNG); storing passwords; transport layer security (TLS); other topics in cryptography)
Chapter 4. Other Topics (vulnerability disclosures; assurance cases; distributing, fielding/deploying, operations and disposal; formal methods; top vulnerability lists)
Final Exam (Verified Certificate 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

Information Security - Introduction to Information Security (edX) EdX
New York University,NYUx

Information Security - Introduction to Information Security (edX)

Learn the fundamentals of information security, including Security Design Principles, Threat Modeling and Security Policy. This is a self-paced course that provides an introduction to information security and cybersecurity. Students gain a broad overview of Information Security and Privacy (ISP) through high-level ISP concepts. We discuss both traditional design principles and principles that were developed to design secure systems.

Self Paced
Self-Paced
Introduction to Cloud Computing (edX) EdX
IBM

Introduction to Cloud Computing (edX)

Master the core concepts in Cloud Computing, from service and deployment models, to cloud architecture, security, new technologies, and possible careers. This course introduces you to the core concepts of cloud computing. You will gain the foundational knowledge required for understanding cloud computing from both business and practitioner perspectives.

Self Paced
Self-Paced
Cybersecurity Fundamentals (edX) EdX
Rochester Institute of Technology,RITx

Cybersecurity Fundamentals (edX)

Learn cybersecurity fundamentals, including how to detect threats, protect systems and networks, and anticipate potential cyber attacks. In this introduction to the field of computing security, you will be given an extensive overview of the various branches of computing security. You will learn cybersecurity concepts, issues, and tools that are critical in solving problems in the computing security domain.

Jan 8th 2024
5-12 Weeks
Cybersecurity Roles and Operating System Security (edX) EdX
IBM

Cybersecurity Roles and Operating System Security (edX)

This course gives you the background needed to understand basic Cybersecurity around people. process and technology. No matter if you are new to the cybersecurity field or are looking to change careers, this course will help you understand the roles of system security professionals available within an organization from the chief information security officier (CISO) to security analysts.

Self Paced
Self-Paced
Arctic Security Fundamentals (edX) EdX
University of Alaska Fairbanks,AlaskaX

Arctic Security Fundamentals (edX)

This course explores the present-day security situation of the Arctic through a focus on the key stakeholders responsible for diplomacy and defense. The Arctic: a region of frigid waters, tundra, and prolonged periods of light and darkness. While it may seem desolate, the Circumpolar North holds a wealth of resources and opportunities for nations and the Indigenous peoples who live there.

Self Paced
Self-Paced
Web Security Fundamentals (edX) EdX
KU Leuven University

Web Security Fundamentals (edX)

Essential knowledge for every web developer, discover important principles of modern web security, and learn about current security best practices. Web applications are inherently insecure, as aptly illustrated by a pile of recent events. Insecurity is however not fundamental to the web platform. As a matter of fact, the modern web offers a variety of powerful security features that help stop a hacker. Unfortunately, not many developers have the knowledge and skills to leverage these security features to their full potential.

No sessions available
5-12 Weeks
Software Construction: Object-Oriented Design (edX) EdX
The University of British Columbia,UBCx

Software Construction: Object-Oriented Design (edX)

Learn how to design large software systems that solve real-world problems using object-oriented design techniques. By the end of the course, you will have a solid foundation in Java and Object-Oriented Design, as well as many software development concepts that can be applied to any language.

Self Paced
Self-Paced
Terrorism and Counterterrorism (edX) EdX
Georgetown University,GeorgetownX

Terrorism and Counterterrorism (edX)

What is the danger of terrorism, and how can the world respond effectively? Terrorism has gone from a persistent yet marginal security concern to one of the most important security problems of our day. There are few countries that do not suffer from some form of terrorism. Though many attempts at terrorism fail, some groups wage lengthy and bloody campaigns and, in exceptional cases, kill hundreds or even thousands in pursuit of their ends.

Self Paced
Self-Paced