📄️ Lab 1 - WHERE Clause Injection
Learn how to exploit a SQL injection vulnerability in a product filter using WHERE clause manipulation to retrieve hidden and unreleased items.
📄️ Lab 2 - Login Bypass
Step-by-step guide to exploit a SQL Injection vulnerability in a login function to bypass authentication and access the administrator account in PortSwigger's Web Security lab.
📄️ Lab 3 - UNION Column Discovery
PortSwigger SQL Injection lab writeup demonstrating how to determine the number of columns returned using a UNION-based SQLi attack.
📄️ Lab 4 - Find Column Containing Text
Learn how to perform a SQL injection UNION attack to identify which column in the SQL query is compatible with string data. Step-by-step lab walkthrough with payloads and screenshots.
📄️ Lab 5 - Retrieve Data from Other Tables
Learn how to exploit a SQL Injection UNION attack to extract usernames and passwords from a different table in this PortSwigger lab walkthrough.
📄️ Lab 6 - UNION with Single Column
Learn how to exploit a UNION-based SQL injection vulnerability to retrieve multiple values within a single column from a users table, bypassing SQL constraints.
📄️ Lab 7 - Oracle Version Extraction
Learn how to exploit a UNION-based SQL injection vulnerability to extract the Oracle database version by injecting payloads in a vulnerable filter parameter.
📄️ Lab 8 - MySQL & MSSQL Version Extraction
Exploit a UNION-based SQL injection vulnerability to retrieve the database version on a MySQL or Microsoft SQL Server using crafted payloads targeting the category filter.
📄️ Lab 9 - List Non-Oracle Database Contents
Learn how to exploit a UNION-based SQL injection vulnerability to enumerate tables, columns, and extract sensitive user credentials from a non-Oracle database.
📄️ Lab 10 - List Oracle DB Contents
Exploit a UNION-based SQL injection vulnerability to enumerate Oracle database tables and columns and extract user credentials in this PortSwigger lab.
📄️ Lab 11 - Blind SQLi Conditional Responses
Step-by-step walkthrough of the PortSwigger lab on Blind SQL Injection with Conditional Responses, including payload crafting, vulnerability confirmation, and password extraction using Turbo Intruder.
📄️ Lab 12 - Blind SQLi with Conditional Errors
Step-by-step walkthrough of the PortSwigger lab on blind SQL injection vulnerability using conditional errors to extract database information from a vulnerable tracking cookie parameter.
📄️ Lab 13 - Visible Error-Based SQLi
Step-by-step PortSwigger lab writeup demonstrating how to exploit a visible error-based SQL injection in the tracking cookie to extract administrator password and log in.
📄️ Lab 14 - Blind SQLi with Time Delays
Step-by-step PortSwigger lab writeup demonstrating how to exploit a blind SQL injection with time delays in the TrackingId cookie using PostgreSQL pg_sleep function.
📄️ Lab 15 - Time-based Blind SQLi Info Retrieval
Step-by-step PortSwigger lab writeup demonstrating exploitation of blind SQL injection with time delays in TrackingId cookie to extract administrator password from users table and gain access.