ITT Technical Institute. CS420 Application Security Onsite Course SYLLABUS

Similar documents
ITT Technical Institute. IT217P Programming in C++ II Onsite Course SYLLABUS

ET225P Networking Concepts [Onsite]

ITT Technical Institute. NT2740 Advanced Networking Devices Onsite and Online Course SYLLABUS

ITT Technical Institute. SD3120T Programming in Open Source with LAMP Onsite and Online Course SYLLABUS

IT109P Microsoft Desktop Operating System [Onsite]

ITT Technical Institute. SD2720 Advanced Software Development Using Java Onsite and Online Course SYLLABUS

ITT Technical Institute. IT302 Linux System Administration Onsite Course SYLLABUS

ITT Technical Institute. CS330 Database Design and Implementation Onsite Course SYLLABUS

ITT Technical Institute. ET4560T C++ Programming Onsite Course SYLLABUS

ITT Technical Institute. SD3440T Creating Websites Using ASP.NET Onsite and Online Course SYLLABUS

ITT Technical Institute. TB143 Introduction to Personal Computers Onsite and Online Course SYLLABUS

ITT Technical Institute. CS120 Programming in Visual Basic Onsite Course SYLLABUS

ITT Technical Institute. SD1420 Introduction to Java Programming Onsite and Online Course SYLLABUS

ITT Technical Institute. IT412 Voice and Data Integration Onsite Course SYLLABUS

ITT Technical Institute. ET376 C/C++ Programming Onsite Course SYLLABUS

ITT Technical Institute. IT203 Database Development Onsite Course SYLLABUS

ITT Technical Institute. PT2520T Database Concepts Onsite Course SYLLABUS

IT221T Microsoft Network Operating System I [Onsite]

ITT Technical Institute. ET2560T Introduction to C Programming Onsite and Online Course SYLLABUS

ITT Technical Institute. SD2520 Introduction to Database and XML with jquery Onsite and Online Course SYLLABUS

ITT Technical Institute. ET3430 Fiber Optic Communications Onsite Course SYLLABUS

ITT Technical Institute. IT321 Network Technology and Service Integration Onsite Course SYLLABUS

ITT Technical Institute. IT371 Advanced Routing and Switching II Onsite Course SYLLABUS

ITT Technical Institute. IT390 Business Database Administration Onsite Course SYLLABUS

ITT Technical Institute. VC130P Digital Type and Image Manipulation Onsite Course SYLLABUS

ITT Technical Institute. GC2630 Graphic Design for the Web Onsite Course SYLLABUS

ITT Technical Institute. ET385 Data and Network Communications Onsite Course SYLLABUS

ITT Technical Institute. ET3110 Networking and Communications Onsite and Online Course SYLLABUS

ITT Technical Institute. SD1240T Creating Websites Using HTML and CSS Onsite and Online Course SYLLABUS

ITT Technical Institute. IT370 Advanced Routing and Switching I Onsite Course SYLLABUS

ITT Technical Institute. SD3240T Creating Websites in the LAMP Environment Onsite and Online Course SYLLABUS

EC423 E-Commerce Technology System Design [Onsite]

ET345P Control Systems [Onsite]

ITT Technical Institute. ET2640 Microprocessors and Microcontrollers Onsite and Online Course SYLLABUS

ITT Technical Institute. DT2630 3D Modeling and Visualization Onsite and Online Course SYLLABUS

ITT Technical Institute. NT1430 Linux Networking Onsite Course SYLLABUS

ITT Technical Institute. VC240T Visual Design for the Web Onsite Course SYLLABUS

ITT Technical Institute. IT360 Networking Security I Onsite Course SYLLABUS

ITT Technical Institute. NT1230T Client-Server Networking I Onsite Course SYLLABUS

ITT Technical Institute. NT2640 IP Networking Onsite Course SYLLABUS

Faculty of Science & Information Technology

HOLY ANGEL UNIVERSITY COLLEGE OF INFORMATION AND COMMUNICATIONS TECHNOLOGY CYBER SECURITY COURSE SYLLABUS

ITT Technical Institute. NT1330 Client-Server Networking II Onsite Course SYLLABUS

IS305 Managing Risk in Information Systems [Onsite and Online]

Standard Course Outline IS 656 Information Systems Security and Assurance

ET285 Digital Electronics II [Onsite]

