Skill detail
performing-web-application-penetration-test
Performs systematic web application security testing following the OWASP WSTG methodology using Burp Suite and manual techniques.
Inspect before use
Read the source instructions and check the requirements before you install this skill.
SKILL.md
The saved excerpt is a snapshot from when this skill was listed. The external source remains the complete and most current version.
--- name: performing-web-application-penetration-test description: 'Performs systematic security testing of web applications following the OWASP Web Security Testing Guide (WSTG) methodology to identify vulnerabilities in authentication, authorization, input validation, session management, and business logic. The tester uses Burp Suite as the primary interception proxy alongside manual testing techniques to find flaws that automated scanners miss. Activates for requests involving web app pentest, OWASP testing, application security assessment, or web vulnerability testing. ' domain: cybersecurity subdomain: penetration-testing tags: - web-application-pentest - OWASP - Burp-Suite - WSTG - application-security version: 1.0.0 author: mahipal license: Apache-2.0 nist_csf: - ID.RA-01 - ID.RA-06 - GV.OV-02 - DE.AE-07 mitre_attack: - T1595 - T1190 - T1059 - T1078 --- # Performing Web Application Penetration Test ## When to Use - Testing web applications before production deployment to identify exploitable vulnerabilities - Conducting compliance-driven security assessments (PCI-DSS requirement 6.6, SOC 2 Type II) - Validating remediation of previously identified web application vulnerabilities during retesting - Assessing third-party web applications before integration into the organization's environment - Evaluating custom-developed web applications where automated scanning alone is insufficient **Do not use** against web applications without written authorization, against production systems during peak traffic hours without explicit approval, or for denial-of-service testing of web infrastructure. ## Prerequisites - Signed statement of work (SoW) defining the target application URLs, environments (staging/production), and testing boundaries - Burp Suite Professional license with up-to-date extensions (Active Scan++, Autorize, JSON Beautifier, Logger++) - Valid test accounts at each privilege level (unauthenticated, standard user, administrator) for authorization testing - Application documentation including API specifications (OpenAPI/Swagger), sitemap, and technology stack details - Browser configured with Burp Suite proxy (FoxyProxy recommended) and Burp CA certificate installed ## Workflow ### Step 1: Reconnaissance and Application Mapping Map the entire attack surface of the web application: - Configure Burp Suite proxy and spider the application by browsing every page, form, and function manually while Burp captures the sitemap - Use Burp's Discover Content feature to find hidden directories and files not linked from the visible application - Identify the technology stack from response headers (`X-Powered-By`, `Server`), cookies (JSESSIONID = Java, PHPSESSID = PHP, ASP.NET_SessionId = .NET), and page extensions - Enumerate endpoints using `ffuf -w /usr/share/seclists/Discovery/Web-Content/directory-list-2.3-medium.txt -u https://target.com/FUZZ -mc 200,301,302,403` - Review JavaScript files for hardcoded API endpoints, secrets, and client-side routing using Burp's JS Link Finder extension or `LinkFinder.py` - Document all entry points: URL parameters, POST bodies, HTTP headers, cookies, file uploads, and WebSocket connections ### Step 2: Authentication Testing Test authentication mechanisms for weaknesses: - **Credential enumeration**: Submit valid and invalid usernames to identify differences in response (timing, message, HTTP status) that reveal valid accounts - **Brute force protection**: Attempt 10-20 rapid login attempts with invalid credentials to verify account lockout and rate limiting are enforced - **Password policy**: Test password creation with weak passwords (123456, password, single character) to verify policy enforcement - **Multi-factor authentication bypass**: Test for MFA bypass by directly accessing post-authentication pages, manipulating MFA tokens, or replaying successful MFA responses - **Session fixation**: Note the session token before and after authentication. If the token doeRead the full source on GitHub (opens external page)