Difference between revisions of "BSc: Network And Cyber Security"
R.sirgalina (talk | contribs) |
R.sirgalina (talk | contribs) |
||
(3 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
+ | |||
= Network and CyberSecurity = |
= Network and CyberSecurity = |
||
+ | * '''Course name''': Network and CyberSecurity |
||
+ | * '''Code discipline''': ? |
||
+ | * '''Subject area''': |
||
+ | == Short Description == |
||
− | * '''Course name:''' Network and Cyber Security |
||
+ | This course covers the following concepts: Information Security Management; Web Security; Software Security; Network security. |
||
− | * '''Course number:''' ? |
||
− | == |
+ | == Prerequisites == |
− | === |
+ | === Prerequisite subjects === |
− | * Information Security Management |
||
− | * Web Security |
||
− | * Software Security |
||
− | * Network security |
||
+ | === Prerequisite topics === |
||
− | === What is the purpose of this course? === |
||
− | Security breaches cost billions of dollars worth of damage to the computing industry. Today, cybercriminals control armies consisting of several millions of compromised machines. Attacks are increasingly being perpetrated towards enterprises, individuals, critical infrastructure and even governments. At the same time, our computer systems and platforms are fast evolving to meet the demands of the industry. Increasing the use of personalized devices, and our growing dependence on legacy computer systems that weren’t designed with security in mind is a challenge ahead. Therefore, the purpose of this course is to cover the design and implementation of different IT systems from a security perspective. This course introduces to the field of systems security: that is, how to analyze and develop secure systems. The course covers fundamental concepts of systems design, low and high-level vulnerabilities exploitation, design, and implementation flaws in different types of applications based on the real-world scenarios. |
||
− | + | == Course Topics == |
|
+ | {| class="wikitable" |
||
+ | |+ Course Sections and Topics |
||
+ | |- |
||
+ | ! Section !! Topics within the section |
||
+ | |- |
||
+ | | Information Security Management || |
||
+ | # Security Policies and Controls |
||
+ | # Risks Analysis and Threats Modeling |
||
+ | # Software Development Security Techniques |
||
+ | |- |
||
+ | | Web Security || |
||
+ | # Security-related web technologies |
||
+ | # Same Origin Policy |
||
+ | # Web Attacker Model |
||
+ | # OWASP methodology |
||
+ | # Injection Flaws |
||
+ | # Authorization Flaws |
||
+ | # Cookies Flaws |
||
+ | # Server Misconfiguration |
||
+ | |- |
||
+ | | Software Security || |
||
+ | # Binary Exploitation |
||
+ | # ASLR |
||
+ | # NX |
||
+ | |- |
||
+ | | Network Security || |
||
+ | # Networking tools |
||
+ | # Network attacks |
||
+ | # IDS/IPS |
||
+ | |} |
||
+ | == Intended Learning Outcomes (ILOs) == |
||
− | + | === What is the main purpose of this course? === |
|
+ | Security breaches cost billions of dollars worth of damage to the computing industry. Today, cybercriminals control armies consisting of several millions of compromised machines. Attacks are increasingly being perpetrated towards enterprises, individuals, critical infrastructure and even governments. At the same time, our computer systems and platforms are fast evolving to meet the demands of the industry. Increasing the use of personalized devices, and our growing dependence on legacy computer systems that weren’t designed with security in mind is a challenge ahead. Therefore, the purpose of this course is to cover the design and implementation of different IT systems from a security perspective. This course introduces to the field of systems security: that is, how to analyze and develop secure systems. The course covers fundamental concepts of systems design, low and high-level vulnerabilities exploitation, design, and implementation flaws in different types of applications based on the real-world scenarios. |
||
+ | === ILOs defined at three levels === |
||
− | By the end of the course, the students should be able to recognize and define |
||
+ | ==== Level 1: What concepts should a student know/remember/explain? ==== |
||
+ | By the end of the course, the students should be able to ... |
||
* Security policies and controls |
* Security policies and controls |
||
* Risks and threats related to the system design and its implementation |
* Risks and threats related to the system design and its implementation |
||
Line 32: | Line 65: | ||
* Common weaknesses/vulnerabilities in the typical systems software |
* Common weaknesses/vulnerabilities in the typical systems software |
||
− | ==== |
+ | ==== Level 2: What basic practical skills should a student be able to perform? ==== |
+ | By the end of the course, the students should be able to ... |
||
− | |||
− | By the end of the course, the students should be able to describe and explain (with examples) |
||
− | |||
* Information security management methods |
* Information security management methods |
||
* Difference between different types of risks and threats |
* Difference between different types of risks and threats |
||
Line 45: | Line 76: | ||
* Network proxies |
* Network proxies |
||
− | ==== |
+ | ==== Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios? ==== |
+ | By the end of the course, the students should be able to ... |
||
− | |||
* Critically audit systems and code for security flaws and threats |
* Critically audit systems and code for security flaws and threats |
||
* Design and implement exploits for real security vulnerabilities |
* Design and implement exploits for real security vulnerabilities |
||
* Develop secure systems and applications |
* Develop secure systems and applications |
||
* Be able to design defense solutions and outline their limitations |
* Be able to design defense solutions and outline their limitations |
||
− | * Be able to find misconfigurations/vulnerabilities in a given network/system |
+ | * Be able to find misconfigurations/vulnerabilities in a given network/system |
+ | == Grading == |
||
− | === Course |
+ | === Course grading range === |
+ | {| class="wikitable" |
||
− | |||
− | + | |+ |
|
− | |+ Course grade breakdown |
||
− | !align="center"| '''Type''' |
||
− | !align="center"| '''Default points''' |
||
− | !align="center"| '''Proposed points''' |
||
|- |
|- |
||
+ | ! Grade !! Range !! Description of performance |
||
− | |align="center"| Labs/seminar classes |
||
− | |align="center"| 20 |
||
− | |align="center"| 30 |
||
|- |
|- |
||
+ | | A. Excellent || 90-100 || - |
||
− | |align="center"| Project |
||
− | |align="center"| 30 |
||
− | |align="center"| 30 |
||
|- |
|- |
||
+ | | B. Good || 70-89 || - |
||
− | |align="center"| Exams |
||
+ | |- |
||
− | |align="center"| 50 |
||
+ | | C. Satisfactory || 60-69 || - |
||
− | |align="center"| 40 |
||
+ | |- |
||
+ | | D. Poor || 0-59 || - |
||
|} |
|} |
||
+ | === Course activities and grading breakdown === |
||
− | If necessary, please indicate freely your course’s features in terms of students’ performance assessment: |
||
+ | {| class="wikitable" |
||
− | |||
+ | |+ |
||
− | === Grades range === |
||
− | |||
− | {| |
||
− | |+ Course grading range |
||
− | !align="center"| '''Grade''' |
||
− | !align="center"| '''Default range''' |
||
− | !align="center"| '''Proposed range''' |
||
|- |
|- |
||
+ | ! Activity Type !! Percentage of the overall course grade |
||
− | |align="center"| A. Excellent |
||
− | |align="center"| 90-100 |
||
− | |align="center"| 90-100 |
||
|- |
|- |
||
+ | | Labs/seminar classes || 30 |
||
− | |align="center"| B. Good |
||
− | |align="center"| 75-89 |
||
− | |align="center"| 70-89 |
||
|- |
|- |
||
+ | | Project || 30 |
||
− | |align="center"| C. Satisfactory |
||
− | |align="center"| 60-74 |
||
− | |align="center"| 60-69 |
||
|- |
|- |
||
+ | | Exams || 40 |
||
− | |align="center"| D. Poor |
||
− | |align="center"| 0-59 |
||
− | |align="center"| 0-59 |
||
|} |
|} |
||
+ | === Recommendations for students on how to succeed in the course === |
||
− | If necessary, please indicate freely your course’s grading features: |
||
− | The laboratory assignments are mandatory with a requried minimum result of 6/10 - including re-takes and late submissions - to complete the course. As a conscequence, the grades are generally pretty high and therefore the grading ranges are scaled up. |
||
− | + | == Resources, literature and reference materials == |
|
+ | === Open access resources === |
||
− | * Mike Chapple, James Michael Stewart, Darril Gibson, ''CISSP Official Study Guide, 8th Edition'', Sybex, 2018 |
||
+ | * Mike Chapple, James Michael Stewart, Darril Gibson, CISSP Official Study Guide, 8th Edition, Sybex, 2018 |
||
− | * Michal Zalewsk, ''The Tangled Web'', No Starch Press, 2011 |
||
− | * |
+ | * Michal Zalewsk, The Tangled Web, No Starch Press, 2011 |
+ | * Jon Erickson, Hacking: The Art of Exploitation, 2nd Edition, No Starch Press, 2008 |
||
− | == |
+ | === Closed access resources === |
+ | |||
− | {| |
||
+ | === Software and tools used within the course === |
||
− | |+ Course Sections |
||
+ | |||
− | !align="center"| '''Section''' |
||
+ | = Teaching Methodology: Methods, techniques, & activities = |
||
− | !align="center"| '''Section Title''' |
||
+ | |||
− | !align="center"| '''Teaching Hours''' |
||
+ | == Activities and Teaching Methods == |
||
+ | {| class="wikitable" |
||
+ | |+ Activities within each section |
||
|- |
|- |
||
+ | ! Learning Activities !! Section 1 !! Section 2 !! Section 3 !! Section 4 |
||
− | |align="center"| 1 |
||
− | |align="center"| Information security management |
||
− | |align="center"| 6 |
||
|- |
|- |
||
+ | | Homework and group projects || 1 || 1 || 1 || 1 |
||
− | |align="center"| 2 |
||
− | |align="center"| Web security |
||
− | |align="center"| 6 |
||
|- |
|- |
||
+ | | Testing (written or computer based) || 1 || 1 || 1 || 1 |
||
− | |align="center"| 3 |
||
− | |align="center"| Software Security |
||
− | |align="center"| 8 |
||
|- |
|- |
||
+ | | Reports || 1 || 1 || 1 || 1 |
||
− | |align="center"| 4 |
||
− | |align="center"| Network Security |
||
− | |align="center"| 4 |
||
|- |
|- |
||
+ | | Discussions || 1 || 1 || 1 || 1 |
||
− | |align="center"| 5 |
||
+ | |- |
||
− | |align="center"| Labs |
||
+ | | Development of individual parts of software product code || 0 || 1 || 0 || 0 |
||
− | |align="center"| 56 |
||
− | | |
+ | |- |
+ | | Midterm evaluation || 0 || 1 || 0 || 0 |
||
− | |||
+ | |} |
||
− | === Section 1 === |
||
+ | == Formative Assessment and Course Activities == |
||
− | |||
− | ====Section title==== |
||
− | Information Security Management |
||
− | |||
− | ====Topics covered in this section==== |
||
− | |||
− | * Security Policies and Controls |
||
− | * Risks Analysis and Threats Modeling |
||
− | * Software Development Security Techniques |
||
− | === |
+ | === Ongoing performance assessment === |
+ | ==== Section 1 ==== |
||
− | {| |
||
+ | {| class="wikitable" |
||
− | !align="center"| '''Form''' |
||
+ | |+ |
||
− | !align="center"| '''Yes/No''' |
||
|- |
|- |
||
+ | ! Activity Type !! Content !! Is Graded? |
||
− | |align="center"| Development of individual parts of software product code |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || What types of Security Policies are exist? || 1 |
||
− | |align="center"| Homework and group projects |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || What information from a given system you need to take into account to calculate security risks? || 1 |
||
− | |align="center"| Midterm evaluation |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || Explain the difference between static and dynamic analysis of application code? || 1 |
||
− | |align="center"| Testing (written or computer based) |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || Audit the given security policy for vulnerabilities and update it accordingly || 0 |
||
− | |align="center"| Reports |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || Calculate security risks for a given system and develop necessary security measures for mitigation || 0 |
||
− | |align="center"| Essays |
||
+ | |} |
||
− | |align="center"| 0 |
||
+ | ==== Section 2 ==== |
||
+ | {| class="wikitable" |
||
+ | |+ |
||
|- |
|- |
||
+ | ! Activity Type !! Content !! Is Graded? |
||
− | |align="center"| Oral polls |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || What is the difference between reflected XSS and stored XSS? which one is more critical and why? || 1 |
||
− | |align="center"| Discussions |
||
− | |align="center"| 1 |
||
− | |} |
||
− | |||
− | ====Typical questions for ongoing performance evaluation within this section==== |
||
− | |||
− | * What types of Security Policies are exist? |
||
− | * What information from a given system you need to take into account to calculate security risks? |
||
− | * Explain the difference between static and dynamic analysis of application code? |
||
− | |||
− | ====Typical questions for seminar classes (labs) within this section==== |
||
− | |||
− | * Audit the given security policy for vulnerabilities and update it accordingly |
||
− | * Calculate security risks for a given system and develop necessary security measures for mitigation |
||
− | |||
− | ====Test questions for final assessment in this section==== |
||
− | |||
− | As above |
||
− | |||
− | === Section 2 === |
||
− | |||
− | ==== Section title ==== |
||
− | Web Security |
||
− | |||
− | ====Topics covered in this section==== |
||
− | |||
− | * Security-related web technologies |
||
− | * Same Origin Policy |
||
− | * Web Attacker Model |
||
− | * OWASP methodology |
||
− | * Injection Flaws |
||
− | * Authorization Flaws |
||
− | * Cookies Flaws |
||
− | * Server Misconfiguration |
||
− | |||
− | ====What forms of evaluation were used to test students’ performance in this section?==== |
||
− | |||
− | {| |
||
− | !align="center"| '''Form''' |
||
− | !align="center"| '''Yes/No''' |
||
|- |
|- |
||
+ | | Question || What are the pros and cons of using regex to protect against XSS? || 1 |
||
− | |align="center"| Development of individual parts of software product code |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || what is the Same Origin Policy? and which attack does it mitigate? || 1 |
||
− | |align="center"| Homework and group projects |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || What is the difference between boolean-based and time-based SQL injection? || 1 |
||
− | |align="center"| Midterm evaluation |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || Vulnerability analysis and exploitation for a given web application || 0 |
||
− | |align="center"| Testing (written or computer based) |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || Write and deploy WAF rules to mitigate a specific web attack || 0 |
||
− | |align="center"| Reports |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || Does the Same Origin Policy apply to the localStorage inside the browser? || 0 |
||
− | |align="center"| Essays |
||
+ | |} |
||
− | |align="center"| 0 |
||
+ | ==== Section 3 ==== |
||
+ | {| class="wikitable" |
||
+ | |+ |
||
|- |
|- |
||
+ | ! Activity Type !! Content !! Is Graded? |
||
− | |align="center"| Oral polls |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || What are the pros and cons of using ASLR? does it affect the performance? || 1 |
||
− | |align="center"| Discussions |
||
− | |align="center"| 1 |
||
− | |} |
||
− | |||
− | ====Typical questions for ongoing performance evaluation within this section==== |
||
− | |||
− | * What is the difference between reflected XSS and stored XSS? which one is more critical and why? |
||
− | * What are the pros and cons of using regex to protect against XSS? |
||
− | * what is the Same Origin Policy? and which attack does it mitigate? |
||
− | * What is the difference between boolean-based and time-based SQL injection? |
||
− | |||
− | ==== Typical questions for seminar classes (labs) within this section ==== |
||
− | |||
− | * Vulnerability analysis and exploitation for a given web application |
||
− | * Write and deploy WAF rules to mitigate a specific web attack |
||
− | * Does the Same Origin Policy apply to the localStorage inside the browser? |
||
− | |||
− | ====Test questions for final assessment in this section==== |
||
− | |||
− | As above |
||
− | |||
− | === Section 3 === |
||
− | |||
− | ====Section title==== |
||
− | Software Security |
||
− | |||
− | ====Topics covered in this section==== |
||
− | |||
− | * Binary Exploitation |
||
− | * ASLR |
||
− | * NX |
||
− | |||
− | ====What forms of evaluation were used to test students’ performance in this section?==== |
||
− | |||
− | {| |
||
− | !align="center"| '''Form''' |
||
− | !align="center"| '''Yes/No''' |
||
|- |
|- |
||
+ | | Question || What can you do with a format string vulnerability? || 1 |
||
− | |align="center"| Development of individual parts of software product code |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || What is the required information to be able to identify a remote libc version? || 1 |
||
− | |align="center"| Homework and group projects |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || Why some binaries might have the same address for their functions? what is the security risk of this? || 1 |
||
− | |align="center"| Midterm evaluation |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || Vulnerability analysis and exploitation for a given binary while ASLR is disabled || 0 |
||
− | |align="center"| Testing (written or computer based) |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || Try to rewrite the following Assembly code in any programming language || 0 |
||
− | |align="center"| Reports |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || How can you check if you have ASLR, PIE, NX enabled or not? || 0 |
||
− | |align="center"| Essays |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || Decompilers are not always accurate why? how can you improve it? || 0 |
||
− | |align="center"| Oral polls |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || Some binaries are shipped with debugging symbols, How can this help you in debugging? || 0 |
||
− | |align="center"| Discussions |
||
+ | |} |
||
− | |align="center"| 1 |
||
+ | ==== Section 4 ==== |
||
− | |} |
||
+ | {| class="wikitable" |
||
− | |||
+ | |+ |
||
− | ====Typical questions for ongoing performance evaluation within this section==== |
||
− | |||
− | * What are the pros and cons of using ASLR? does it affect the performance? |
||
− | * What can you do with a format string vulnerability? |
||
− | * What is the required information to be able to identify a remote libc version? |
||
− | * Why some binaries might have the same address for their functions? what is the security risk of this? |
||
− | |||
− | ====Typical questions for seminar classes (labs) within this section==== |
||
− | |||
− | * Vulnerability analysis and exploitation for a given binary while ASLR is disabled |
||
− | * Try to rewrite the following Assembly code in any programming language |
||
− | * How can you check if you have ASLR, PIE, NX enabled or not? |
||
− | * Decompilers are not always accurate why? how can you improve it? |
||
− | * Some binaries are shipped with debugging symbols, How can this help you in debugging? |
||
− | |||
− | ====Test questions for final assessment in this section==== |
||
− | |||
− | As above |
||
− | |||
− | === Section 4 === |
||
− | |||
− | ====Section title==== |
||
− | Network Security |
||
− | |||
− | ====Topics covered in this section==== |
||
− | |||
− | * Networking tools |
||
− | * Network attacks |
||
− | * IDS/IPS |
||
− | |||
− | ====What forms of evaluation were used to test students’ performance in this section?==== |
||
− | |||
− | {| |
||
− | !align="center"| '''Form''' |
||
− | !align="center"| '''Yes/No''' |
||
|- |
|- |
||
+ | ! Activity Type !! Content !! Is Graded? |
||
− | |align="center"| Development of individual parts of software product code |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || What is the difference between VPN and sock5? || 1 |
||
− | |align="center"| Homework and group projects |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || What are IDS, IPS, and DPI? || 1 |
||
− | |align="center"| Midterm evaluation |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || Why does Nmap produce false-positive when scanning a windows host? can you improve the scanning technique? || 1 |
||
− | |align="center"| Testing (written or computer based) |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || What is covert channel? what are the most common protocols that are used for covert channel? why? || 1 |
||
− | |align="center"| Reports |
||
− | |align="center"| 1 |
||
|- |
|- |
||
+ | | Question || When using a proxy for HTTPS, your browser will always complain about the certificate, how can you solve this issue? || 1 |
||
− | |align="center"| Essays |
||
− | |align="center"| 0 |
||
|- |
|- |
||
+ | | Question || No lab for this section || 0 |
||
− | |align="center"| Oral polls |
||
+ | |} |
||
− | |align="center"| 0 |
||
+ | === Final assessment === |
||
− | |- |
||
+ | '''Section 1''' |
||
− | |align="center"| Discussions |
||
+ | # As above |
||
− | |align="center"| 1 |
||
+ | '''Section 2''' |
||
− | |} |
||
+ | # As above |
||
− | |||
+ | '''Section 3''' |
||
− | ====Typical questions for ongoing performance evaluation within this section==== |
||
+ | # As above |
||
− | |||
+ | '''Section 4''' |
||
− | * What is the difference between VPN and sock5? |
||
+ | # As above |
||
− | * What are IDS, IPS, and DPI? |
||
− | * Why does Nmap produce false-positive when scanning a windows host? can you improve the scanning technique? |
||
− | * What is covert channel? what are the most common protocols that are used for covert channel? why? |
||
− | * When using a proxy for HTTPS, your browser will always complain about the certificate, how can you solve this issue? |
||
+ | === The retake exam === |
||
− | ====Typical questions for seminar classes (labs) within this section==== |
||
+ | '''Section 1''' |
||
+ | '''Section 2''' |
||
− | * No lab for this section |
||
+ | '''Section 3''' |
||
− | ====Test questions for final assessment in this section==== |
||
+ | '''Section 4''' |
||
− | As above |
Latest revision as of 12:57, 12 July 2022
Network and CyberSecurity
- Course name: Network and CyberSecurity
- Code discipline: ?
- Subject area:
Short Description
This course covers the following concepts: Information Security Management; Web Security; Software Security; Network security.
Prerequisites
Prerequisite subjects
Prerequisite topics
Course Topics
Section | Topics within the section |
---|---|
Information Security Management |
|
Web Security |
|
Software Security |
|
Network Security |
|
Intended Learning Outcomes (ILOs)
What is the main purpose of this course?
Security breaches cost billions of dollars worth of damage to the computing industry. Today, cybercriminals control armies consisting of several millions of compromised machines. Attacks are increasingly being perpetrated towards enterprises, individuals, critical infrastructure and even governments. At the same time, our computer systems and platforms are fast evolving to meet the demands of the industry. Increasing the use of personalized devices, and our growing dependence on legacy computer systems that weren’t designed with security in mind is a challenge ahead. Therefore, the purpose of this course is to cover the design and implementation of different IT systems from a security perspective. This course introduces to the field of systems security: that is, how to analyze and develop secure systems. The course covers fundamental concepts of systems design, low and high-level vulnerabilities exploitation, design, and implementation flaws in different types of applications based on the real-world scenarios.
ILOs defined at three levels
Level 1: What concepts should a student know/remember/explain?
By the end of the course, the students should be able to ...
- Security policies and controls
- Risks and threats related to the system design and its implementation
- Software security testing methodologies
- Software development security techniques
- Injection and authorization flaws
- Cookies and misconfiguration flaws
- Common weaknesses/vulnerabilities in web applications
- Common weaknesses/vulnerabilities in the typical systems software
Level 2: What basic practical skills should a student be able to perform?
By the end of the course, the students should be able to ...
- Information security management methods
- Difference between different types of risks and threats
- Security-related web technologies
- The difference in the different web application flaws
- ASLR, NX and how are these techniques can help to protect against a malicious attacker
- Covert channels
- Networking tools
- Network proxies
Level 3: What complex comprehensive skills should a student be able to apply in real-life scenarios?
By the end of the course, the students should be able to ...
- Critically audit systems and code for security flaws and threats
- Design and implement exploits for real security vulnerabilities
- Develop secure systems and applications
- Be able to design defense solutions and outline their limitations
- Be able to find misconfigurations/vulnerabilities in a given network/system
Grading
Course grading range
Grade | Range | Description of performance |
---|---|---|
A. Excellent | 90-100 | - |
B. Good | 70-89 | - |
C. Satisfactory | 60-69 | - |
D. Poor | 0-59 | - |
Course activities and grading breakdown
Activity Type | Percentage of the overall course grade |
---|---|
Labs/seminar classes | 30 |
Project | 30 |
Exams | 40 |
Recommendations for students on how to succeed in the course
Resources, literature and reference materials
Open access resources
- Mike Chapple, James Michael Stewart, Darril Gibson, CISSP Official Study Guide, 8th Edition, Sybex, 2018
- Michal Zalewsk, The Tangled Web, No Starch Press, 2011
- Jon Erickson, Hacking: The Art of Exploitation, 2nd Edition, No Starch Press, 2008
Closed access resources
Software and tools used within the course
Teaching Methodology: Methods, techniques, & activities
Activities and Teaching Methods
Learning Activities | Section 1 | Section 2 | Section 3 | Section 4 |
---|---|---|---|---|
Homework and group projects | 1 | 1 | 1 | 1 |
Testing (written or computer based) | 1 | 1 | 1 | 1 |
Reports | 1 | 1 | 1 | 1 |
Discussions | 1 | 1 | 1 | 1 |
Development of individual parts of software product code | 0 | 1 | 0 | 0 |
Midterm evaluation | 0 | 1 | 0 | 0 |
Formative Assessment and Course Activities
Ongoing performance assessment
Section 1
Activity Type | Content | Is Graded? |
---|---|---|
Question | What types of Security Policies are exist? | 1 |
Question | What information from a given system you need to take into account to calculate security risks? | 1 |
Question | Explain the difference between static and dynamic analysis of application code? | 1 |
Question | Audit the given security policy for vulnerabilities and update it accordingly | 0 |
Question | Calculate security risks for a given system and develop necessary security measures for mitigation | 0 |
Section 2
Activity Type | Content | Is Graded? |
---|---|---|
Question | What is the difference between reflected XSS and stored XSS? which one is more critical and why? | 1 |
Question | What are the pros and cons of using regex to protect against XSS? | 1 |
Question | what is the Same Origin Policy? and which attack does it mitigate? | 1 |
Question | What is the difference between boolean-based and time-based SQL injection? | 1 |
Question | Vulnerability analysis and exploitation for a given web application | 0 |
Question | Write and deploy WAF rules to mitigate a specific web attack | 0 |
Question | Does the Same Origin Policy apply to the localStorage inside the browser? | 0 |
Section 3
Activity Type | Content | Is Graded? |
---|---|---|
Question | What are the pros and cons of using ASLR? does it affect the performance? | 1 |
Question | What can you do with a format string vulnerability? | 1 |
Question | What is the required information to be able to identify a remote libc version? | 1 |
Question | Why some binaries might have the same address for their functions? what is the security risk of this? | 1 |
Question | Vulnerability analysis and exploitation for a given binary while ASLR is disabled | 0 |
Question | Try to rewrite the following Assembly code in any programming language | 0 |
Question | How can you check if you have ASLR, PIE, NX enabled or not? | 0 |
Question | Decompilers are not always accurate why? how can you improve it? | 0 |
Question | Some binaries are shipped with debugging symbols, How can this help you in debugging? | 0 |
Section 4
Activity Type | Content | Is Graded? |
---|---|---|
Question | What is the difference between VPN and sock5? | 1 |
Question | What are IDS, IPS, and DPI? | 1 |
Question | Why does Nmap produce false-positive when scanning a windows host? can you improve the scanning technique? | 1 |
Question | What is covert channel? what are the most common protocols that are used for covert channel? why? | 1 |
Question | When using a proxy for HTTPS, your browser will always complain about the certificate, how can you solve this issue? | 1 |
Question | No lab for this section | 0 |
Final assessment
Section 1
- As above
Section 2
- As above
Section 3
- As above
Section 4
- As above
The retake exam
Section 1
Section 2
Section 3
Section 4