Software Security (Cousera)

Software Security (Cousera)

This course we will explore the foundations of software security. We will consider important software vulnerabilities and attacks that exploit them -- such as buffer overflows, SQL injection, and session hijacking -- and we will consider defenses that prevent or mitigate these attacks, including advanced testing and program analysis techniques. Importantly, we take a "build security in" mentality, considering techniques at each phase of the development cycle that can be used to strengthen the security of software systems.

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

Successful learners in this course typically have completed sophomore/junior-level undergraduate work in a technical field, have some familiarity with programming, ideally in C/C++ and one other "managed" program language (like ML or Java), and have prior exposure to algorithms. Students not familiar with these languages but with others can improve their skills through online web tutorials.
Course 2 of 5 in the Cybersecurity Specialization.

Syllabus

WEEK 1
Overview
Overview and expectations of the course
Low-level security
Low-level security: Attacks and exploits

WEEK 2
Defending against low-level exploits
Defending against low-level exploits

WEEK 3
Web security
Web security: Attacks and defenses

WEEK 4
Secure software development
Designing and Building Secure Software

WEEK 5
Program analysis
Static Program Analysis

WEEK 6
Pen testing
Penetration and Fuzz Testing

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

Related Courses

Networking and Security in iOS Applications (Coursera) Coursera
University of California, Irvine

Networking and Security in iOS Applications (Coursera)

You will learn to extend your knowledge of making iOS apps so that they can securely interact with web services and receive push notifications. You'll learn how to store data securely on a device using Core Data. You’ll also learn to securely deploy apps to the App Store and beta users over-the-air. The format of the course is through a series of code tutorials. We will walk you through the creation of several apps that you can keep as a personal app toolbox. When you make your own apps after this course, you can bring in these capabilities as needed. When necessary we pop out of the code tutorials to talk about concepts at a higher level so that what you are programming makes sense.

Jun 22nd 2026
4 Weeks
Lean Software Development (Coursera) Coursera
University of Minnesota

Lean Software Development (Coursera)

While scrum and XP were transforming the software development industry, there were another set of ideas (derived from lean manufacturing and Six Sigma) that started to influence software development methods. These ideas around Lean Software Development forms the foundation of number of agile methods. In this course, we will explore lean concepts and cover some of the common Lean methods and techniques like Kanban, Value Stream Mapping, etc.

Jun 22nd 2026
4 Weeks
Mathematical Foundations for Cryptography (Coursera) Coursera
University of Colorado System

Mathematical Foundations for Cryptography (Coursera)

Welcome to Course 2 of Introduction to Applied Cryptography. In this course, you will be introduced to basic mathematical principles and functions that form the foundation for cryptographic and cryptanalysis methods. These principles and functions will be helpful in understanding symmetric and asymmetric cryptographic methods examined in Course 3 and Course 4. These topics should prove especially useful to you if you are new to cybersecurity. It is recommended that you have a basic knowledge of computer science and basic math skills such as algebra and probability.

Jun 22nd 2026
4 Weeks
Real-Time Cyber Threat Detection and Mitigation (Coursera) Coursera
New York University

Real-Time Cyber Threat Detection and Mitigation (Coursera)

This course introduces real-time cyber security techniques and methods in the context of the TCP/IP protocol suites. Explanation of some basic TCP/IP security hacks is used to introduce the need for network security solutions such as stateless and stateful firewalls. Learners will be introduced to the techniques used to design and configure firewall solutions such as packet filters and proxies to protect enterprise assets.

Jun 22nd 2026
4 Weeks
Introduction to Enterprise Computing (Coursera) Coursera
IBM

Introduction to Enterprise Computing (Coursera)

Large Scale Enterprise Computing powers all major transactions, and the Mainframe is responsible for 87% of all credit card transactions and enables 71% of all Fortune 500 companies. Mainframes are fundamental on how we do business, and IBM Z is the only production mainframe sold today. Virtually everyone depends on it. This is your introduction to the hardware, operating systems, security, and features that make this possible.

Jun 22nd 2026
3 Weeks
Aspectos básicos de la asistencia técnica (Coursera) Coursera
Google

