看书本上的说明,本想很快结束,没想到耗时近6个小时,跳了一堆的坑,总算搭建成功。赶紧记录下,供需要的新手参考。血泪史告诉我们:尽信书则不如无书。
测试系统kali的版本如下。
如果着急搭环境,第一章折腾的记录经过就不用看了,直接去看第二章节。
一、根据《Web 安全攻防 渗透测试实战指南》的部署尝试
首先在kali Linux安装LANMP(号称一键安装,没想到N键之后还是用不了)
问题记录如下:
在kali linux环境安装LANMP,使用命令下载LANMP
wget http://dl.wdlinux.cn/files/lanmp_v3.tar.gz
下载后解压
tar zxvf lamp_v3.tar.gz
问题一: 输入lamp.sh执行sh lanmp.sh显示
报错原因是因为系统的dash兼容性不好,而编译常用的就是bash,所以输入:
sudo dpkg-reconfigure dash
修改系统编辑器(shell)的操作。
选择NO选项后,即可执行sudo sh lanmp.sh进行继续安装
问题二:报错:cmake:未找到命令
问题:执行 sh lanmp.sh命令后报错
root@kali:~# sh lanmp.sh
lib/mysql.sh:行13: cmake:未找到命令
x86_64----Install Error: mysql configure err
解决方法:
root@kali:~# wget https://github.com/Kitware/CMake/releases/download/v3.13.2/cmake-3.13.2.tar.gz #下载文件
root@kali:~# tar xzvf cmake-3.13.2.tar.gz -C /usr/bin #解压你想指定的目录后面填写目录路径就好 例如:-C /usr/bin
root@kali:~# /usr/bin/cmake-3.13.2 #进入指定目录
root@kali:~#./bootstrap && make &&make install #安装文件
root@kali:~# cmake -version #查看版本信息
cmake version3.13.2CMake suite maintained and supported by Kitware (kitware.com/cmake).
问题三报错:configure: error: xml2-config not found. Please check your libxml2 installation.
root@kali:~# sh lanmp.sh
checking libxml2 install dir.../usr
checkingfor xml2-config path...
configure: error: xml2-config not found. Please check your libxml2 installation.
x86_64----Install Error: php configure err
解决方法:
root@kali:~# apt install libxml2
root@kali:~# apt install libxml2-dev
问题四报错:configure: error: Please reinstall the libcurl distribution -easy.h should be in /include/curl/
root@kali:~# sh lanmp.sh
checkingfor cURL in defaultpath... not found
configure: error: Please reinstall the libcurl distribution-easy.h should bein /include/curl/x86_64----Install Error: php configure err
解决方法:
root@kali:~# apt-getinstall curl
root@kali:~# apt-get install libcurl4-gnutls-dev
root@kali:~# apt-get install php-curl
到安装Apache的环节,提示缺少Crypto组件。
一查资料才知道,原来Kali里面Apache2、php、mysql(mariadb)都已有,不需要再折腾安装了。
二、搭建DVWA环境
1. 首先去github上下载DVWA的安装包,网址为:https://github.com/ethicalhack3r/DVWA
git clone https://github.com/ethicalhack3r/DVWA.git
如果访问速度过慢,报GnuTLS recv error (-54): Error in the pull function.
建议修改为
git clone git://github.com/ethicalhack3r/DVWA.git
2. 将下载好的压缩包解压并改名为dvwa,然后将其复制到 /var/www/html 文件夹中
复制文件到这个目录的原因是要通过apache发布网站
mv DVWA /var/www/html
mv /var/www/html/DVWA /var/www/html/dvwa
到dvwa → config目录 ,将config.inc.php.dist的dist后缀去掉
cp config.inc.php.dist config.inc.php
3. 将apache2停止:service apache2 stop
给dvwa文件夹相应的权限:
chmod -R 755 /var/www/html/dvwa
4. 启动mysql服务
service mysql start
打开mysql
mysql -u root -p
如果登录有问题,重新安装mariadb。这一步卡了很长时间,一直提示数据库无法连接。实在没办法,重装后竟然好了。
apt-get install mariadb-client
apt-get install mariadb-server
systemctl enable mysql
服务是否正常,通过netstat 命令来检测。
5. 创建数据库
下来是关键一步。mariadb新版本默认不能使用root连接数据库,所以得创建新的数据库dvwa,创建新的授权连接数据库的用户dvwa,设定登录密码为dvwa。
create user 'dvwa'@'localhost' identified by 'dvwa'; #创建用户名
grant all on *.* to 'dvwa'@'localhost'; #赋权
set password for 'dvwa'@'localhost' = password('dvwa'); #设置密码
exit #退出mysql
6. 打开config.inc.php,修改dvwa的配置
相应的配置项与步骤5中的设置保持一致。重新启动apache2。
service apache2 restart
7. 打开浏览器访问127.0.0.1/dvwa
点击“Create / Reset Database”。
默认用户名密码是admin:password。
环境终于搭建完成。
三、搭建Sqli-labs环境
有了第二步的尝试,后续就轻松多了。
1. 下载Sqli-labs
cd /var/www/html
git clone https://github.com/mukkul007/sqli-labs-kali2 sqli-labs
注意:kali中自带的PHP版本在7.0以上,无法直接使用一般版本的Sqli-labs,必须用这个版本的才行,安装之后无需对MySQL函数进行逐一改正
2. mysql中创建security数据库,创建相应的用户名、密码
mysql -u root -p
create database security; #建库
use security; #切换
source /var/www/html/sqli-labs/sql-lab.sql #执行创建语句
create user 'sqllab'@'localhost' identified by 'security'; #创建用户
set password for 'sqllab'@'localhost' = password('sqllab');#设定密码
grant all on *.* to 'sqllab'@'localhost'; #授权
exit
3.修改sqli-lab的配置文件
/var/www/html/sqli-labs/sql-connections中修改配置
vi db-creds.inc
4. 重新启动apache2
service apache2 restart
5. 浏览器: 127.0.0.1/sqli-base/
点击“setup/reset Database for labs”
部署成功。
---------------------------------------------------------
四、通关攻略
4.1 DVWA通关攻略:
4.2 sqli-labs通关攻略: