The theory and operation of information security tools and techniques, such as user authentication, access control, SQL injection, and Cross-site scripting, are discussed, and students design and test their applications in a variety of scenarios, such as injecting into SQL and finding vulnerabilities in source code.