Oklahoma State University Institute of Technology Face-to-Face Common Syllabus Fall 2017

ITSY 2330 Intrusion Detection Course Syllabus

Network Security

MORGAN STATE UNIVERSITY DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING COURSE SYLLABUS FALL, 2015

San José State University Department of Computer Science CS 166 / SE 166, Information Security, Section 4, spring, 2017

FIT3056 Secure and trusted software systems. Unit Guide. Semester 2, 2010

ITT Technical Institute. NT1310 Physical Networking Onsite Course SYLLABUS

Advisory: Students should have already taken MICROCOMPUTER APPLICATIONS II - 431

Instructor: Eric Rettke Phone: (every few days)

Secure Programming. Course material Introduction. 3 Course material. 4 Contents

Secure Programming. Introduction. Ahmet Burak Can Hacettepe University

ISM 324: Information Systems Security Spring 2014

ITT Technical Institute. IT220T Network Standards and Protocols Onsite Course SYLLABUS

The University of Jordan. Accreditation & Quality Assurance Center. COURSE Syllabus

CUNY John Jay College of Criminal Justice MATH AND COMPUTER SCIENCE

IS316 Fundamentals of Network Security, Firewalls and VPNs [Onsite and Online]

Oklahoma State University Institute of Technology Face-to-Face Common Syllabus Fall 2017

CPS352 Database Systems Syllabus Fall 2012

Hacker Academy Ltd COURSES CATALOGUE. Hacker Academy Ltd. LONDON UK

CSWAE Certified Secure Web Application Engineer

Descriptions for CIS Classes (Fall 2017)

ITT Technical Institute. NT1210 Introduction to Networking Onsite Course SYLLABUS

Del Mar College Master Course Syllabus. UNIX System Administration Course Number: ITSC1358

College of San Mateo Course Outline

San José State University Department of Computer Science CS166, Information Security, Section 1, Fall, 2018

CMN192B OFFICE: An Overview of Access and PowerPoint

This course includes 14 lessons and 5 Course Activities. Each lesson contains one or more Lesson Activities. The lessons cover the following topics:

IT443 Network Security Administration Spring Gabriel Ghinita University of Massachusetts at Boston

Certified Secure Web Application Engineer

Cyber Security CYBER SECURITY

PMP Exam Prep Training - 5 Days

CPS352 - DATABASE SYSTEMS. Professor: Russell C. Bjork Spring semester, Office: KOSC 242 x4377

Undergraduate Course Syllabus

CompTIA Security+ Study Guide (SY0-501)

CASPER COLLEGE COURSE SYLLABUS MSFT 1600 Managing Microsoft Exchange Server 2003 Semester/Year: Fall 2007

City University of Hong Kong. Course Syllabus. offered by Department of Computer Science with effect from Semester B 2016/17

Students should have an understanding and a working knowledge in the following topics, or attend these courses as a pre-requisite:

ITT Technical Institute. SD1420 Introduction to Java Programming Onsite Course SYLLABUS

Course Syllabus - CNT 4703 Design and Implementation of Computer Communication Networks Fall 2011

San José State University Department of Computer Science CS-174, Server-side Web Programming, Section 2, Spring 2018

Syllabus for CIT 442 Information System Security 3 Credit Hours Spring 2015

B. Subject-specific skills B1. Problem solving skills: Supply the student with the ability to solve different problems related to the topics

Web Security Vulnerabilities: Challenges and Solutions

NEW YORK CITY COLLEGE OF TECHNOLOGY COMPUTER SYSTEMS TECHNOLOGY DEPARTMENT CST4714 DATABASE ADMINISTRATION (2 class hours, 2 lab hours, 3 credits)

PELLISSIPPI STATE TECHNICAL COMMUNITY COLLEGE MASTER SYLLABUS CIW JAVASCRIPT FUNDAMENTALS CERTIFICATION WEB 2391

AP Computer Science A

CPTE: Certified Penetration Testing Engineer

Database Security MET CS 674 On-Campus/Blended

Level: M.Ed. Credit Hour: 3 (2+1) Semester: Second Teaching Hour: 80(32+48)

EEL DATA NETWORKS, SYSTEMS, AND SECURITY Fall 2016

Course and Contact Information. Course Description. Course Objectives

CCNA Cybersecurity Operations 1.1 Scope and Sequence

