
Explore how sql injection vulnerabilities arise from user input and concatenated queries, demonstrate tautologies and piggybacking attacks, and learn robust mitigations using prepared statements and input sanitization.
Explore how command injection allows injecting and executing arbitrary commands on a server, bypassing input filters with semicolon, pipes, or %s, to reveal data and enable reverse shells.
Explore how broken authentication enables attackers through credential stuffing, brute force, and weak recovery, and learn effective mitigations like multi-factor authentication, strong passwords, and server-side session management.
Explore how sensitive data exposure arises from error messages, log file leaks, and plain text transmissions, and learn to mitigate by using custom errors, hashing and salting passwords, and encryption.
Learn to identify and exploit xml external entities (xxe) vulnerabilities, including password file leakage and ssrf via burp suite, and apply fixes using whitelisting and safer parsers in real apps.
Explore how broken access control enables privilege escalation through primary key manipulation, API misconfigurations, and token or cookie tampering, and learn server-side verification, logging, and default deny strategies.
Identify and patch security misconfigurations through consistent hardening and minimal attack surface. Establish repeatable update processes, remove unused software, and shield against regressions with test cases.
Explore how cross site scripting attacks exploit user input to execute code in web pages, including reflected, stored, and dom-based variants, and learn to sanitize inputs to prevent it.
Explore insecure deserialization, where tampered serialized objects enable privilege escalation, remote code execution, or information disclosure. Learn server-side validation and input verification to mitigate risks, with cookies and firewall considerations.
Explore the OWASP top 10 vulnerability of using components with known vulnerabilities, learn to read CV details and scores, and prioritize patching outdated open-source software.
The purpose of this course is to provide students with a fundamental understanding of computer security, through the study of the top 10 most common security vulnerabilities, as provided by OWASP.
By the end of this course, students will have enough of an understanding to make design choices that preserve the security of the applications they own. This course can also serve as a way to gain foundations required to proceed to more advanced security topics.