【实训04】数据库SQL注入漏洞

目录

第1关:获取dvwa环境

相关知识

1.LAMP和dvwa和简介

 2. Linux版本查看

 3. 安装appach

 4.安装php

 5.安装mysql(每次的安装过程有点久,请耐心等待)

 6.安装dvwa

 第2关:获取数据库名称、账户名、版本及操作系统信息

第3关:获取数据库表名、列名

测试说明

答案为将guestbook users写入/data/workspace/myshixun/result3中

第4关:获取用户名密码,并猜测root用户

最后查询得到的密码为password,将其写入/data/workspace/myshixun/result4中就行了.


第1关:获取dvwa环境

任务描述

搭建dvwa环境,包括1、搭建LAMP服务;2、部署dvwa服务;3、访问dvwa主页。

相关知识

为了完成本关任务,你需要掌握:

  1. 如何在linux环境中安装LAMP服务
  2. 部署dvwa服务。
  3. 了解dvwa相关功能

1.LAMP和dvwa和简介

LAMP:LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。

  • L:Linux,操作系统
  • A:Apache网页服务器
  • M:MySQL,数据库管理软件
  • P:PHP,脚本语言

DVWA(Damn Vulnerable Web Application)是一个用来进行安全脆弱性鉴定的PHP/MySQL Web应用,旨在为安全专业人员测试自己的专业技能和工具提供合法的环境,帮助web开发者更好的理解web应用安全防范的过程。

 

 2. Linux版本查看

实验系统的环境为linux Ubuntu16.04环境

cat /etc/issue

 3. 安装appach

首先更新源

apt update

安装apache2

apt install apache2 -y 

启动apache2

service apache2 start

 查看apache2服务是否运行

netstat -antp | grep apache2

浏览器访问127.0.0.1,查看apache2是否正常运行 

 4.安装php

更新源,安装php

 apt install php -y

安装常用模块 

apt install php-pear php-fpm php-dev php-zip php-curl php-xmlrpc php-gd php-mysql php-mbstring php-xml libapache2-mod-php 

查看php版本 

php -v 

 测试php脚本是否能够在apache正常执行,在网站根目录 /tmp/www/ 下创建 index.php。phpinfo()函数通常用于打印 php 的配置信息。

  1. <?php phpinfo();?>

 先重启apache2后再访问127.0.0.1/index.php,能够查看php配置信息表示php安装完成

service apache2 restart 

修改apache配置文件 

$ sudo vim /etc/php/7.0/apache2/php.ini
#allow_url_include = Off
allow_url_include = On     # 设置为On

 5.安装mysql(每次的安装过程有点久,请耐心等待)

安装mysql

apt install mysql-server -y 

启动mysql服务 

service mysql start 

测试数据库是否安装成功,使用root登录数据库。由于是root权限不需要密码 

mysql -u root 

 mysql安全配置初始化

 mysql_secure_installation

Y为root用户添加密码插件 

方便实验选择密码强度0 

输入密码dvwa123456 

移除匿名用户

 禁止root远程登录

移除test数据库

刷新权限表 

 为dvwa创建数据库

create database dvwa;

 6.安装dvwa

切换到/var/www/html目录并下载dvwa

 git clone GitHub - digininja/DVWA: Damn Vulnerable Web Application (DVWA)

修改配置文件 

$ cd /var/www/html/DVWA/config
$ cp config.inc.php.dist config.inc.php
$ vim config.inc.php
...
$_DVWA[ 'db_user' ]     = 'root';
$_DVWA[ 'db_password' ] = 'dvwa123456';
$_DVWA[ 'recaptcha_public_key' ] = '6LdJJlUUAAAAAH1Q6cTpZRQ2Ah8VpyzhnffD0mBb';
$_DVWA[ 'recaptcha_private_key' ] = '6LdJJlUUAAAAAM2a3HrgzLczqdYp4g05EqDs-W4K';

 给文件夹赋予权限

$ sudo chmod 777 -R /var/www/html/DVWA/hackable/uploads/
$ sudo chmod 777 /var/www/html/DVWA/external/phpids/0.6/lib/IDS/tmp/phpids_log.txt
$ sudo chmod 777 -R  /var/www/html/DVWA/config

写到这里,就可以评测了

 第2关:获取数据库名称、账户名、版本及操作系统信息

第二关我也是按着他的步骤一步步走,我就不列举步骤了,最后

cd /data/workspace/myshixun/result2

查询数据库用户名和数据库名分别为root@localhost dvwa

将其写入/data/workspace/myshixun/result2即可

linux怎么修改文件内容-linux运维-PHP中文网(还不会修改文件内容的朋友点击这个链接)

第3关:获取数据库表名、列名

只需要第一关的配置做好了,然后按照要求一步步来就行,这里就不做过多赘述了

测试说明

使用sql注入查询dvwa数据库的所有表名,并将所有表明写入/data/workspace/myshixun/result3中

答案为将guestbook users写入/data/workspace/myshixun/result3中

第4关:获取用户名密码,并猜测root用户

只需要第一关的配置做好了,然后按照要求一步步来就行,这里就不做过多赘述了.

使用sql注入查询user表中管理员的密码,并将解密密码/data/workspace/myshixun/result4中

最后查询得到的密码为password,将其写入/data/workspace/myshixun/result4中就行了.

祝你好运!

 最后,近段时间不会发布博客了,在准备教资考试.

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值