| Length of Class | 5 days |
| Audience | Security Administrators, Security Auditors, Security Consultants, Helpdesk and Support Personnel |
| Objective | This course aims to teach students how to gather information and attack a web-based application using a variety of tools using the same methodology as an external hacker. |
| Summary | This course focuses on security issues involved with web applications and e-commerce implementations. It teaches students how to secure distributed applications by walking through actual vulnerable application exploitations. Students use hands-on examples of hacking tools to exploit vulnerabilities in networks as well as web applications. The course covers major security principles; general programming vulnerabilities; and ASP, ASP.NET, and J2EE specific security issues in web applications. |
| Description |
For many years, information security has focused its effort on securing the network from attackers. The current situation is that the vast majority of attacks now occur at the application layer, many passing over port 80 as legitimate HTTP data. Security staff, auditors, and support/helpdesk personnel must now effectively understand the threat to applications in order to fulfill their job responsibilities. While students learn the basics on how to defend applications properly, the focus of this class is on how to successfully execute attacks. Armed with this knowledge, students are able to effectively assess the security of their organizations' applications. Much like our secure coding classes, Security Compass instructors have taught the Exploiting Web Application class for several years and we constantly receive positive feedback from former students. The first section of the course is a comprehensive review of infrastructure basics; this review ensures that the entire class has the requisite background knowledge to use the tools and techniques performed throughout the rest of the class. Students then learn topics in the same order as an attack: gather information, break into servers, and then break into the application. Instructors present a variety of tools to gather information, including fingerprinting, mirroring, host scanning, vulnerability scanning, and web search engine attacks (a.k.a. "Google Hacking"). Using this information, students perform hands on exercises to break into a server and prepare for the next phase of an attack. The next few sections cover how to expose vulnerabilities in the major sections of application security: authentication, authorization & access control, session management, cryptography, logging/monitoring & error handling, input validation, buffer overflow, C & C++ issues, and xml & web services. Each section includes hands-on labs so that students practice performing the attacks first hand. Next students learn basics of reverse engineering - the powerful tool attackers use to understand an application's logic. Finally, the class covers the hacker tools of backdoors and root kits. Each section includes a quiz so that students have a chance to review the material and clarify and misunderstandings. |
| Requisite Knowledge | Basic knowledge of networking and web applications |
| Curriculum |
Part 1: Infrastructure basics
|
SC_06: Exploiting Web Applications
