Overview
This lecture introduces the Web Application Pentesting learning path on TryHackMe, covering essential skills and attack types for web application security assessments.
Learning Path Overview
- Focuses on identifying web application vulnerabilities and performing security assessments.
- Consists of 5 modules with 29 hands-on labs at an intermediate difficulty level.
- Completing the path earns a certificate of completion.
Core Topics Covered
- Common web vulnerabilities and their exploitation.
- Web authentication mechanisms and related attacks.
- Server- and client-side exploit techniques.
- Remediation and defense strategies for vulnerabilities.
Section 1: Authentication
- Learn enumeration and brute-force techniques against web authentication.
- Study session management and security of session tokens.
- Explore JSON Web Token (JWT) security concepts and vulnerabilities.
- Examine OAuth protocol weaknesses.
- Understand multi-factor authentication (MFA) and its security benefits.
- Investigate custom authentication challenges (Hammer).
Section 2: Injection Attacks
- Covers advanced SQL injection and NoSQL injection techniques.
- Examines XML External Entity (XXE) injection and server-side template injection.
- Explores LDAP and ORM injection vulnerabilities.
- Practical injection practice in the Injectics module.
Section 3: Advanced Server-Side Attacks
- Understand insecure deserialization vulnerabilities.
- Learn about Server-Side Request Forgery (SSRF) and file/path inclusion.
- Explore race conditions and prototype pollution attacks.
- Additional server-side exploitation in the Include module.
Section 4: Advanced Client-Side Attacks
- Study cross-site scripting (XSS) and cross-site request forgery (CSRF).
- Learn about DOM-based attacks and issues with CORS and same-origin policy (SOP).
- Practice client-side exploits in practical exercises.
Section 5: HTTP Request Smuggling
- Understand classic and HTTP/2 request smuggling attacks.
- Examine WebSockets request smuggling and HTTP browser desync techniques.
- Apply knowledge in various hands-on labs including El Bandito.
Key Terms & Definitions
- Web Application Pentesting β Assessing web apps for security weaknesses and exploitation opportunities.
- Authentication β Verifying user identity in web applications.
- Injection Attack β Exploiting input vulnerabilities to manipulate queries or data.
- Server-Side Attack β Attacks targeting backend processing mechanisms.
- Client-Side Attack β Exploits affecting user-facing scripts or browsers.
- HTTP Request Smuggling β Manipulating HTTP request parsing to exploit communication between proxy and web servers.
Action Items / Next Steps
- Enroll in the TryHackMe Web Application Pentesting path.
- Complete the associated hands-on labs in each topic section.
- Review definitions and make notes on attack types and remediation strategies.