DVWA平台搭建+SQL注入实验详解

本文详细介绍了如何搭建DVWA平台,用于模拟SQL注入的练习环境。首先通过phpStudy安装DVWA,然后配置数据库,启动服务。接着,逐步分析SQL注入的概念,通过调整DVWA安全级别至低级,进行SQL注入的实践。通过注入点的判断和类型识别,演示了如何识别和利用字符型和数字型的SQL注入漏洞。最后,展示了如何通过注入获取数据库信息,包括数据库名、表名及字段名,并进行了密码的爆破与解密。

实现1: 实现DVWA平台的搭建,为后续的SQL注入提供练习环境;

实现2:
进行SQL注入的练习,目的是了解因web应用程序对用户输入数据的合法性没有判断或过滤不严,而造成的危害,以便后续更好地掌握对其的防御手段,提高网络安全意识;

一、搭建DVWA平台

1、下载phpstudy安装包

(注意:如果已经安装了数据库,需要注意端口冲突问题)

phpStudy 是一个PHP调试环境的程序集成包。

该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境。该程序不仅包括PHP调试环境,还包括了开发工具、开发手册等。

下载phpstudy安装包并一键安装,记住安装路径,我是安装到C盘的根目录下

1675130300_63d875bc7a0b6f2dae200.png!small?1675130300448

2、下载DVWA安装包

DVWA 全称为Damn Vulnerable Web
Application,意为存在糟糕漏洞的web应用。它是一个基于PHP/MySQL开发的存在糟糕漏洞的web应用,旨在为专业的安全人员提供一个合法的环境,来测试他们的工具和技能。

DVWA的安全特性分为两个部分:一是漏洞的安全级别;二是PHP-IDS入侵检测。

漏洞的安全等级分为低级、中级和高级。 每个级别都会改变
DVWA中所有漏洞的利用难度,初始加载时默认所有漏洞安全等级为高级,以下是每个安全级别及其用途的说明。

  • 高级 - 此级别旨在为用户提供良好编码实践的示例。这个级别应该保护所有漏洞的安全,它用于将易受攻击的源代码与安全源代码进行比较。
  • 中级 -
    此级别主要是为用户提供糟糕的编程实践示例。开发者对程序的安全性进行了一定的保护但是仍有可被利用的漏洞,这为改进用户漏洞利用技巧提供了挑战。
  • 低级 - 此级别是完全易受攻击的,并且没有做任何安全防护。它的作用是展示不良编程实践是如何导致 Web
    应用程序漏洞的,并用作教授或学习漏洞基本利用技术的平台。

在DVWA官网下载DWVA压缩包DVWA-master.zip

3、安装DVWA安装包

1)解压安装包

解压压缩包DVWA-master.zip,把解压后的文件DVWA-master文件,放在phpstudy的安装目录下面–
C:\phpstudy_pro\WWW文件夹下

1675131021_63d8788d98634e7e82847.png!small

2)修改配置文件

找到DVWA-
master文件夹下的config文件夹里面的数据库配置文件“config.inc.php.dist”,改名为“config.inc.php”,再以记事本的方式打开,
修改数据库的用户名和密码、端口号 ,并保存:

$_DVWA[ ‘db_user’ ] = ‘root’;

$_DVWA[ ‘db_password’ ] = ‘root’;

$_DVWA[ ‘db_port’ ] = ‘3306’

1675131340_63d879cc23cca484a7834.png!small?1675131340284

1675131372_63d879ecaaff963a9d323.png!small?16751313726351675131389_63d879fd2068e3a3eb319.png!small?1675131389320

4、启动phpstudy

1675131485_63d87a5d9b759a3d0feba.png!small?1675131485760

5、初次登录DVWA平台

初次登录 http://127.0.0.1/DVWA-master/index.php

1)创建数据库

点击下方的“Create/Reset Database”按钮

1675134028_63d8844c0dd727fbfdc31.png!small?1675134028249

如果没问题的话,会反馈“成功创建”的结果提示

1675134105_63d88499e70fa9114b35b.png!small?1675134105882

2)登录DVWA平台

会自动跳转到DVWA登录界面(或者手动点击login),会跳转到 <http://127.0.0.1/DVWA-
master/login.php>界面(再次打开登录页面也是输入该网址),输入DVWA账号和密码后即可进入DVWA。

登录名:admin

密码:password

1675134317_63d8856d734b84de21afa.png!small?1675134317663

二、SQL注入( SQL Injection)

SQL注入
即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。

SQL 是操作数据库数据的结构化查询语言,网页的应用数据和后台数据库中的数据进行交互时会采用SQL。而 SQL注入
是将Web页面的原URL、表单域或数据包输入的参数,修改拼接成SQL语句,传递给Web服务器,进而传给数据库服务器以执行数据库命令。

**1、调整网站安全级别 **

进入DVWA平台后,先在“DVWA Security”中,调整平台安全等级为 “low”-低级
,并确认,此级别是完全易受攻击的,并且没有做任何安全防护。它的作用是展示不良编程实践是如何导致 Web
应用程序漏洞的,并用作教授或学习漏洞基本利用技术的平台。

1675136304_63d88d3047a44a784e38f.png!small?1675136305163

1675159048_63d8e6089254a290736d4.png!small?1675159048271

2、 查看页面的传递方式, set 方法还是 get 方法?

知识点: 注入点类型(页面的传递方式)包括:①get型:使用URL框注入 ②post型:使用输入框注入
③cookie型等等,有多种注入点的类型,所以我们需要进行判断查看一下,它是属于哪种传递方式

输入1,

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值