Secure Programming

Undergraduate | 2026

Course page banner
area/catalogue icon
Area/Catalogue
COMP 3031
Course ID icon
Course ID
205804
Level of study
Level of study
Undergraduate
Unit value icon
Unit value
6
Course level icon
Course level
3
Study abroad and student exchange icon
Inbound study abroad and exchange
Inbound study abroad and exchange
The fee you pay will depend on the number and type of courses you study.
Yes
University-wide elective icon
University-wide elective course
Yes
Single course enrollment
Single course enrolment
Yes
alt
Note:
Course data is interim and subject to change

Course overview

The purpose of the course is to learn about secure software, including its design, implementation and maintenance. During the course students will be exposed to a selection of topics from the following: performing threat modelling, issues in authentication and authorisation, auditing for security, input sanitising, TOCTOU vulnerabilities, memory management issues, fixing vulnerabilities and patch distribution. The course requires previous programming experience and some understanding of computer systems.

Course learning outcomes

  • Employ secure software development practicesIdentify common vulnerable programming patterns
  • Develop exploits for security vulnerability
  • Choose mitigation strategies for common vulnerability patterns

Prerequisite(s)

N/A

Corequisite(s)

N/A

Antirequisite(s)

N/A