Required Textbook and Materials. Course Objectives. Course Outline

ISO LEAD AUDITOR TRAINING

Transcription:

ITT Technical Institute CS420 Application Security Onsite Course SYLLABUS Credit hours: 4 Contact/Instructional hours: 50 (30 Theory Hours, 20 Lab Hours) Prerequisite(s) and/or Corequisite(s): Prerequisites: CS310 Programming in C++ or equivalent, CS400 Web Services and Applications or equivalent Course Description: This course emphasizes the importance of using safe programming practices by giving students a glimpse into the mind of the attacker. Key security technologies, such as cryptography and authentication are also discussed.

: Application Security Instructor: Office hours: Class hours: Course Description This course emphasizes the importance of using safe programming practices by giving students a glimpse into the mind of the attacker. Key security technologies, such as cryptography and authentication, are also discussed. Major Instructional Areas 1. The need for software security 2. Protection against security breaches in different applications 3. Methods to assess security vulnerabilities 4. Methods to secure authentication, authorization, and privacy Course Objectives 1. Discuss the importance of software security goals. 2. Examine how attackers can discover vulnerabilities in software. 3. Develop strategies to mitigate common attack patterns. 4. Perform a threat analysis as part of risk management. 5. Design a secure authentication strategy for software security. 6. Design a secure authorization strategy for software security. 7. Assess the role of cryptography in application security. 8. Evaluate the risks inherent in client-side code. 9. Assess the risks associated with server-side code. 10. Employ steps to mitigate risks specific to web applications and web services. 11. Evaluate the steps to mitigate overflow attacks. 1 Date: 10/10/2012

Course Outline Note: All graded activities, except the Project, are listed below in the pattern of <Unit Number>.<Assignment Number>. For example, Labs: 2.1 refers to the first lab activity in Unit 2. Unit 1 Software Security Introduction 2 Cryptography 3 Authentication 4 Access Control and Privacy 5 Attack Patterns and Activities Content Covered: Application Security: o Chapter 1, Introduction to Software Security o Chapter 2, Guiding Principles for Software Security o Chapter 3, The Web Is Different Course Project: Start Part 1 Labs: Pre-Lab, 1.1 Assignments: 1.1 o Chapter 4, Cryptography Basics o Chapter 5, Randomness and Determinism Read from Application Security Learning Packet: o Using.NET Framework System.Security.Cryptography classes Quizzes: 2.1 Course Project Part 1: Submit Labs: 2.1 Assignments: 2.1 o Chapter 6, Password Authentication o Chapter 7, Authentication Read from Application Security Learning Packet: o Implementing Authentication in a.net Windows Application o Implementing Authentication in an ASP.NET Application Read from Microsoft SQL Server 2008 for Dummies o Chapter 16, Protecting Your Data from Prying Eyes Quizzes: 3.1 Course Project Part 2: Submit Labs: 3.1 Assignments: 3.1 o Chapter 8, Access Control Read from How to Break Web Software PDF: o Chapter 9, Privacy Read from Application Security Learning Packet: o Limiting Code Access Quizzes: 4.1 Course Project Part 3: Submit Labs: 4.1 Assignments: 4.1 2 Date: 10/10/2012

Unit Activities Auditing Software o Chapter 9, On Open Source and Closed Source o Chapter 10, Auditing Software o Chapter 11, Attack Patterns o Chapter 12, Gathering Information on the Target Quizzes: 5.1 Course Project Part 4: Submit Labs: 5.1 Assignments: 5.1 6 Exploiting Server o Chapter 13, Exploiting Server Software Software Quizzes: 6.1 Course Project Part 5: Submit Labs: 6.1 Assignments: 6.1 7 Database, Web o Chapter 14, Database Security Services, and Web o Chapter 15, Attacking User-Supplied Input Data, Attack 9, Server Security SQL Injection, pp. 388-394 o Chapter 16, Attacking the Server o Chapter 17, Web Services Quizzes: 7.1 Course Project Part 6: Submit Labs: 7.1 Assignments: 7.1 8 Client Software o Chapter 18, Exploiting Client Software o Chapter 19, State-based Attacks o Chapter 15, Attacking User-Supplied Input Data, Attack 8, Cross-Site Scripting and Attack 10, Directory Traversal pp. 380-388 and pp. 394-398 Quizzes: 8.1 Course Project Part 7: Submit Labs: 8.1 Assignments: 8.1 9 Malicious Input o Chapter 20, Crafting (Malicious) Input o Chapter 21, Attacking the Client Quizzes: 9.1 Course Project Part 8: Submit Labs: 9.1 Assignments: 9.1 10 Buffer Overflows o Chapter 22, Buffer Overflows Quizzes: 10.1 Course Project Part 9: Submit Labs: 10.1 Assignments: 10.1 11 Course Review and Course Review 3 Date: 10/10/2012

