Courseoutline Fundamental Security (Mekelle)
Courseoutline Fundamental Security (Mekelle)
Institute of Technology
Faculty of Computing and Software Engineering
Course Name: Fundamental of Software Security Prerequisite: None
Course Code: SEng7431 Academic Year 2021/22
Semester: I Target group: G3 SE(Mekelle)
CP: 5(2hr Lecture, 3hrs Laboratory) Module Title: Computer networking & security
Instructor: Haile T. office No:O-So-03
Course Description
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.
Course objectives
At the end of the course, the student should be able to:
Understanding the role that software plays in providing security and as a source of insecurity
Understand Principles, methods & technologies to make the software more secure Typical threats &
vulnerabilities that make software less secure, and how to avoid them
Know how to prevent them entirely, or mitigate their effects, by improving the software's design and
implementation.
Know state-of-the-art tools and techniques for testing and otherwise verifying that software is secure.
Know how to "build security in" rather than consider it as an afterthought, and will have a plethora of
skills, applicable at each phase of the development cycle, that can be used to strengthen the security of
software systems.
Course Contents
Weeks Lecture topics
1 what is security? Key Objectives of Security, Computer Security Challenges
Security Services and Mechanisms, Security Attacks, Security Techniques
Model for Network Security
2 Secure Design Principles, Secure System Design
3 Cryptography
Overview of cryptanalysis
Encryption Techniques
✓ Symmetric cryptography (DES, AES) ✓ Public key cryptography (RSA)
✓ Key management and exchange ✓ Cryptographic hash functions and certificate
4 Application and OS Security
Application code attacks (buffer overflow)
✓ Prevention: System design, robust coding, isolation.
✓ Users management
✓ Enforcement of security
1
Arbaminch University
Institute of Technology
Faculty of Computing and Software Engineering
Course Name: Fundamental of Software Security Prerequisite: None
Course Code: SEng7431 Academic Year 2021/22
Semester: I Target group: G3 SE(Mekelle)
CP: 5(2hr Lecture, 3hrs Laboratory) Module Title: Computer networking & security
Instructor: Haile T. office No:O-So-03