Get in Touch

Course Outline

Introduction

Exploring the OWASP Testing Project

  • Core principles of testing
  • Various testing techniques
  • Deriving security test requirements
  • Integrating security tests into development and testing workflows
  • Analysis and reporting of security test data

Working with the OWASP Testing Framework

  • Phase 1: Pre-development
  • Phase 2: Definition and design
  • Phase 3: Development
  • Phase 4: Deployment
  • Phase 5: Maintenance and operations
  • A typical lifecycle testing workflow
  • Penetration testing methodologies

Web Application Security Testing

  • Introduction and objectives
  • Information gathering
  • Conducting search engine discovery and reconnaissance for information leakage
  • Fingerprinting the web server
  • Reviewing web server metafiles for information leakage
  • Enumerating applications on the web server
  • Reviewing webpage content for information leakage
  • Identifying application entry points
  • Mapping execution paths through the application
  • Fingerprinting the web application framework
  • Fingerprinting the web application
  • Mapping the application architecture
  • Configuration and deployment management testing
  • Testing network/infrastructure configuration
  • Testing application platform configuration
  • Testing file extension handling for sensitive information
  • Reviewing old, backup, and unreferenced files for sensitive information
  • Enumerating infrastructure and application admin interfaces
  • Testing HTTP methods
  • Testing HTTP strict transport security
  • Testing RIA cross-domain policy
  • Testing file permissions
  • Testing for subdomain takeover
  • Testing cloud storage security

Identity Management Testing

  • Testing role definitions
  • Testing the user registration process
  • Testing the account provisioning process
  • Testing for account enumeration and guessable user accounts
  • Testing for weak or unenforced username policies

Authentication Testing

  • Testing for credentials transported over encrypted channels
  • Testing for default credentials
  • Testing for weak lockout mechanisms
  • Testing for bypassing authentication schemes
  • Testing for vulnerable 'remember password' features
  • Testing for browser cache weaknesses
  • Testing for weak password policies
  • Testing for weak security question answers
  • Testing for weak password change or reset functionalities
  • Testing for weaker authentication in alternative channels

Authorization Testing

  • Testing directory traversal/file inclusion
  • Testing for bypassing authorization schemes
  • Testing for privilege escalation
  • Testing for insecure direct object references

Session Management Testing

  • Testing session management schemes
  • Testing cookie attributes
  • Testing for session fixation
  • Testing for exposed session variables
  • Testing for cross-site request forgery (CSRF)
  • Testing logout functionality
  • Testing session timeout
  • Testing for session puzzling
  • Testing for session hijacking

Input Validation Testing

  • Testing for reflected cross-site scripting (XSS)
  • Testing for stored cross-site scripting (XSS)
  • Testing for HTTP verb tampering
  • Testing for HTTP parameter pollution
  • Testing for SQL injection
  • Testing for Oracle
  • Testing for MySQL
  • Testing for SQL Server
  • Testing for PostgreSQL
  • Testing for MS Access
  • Testing for NoSQL injection
  • Testing for ORM injection
  • Testing for client-side issues
  • Testing for LDAP injection
  • Testing for XML injection
  • Testing for SSI injection
  • Testing for XPath injection
  • Testing for IMAP/SMTP injection
  • Testing for code injection
  • Testing for local file inclusion
  • Testing for remote file inclusion
  • Testing for command injection
  • Testing for format string injection
  • Testing for incubated vulnerabilities
  • Testing for HTTP splitting/smuggling
  • Testing for HTTP incoming requests
  • Testing for host header injection
  • Testing for server-side template injection
  • Testing for server-side request forgery (SSRF)

Testing for Error Handling

  • Testing for improper error handling
  • Testing for exposed stack traces

Testing for Weak Cryptography

  • Testing for weak Transport Layer Security (TLS)
  • Testing for padding oracle attacks
  • Testing for sensitive information sent via unencrypted channels
  • Testing for weak encryption algorithms

Business Logic Testing

  • Introduction to business logic
  • Testing business logic data validation
  • Testing ability to forge requests
  • Testing integrity checks
  • Testing for process timing issues
  • Testing limits on function usage frequency
  • Testing for circumvention of workflows
  • Testing defenses against application misuse
  • Testing for upload of unexpected file types
  • Testing for upload of malicious files

Client-Side Testing

  • Testing for DOM-based cross-site scripting (XSS)
  • Testing for JavaScript execution
  • Testing for HTML injection
  • Testing for client-side URL redirect issues
  • Testing for CSS injection
  • Testing for client-side resource manipulation
  • Testing cross-origin resource sharing (CORS)
  • Testing for cross-site flashing
  • Testing for clickjacking
  • Testing WebSockets
  • Testing web messaging
  • Testing browser storage
  • Testing for cross-site script inclusion

API Testing

  • Testing GraphQL

Reporting

  • Introduction
  • Executive summary
  • Findings
  • Appendices

Requirements

  • A foundational understanding of the web development lifecycle
  • Practical experience in web application development, security practices, and testing

Target Audience

  • Developers
  • Engineers
  • Architects
 21 Hours

Number of participants


Price per participant

Testimonials (7)

Upcoming Courses

Related Categories