Unit Activities Final Exam Final Exam Instructional Methods This course takes a good guy/bad guy approach to understanding software security. In other words, to secure software, you must understand both the potential risks and the attack patterns used to exploit software. This course begins by exploring software security principals and technologies, followed by examining how to analyze software during the design and development phase just as attackers analyze the software after deployment. The remainder of the course focuses on recognizing specific attack patterns and exploits and mitigating the risk of your software falling victim to those attacks. The success of the class hinges on active participation through discussion, hands-on labs, and research. You will be given the opportunity to discuss various security issues and to interact with your peers to recognize and define steps to mitigate risk. Homework assignments will consist of paper-based exercises to help you understand software vulnerabilities and the coding practices that can help to avoid those vulnerabilities. Starting with the first unit, you will also perform targeted hands-on labs. These labs provide practice in using specific technologies and in identifying and correcting security problems in code. Finally, you will conduct a research project with incremental submissions throughout the course. The final submission will be due in Unit 10. You will be given topics by your Instructor to research the various technologies and to analyze an application s design to identify potential risks. 4 Date: 10/10/2012

Instructional Materials and References Student Textbook Package Viega, J., McGraw, G., Andrews, M., Whittaker, J. A., Hoglund, G., & McGraw, G. (2009). Application security w/cd (Custom ed.). Boston, MA: Pearson Custom.. Required Reading Resources Application Security Learning Packet (Provided by your instructor) How to Break Web Software PDF: Chapter 9, Privacy, pp. 135-147 (Download from the ITT Tech Virtual Library> School of Study> School of Information Technology> Recommended Links> CS420 Course Materials> How to Break Web Software CH 9) Vieira, Robert. Microsoft SQL Server 2008 for Dummies. Hoboken, NJ; Wiley, 2008. (ITT Tech Virtual Library> Ebrary> Chapter 16, Protecting Your Data from Prying Eyes ) References Log on to the ITT Tech Virtual Library at http://www.library.itt-tech.edu/ to access online books, journals, and other reference resources selected to support ITT Tech curricula. Books You may click Books from the Main Menu or use the Library Catalog function on the home page to find the following books. ITT Tech Virtual Library> Main Menu> Books> Ebrary> Dorrans, Barry. Beginning ASP.NET Security. Hoboken, NJ: Wrox, 2010. Howard, Michael, David LeBlanc, and John Viega. 24 Deadly Sins of Software Security: Programming Flaws and How to Fix Them. Emeryville, CA: McGraw-Hill/Osborne, 2009. Manzuik, Steve. Network Security Assessment: From Vulnerability to Patch. Rockland, MA: Syngrass, 2006 Scambray, Joel. Hacking Exposed Web Applications: Web Application Security Secrets and Solutions. 3 rd ed. New York, NY: McGraw-Hill, 2010 Sethi, Harpreet. Java Security. Cincinnati, OH: Premier Press, 2002. 5 Date: 10/10/2012

Other References The following resources can be found outside of the ITT Tech Virtual Library. Websites Microsoft Developer Network http://msdn2.microsoft.com Oracle Technology Network: Java http://www.oracle.com/technetwork/java/index.html US-CERT: United States Computer Emergency Readiness Team http://www.us-cert.gov All links to web references are always subject to change without prior notice. Course Evaluation and Grading Evaluation Criteria The final grades will be based on the following categories: CATEGORY WEIGHT Assignments 15% Labs 25% Quizzes 20% Course Project 20% Final Exam 20% Total 100% Grade Conversion Table The final grades will be calculated from the percentages earned in the course, as follows: A 90 100% 4.0 B+ 85 89% 3.5 B 80 84% 3.0 C+ 75 79% 2.5 C 70 74% 2.0 D+ 65 69% 1.5 D 60 64% 1.0 F <60% 0.0 (End of ) 6 Date: 10/10/2012