在Windows server2008中搭建sqli-lab实验环境

注意

搭建本环境所需要的Apache、mysql、php一定要确保他们都是32位或者64位的

下载apache、mysql、php、sqli-lab项目源码

apache下载地址:https://www.apachehaus.com/cgi-bin/download.plx

这里我选择下载的是32位版本的:httpd-2.4.39-o102r-x86-vc14.zip

mysql下载地址:https://dev.mysql.com/downloads/mysql/5.6.html#downloads

这里我选择下载的是32位版本的:mysql-5.6.44-win32.zip

php下载地址:https://windows.php.net/downloads/releases/archives/

这里我选择下载的是32位版本的:php-5.6.37-Win32-VC11-x86.zip

sqli-lab项目地址:https://github.com/Audi-1/sqli-labs

全部下载完成后解压,然后我的目录结构为:

 

配置PHP

打开 C:\www\php-5.6.37-Win32-VC11-x86\ 把其中的 php.ini-development 复制一份并重命名为php.ini并打开

配置第734行左右:

extension_dir = "C:/www/php-5.6.37-Win32-VC11-x86/ext"

配置第900行左右(去掉注释即可):

extension=php_mysql.dll

extension=php_mysqli.dll

配置apache

打开 C:\www\Apache24\conf 目录下的 httpd.conf 文件

配置第38行左右的:

Define SRVROOT "C:/www/Apache24"

第一步配置完成后可以先尝试运行一下服务器,看是否能够运行成功 运行 C:/www/Apache24/bin/httpd.exe 即可

我这里缺少了VCRUNTIME140.dll

解决办法:

        1、官网下载Microsoft.Net.Framework的安装:

        下载地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=49981

        2、安装Visual C++ Redistributable for Visual Studio 2015

        下载地址:https://www.microsoft.com/zh-cn/download/details.aspx?id=48145

        参考文章:https://blog.csdn.net/lh87270202/article/details/80428329

配置第184行左右的:

LoadModule php5_module "C:/www/php-5.6.37-Win32-VC11-x86/php5apache2_4.dll"

PHPIniDir "C:/www/php-5.6.37-Win32-VC11-x86/"

配置第288行左右的:

<IfModule dir_module>

DirectoryIndex index.html index.php

</IfModule>

配置第394行左右的:

<IfModule mime_module>

...

AddType application/x-httpd-php .php

...

</IfModule>

这些配置完毕后可以在 C:\www\Apache24\htdocs 目录下创建一个index.php文件并写入:

<?php
phpinfo();
?>

然后运行 httpd.exe ,在本地浏览器打开 127.0.0.1 如果显示:

则表示配置apache对php的支持成功

配置mysql

打开 C:\www\mysql-5.6.44-win32 中的 my-default.ini 复制一份并重命名为my.ini 按需求配置以下几项即可:

[mysqld]
# 设置3306端口
port=3306
 
# 设置mysql的安装目录
basedir="C:/www/mysql-5.6.44-win32"
 
# 设置mysql数据库的数据的存放目录
datadir="C:/www/mysql-5.6.44-win32/data"
 
# 允许最大连接数
max_connections=200
 
# 允许连接失败的次数。
max_connect_errors=10
 
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
 
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
 
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password

#secure_file_priv = "E:/www/mysql/mysql-5.7.24-win32/backup"
secure_file_priv = 
skip-ssl
 
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
 
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
 
default-character-set=utf8

 配置完成后运行 C:\www\mysql-5.6.44-win32\bin 目录下的mysqld.exe 我这里出现了以下问题:

 

缺少了MSVCR100.dll

下载地址:https://www.microsoft.com/zh-CN/download/details.aspx?id=5555

配置sqli-lab

将解压后的文件复制到 C:\www\Apache24\htdocs

打开sql-connections文件夹下的db-creds.inc文件

<?php
//give your mysql connection username n password
$dbuser ='root';
$dbpass ='toor';
$dbname ="security";
$host = 'localhost';
$dbname1 = "challenges";
?>

 填入自己的mysql数据库密码,mysql默认密码为空

关于如何更改数据库密码:https://www.cnblogs.com/qianzf/p/7089197.html

结束

以上全部配置完毕后,运行httpd、mysqld,在浏览器中输入127.0.0.1,显示如下

点击 Setup/reset Database for labs 初始化数据库

 

OK,恭喜,大功告成!!!

 

 

 

posted @ 2019-05-11 16:34  BxScope  阅读(751)  评论(0编辑  收藏  举报