💉SQLMap

Automatic SQL Injection and Database Takeover Tool

📋 Overview

SQLMap adalah open-source penetration testing tool yang mengotomasi proses pendeteksian dan eksploitasi SQL injection vulnerabilities. Dikembangkan untuk mengidentifikasi dan memanfaatkan kerentanan SQL injection dalam berbagai jenis database.

🎯 Key Features

🔍 SQL Injection Detection

  • Boolean-based Blind - AND/OR conditional queries

  • Time-based Blind - Delay-based detection

  • Error-based - Database error message extraction

  • Union Query - SQL UNION injection

  • Stacked Queries - Multiple statement execution

  • Second Order - Stored procedure injection

🗄️ Database Support

  • MySQL, MariaDB, PerconaDB

  • PostgreSQL, Oracle, Microsoft SQL Server

  • SQLite, Microsoft Access, IBM DB2

  • SAP MaxDB, HSQLDB, Informix

  • Firebird, Sybase, MemSQL

🔧 Advanced Features

  • Database Fingerprinting - Automatic DBMS identification

  • Privilege Escalation - User privilege detection

  • File System Access - Read/write files on server

  • Command Execution - OS command injection

  • Password Hashing - Extract and crack passwords

  • Out-of-Band - DNS/HTTP-based data exfiltration

🛡️ Evasion Techniques

  • Randomization - Random user agents, headers

  • Encoding - Multiple encoding methods

  • Comments - SQL comment injection

  • Case Variation - Mixed case keywords

  • Whitespace - Various whitespace combinations

🚀 Installation

Linux Installation

Windows Installation

macOS Installation

Docker Installation

🔧 Basic Usage

Command Structure

Common Commands

🎯 Attack Modes

Automatic Detection

Specific Injection Techniques

📊 Database Enumeration

Database Discovery

Table and Column Enumeration

Data Extraction

🔧 Advanced Techniques

Custom Injection

File Operations

Evasion Techniques

🔗 Request Manipulation

POST Data Testing

HTTP Headers

Request from File

📈 Optimization and Tuning

Performance Settings

Risk and Level Settings

Batch Mode

🔧 Tamper Scripts

Built-in Tamper Scripts

Custom Tamper Scripts

🔍 Authentication and Session

Authentication Bypass

📊 Output and Reporting

Output Formats

Logging and Monitoring

🔧 Database Specific Options

MySQL Specific

PostgreSQL Specific

SQL Server Specific

🔗 API and Automation

REST API Testing

Automation Scripts

🎓 Learning Resources

Official Documentation

Practice Resources

  • SQLi Labs - Practice SQL injection environment

  • PortSwigger Web Security Academy - Free SQL injection training

  • OWASP WebGoat - Vulnerable web application

  • Damn Vulnerable Web Application (DVWA) - Practice environment

Tutorials and Guides

📈 Comparison with Other Tools

Feature
SQLMap
SQLninja
BSQLHunter
Pangolin

Database Support

12+

Limited

Limited

20+

Automation

GUI

Tamper Scripts

OS Shell

File Access

Learning Curve

📚 Easy

📚 Medium

📚 Easy

📚 Easy

🔧 Troubleshooting

Common Issues

Debug Mode

  • Authorization: Only test systems you own or have permission

  • Scope: Stay within defined testing boundaries

  • Documentation: Keep records of all testing activities

  • Reporting: Report vulnerabilities responsibly

Ethical Guidelines

  • Data Protection: Avoid accessing sensitive personal data

  • System Impact: Minimize impact on target systems

  • Disclosure: Follow responsible disclosure practices

  • Privacy: Respect privacy and confidentiality

Best Practices

  • Safe Testing: Use test environments whenever possible

  • Rate Limiting: Avoid overwhelming target systems

  • Logging: Keep detailed logs of all activities

  • Cleanup: Remove any temporary files or backdoors


⚠️ Legal Notice: SQLMap should only be used on systems you own or have explicit permission to test. Unauthorized SQL injection testing is illegal and can cause serious damage.

⚡ Pro Tip: Always start with the lowest risk level and gradually increase. Use the --batch option for automated testing but review results manually to avoid false positives.

📅 Last Updated: 2024

Last updated