Cybersecurity 204

Software Security

3 units

Course Description

The course presents the challenges, principles, mechanisms and tools to make software secure. We will discuss the main causes of vulnerabilities and the means to avoid and defend against them. The focus is on secure programming practice, including specifics for various languages, but also covering system-level defenses (architectural approaches and run-time enforcement). We will also apply software analysis and vulnerability detection tools in different scenarios.

Student Learning Outcomes

  • Students will be able to apply and manage secure coding practices throughout software project development
  • Students will be able to recognize insecure programming patterns and know how to replace them with secure alternatives
  • Students will gain a good comprehension of the landscape of software security vulnerabilities, with specifics for various programming languages and types of software applications
  • Students will gain the ability to analyze the security of a software system and convincingly advocate about the significance of vulnerabilities
  • Students will know representative tools for software security analysis and testing, use them in practice and understand their capabilities and limitations

Previously listed as CYBER W204.

Prerequisites

CYBER 202 must be taken prior to or concurrently with CYBER 204. Knowledge of at least one non-scripting programming language (e.g. C, C++, or Java); fundamental knowledge of information systems (review of operating systems notions). MICS students only

Video

cybersecurity@berkeley | W204 Software Security

cybersecurity@berkeley | W204 Software Security

If you require video captions for accessibility and this video does not have captions, click here to request video captioning.

Course History

Spring 2023

Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver

Fall 2022

Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver

Summer 2022

Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver

Spring 2022

Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver

Fall 2021

Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver

Summer 2021

Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver

Spring 2021

Instructor(s): Jennia Hizver
Instructor(s): Jennia Hizver

Last updated:

June 23, 2022