Aspectos básicos de la asistencia técnica (Coursera)

Este curso es el primero de una serie que tiene como objetivo prepararte para un rol como especialista de soporte de TI de nivel inicial. En este curso, serás introducido en el mundo de la tecnología de la información, o TI. Aprenderás sobre las diferentes facetas de la tecnología de la información como hardware y software informático, Internet, solución de problemas y servicio al cliente.

Jun 23rd 2026
5-12 Weeks
Cybersecurity Compliance Framework & System Administration (Coursera) Coursera
IBM

Cybersecurity Compliance Framework & System Administration (Coursera)

This course gives you the background needed to understand the key cybersecurity compliance and industry standards. This knowledge will be important for you to learn no matter what cybersecurity role you would like to acquire or have within an organization. You will learn the basic commands for user and server administration as it relates to security. You will need this skill to be able to understand vulnerabilities within your organizations operating systems.

Jun 22nd 2026
4 Weeks
Protecting Cloud Architecture with Alibaba Cloud (Coursera) Coursera
Alibaba Cloud Academy

Protecting Cloud Architecture with Alibaba Cloud (Coursera)

The Security Exam Preparation Course is a series of online courses covering topics including Linux and Windows OS basics and operations, network fundamentals, host security, application security, network security, and data security. It is designed to help you understand how these products work, how they should be used, and help you gain the required knowledge to prepare for the ACA/ACP level cloud security specialist.

Jun 22nd 2026
5-12 Weeks
Engineering Maintainable Android Apps (Coursera) Coursera
Vanderbilt University

Engineering Maintainable Android Apps (Coursera)

Engineering Maintainable Android Apps, which is a 4 week MOOC that shows by example various methods for engineering maintainable Android apps, including test-driven development methods and how to develop/run unit tests using JUnit and Robotium (or equivalent automated testing frameworks for Android), as well as how to successfully apply common Java/Android software patterns to improve the extensibility and clarity of Android apps.

Jun 22nd 2026
4 Weeks
Technical Support Fundamentals (Coursera) Coursera
Google

Technical Support Fundamentals (Coursera)

This course is the first of a series that aims to prepare you for a role as an entry-level IT Support Specialist. In this course, you’ll be introduced to the world of Information Technology, or IT. You’ll learn about the different facets of Information Technology, like computer hardware, the Internet, computer software, troubleshooting, and customer service. This course covers a wide variety of topics in IT that are designed to give you an overview of what’s to come in this certificate program.

Jun 22nd 2026
5-12 Weeks
Mitigating Security Vulnerabilities on Google Cloud Platform (Coursera) Coursera
Google Cloud

Mitigating Security Vulnerabilities on Google Cloud Platform (Coursera)

This self-paced training course gives participants broad study of security controls and techniques on Google Cloud Platform. Through recorded lectures, demonstrations, and hands-on labs, participants explore and deploy the components of a secure GCP solution, including Cloud Identity, the GCP Resource Manager, Cloud IAM, Google Virtual Private Cloud firewalls, Google Cloud Load balancing, Cloud CDN, Cloud Storage access control technologies, Stackdriver, Security Keys, Customer-Supplied Encryption Keys, the Google Data Loss Prevention API, and Cloud Armor. Participants learn mitigations for attacks at many points in a GCP-based infrastructure, including Distributed Denial-of-Service attacks, phishing attacks, and threats involving content classification and use.

Jun 22nd 2026
3 Weeks
Interfacing with the Arduino (Coursera) Coursera
University of California, Irvine

Interfacing with the Arduino (Coursera)

Arduino senses the environment by receiving inputs from add-on devices such as sensors, and can control the world around it by adjusting lights, motors, and other actuators. In this class you will learn how and when to use the different types of sensors and how to connect them to the Arduino. Since the external world uses continuous or analog signals and the hardware is digital you will learn how these signals are converted back-and-forth and how this must be considered as you program your device. You'll also learn about the use of Arduino-specific shields and the shields software libraries to interface with the real world.

Jun 22nd 2026
4 Weeks