sqli-labs平台搭建
坑贼多。
其实github上有docker一键搭建,但是不太推荐这样学习,首先看不了源代码,其次vulstudy那个对与我来说刚开始挺好用久了我电脑挺卡的。
搭建平台Ubuntu18.04.1+apache2.4.29+php7.2+mysql5.7.29
1、安装环境
sudo apt-get install apache2 //下载apache
sudo apt-get install php7.2 //2019.7.23现在下载的都是php7.2
sudo apt-get install mysql-server //下载mysql
sudo apt-get install libapache2-mod-php* //php与apache2关联,这儿有两个我*全下了
sudo apt-get install php-mysql //mysql与php关联
2、apache2解析php环境设置
直接下来apache并不能直接解析php还需要进行设置
说实话网上很多写得很好的方法我试了都不行,可能遇到的问题不同,我是全部重新安装,而且之前也没动过任何关于apache和php的操作。我就我自己的方法做个记录。
编辑apache2.conf文件 sudo nano /etc/apache2/apache2.conf,添加如下
AddType application/x-httpd-php .php
DirectoryIndex index.php index.htm index.html
为保险再一次启动php7.2 和apache2
sudo a2enmod php7.2
sudo systemctl restart apache2
创建/var/www/html/test.php文件
sudo nano /var/www/html/test.php
<?php
phpinfo();
?>
ctrl+x 保存
打开浏览器输入ip/test.php出现php信息内容证明解析成功
3、设置mysql环境
sqli-labs需要用到mysql环境,因此需要先设置mysql
安装最新版本的mysql,root密码是随机的并不能登录,需要重新设置
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
//最后添加 skip-grant-tables 保存退出,这个是跳过输入密码
mysql -u root -p //输入密码直接Enter即可
select user, plugin from mysql.user; //查看plugin的值,看下root的plugin是不是本地的
update mysql.user set authentication_string=PASSWORD('123'),plugin='mysql_native_password' where user='root'; //把密码123改成你自己的密码
quit; //退出
最后记得把skip-grant-tables注释掉
service mysql restart //重启服务
4、设置sqli-labs
https://github.com/skyblueee/sqli-labs-php7
下载php7的sqli-labs,原作者的是php5的已经不能用了,感谢修改的作者。
将文件保存到/var/www/html
修改sqli-labs文件夹中,sql-connections文件夹下的db-creds.inc文件,将用户名dbuser
和密码dbpass
改成自己新设置的。root 和你刚刚设置的mysql的密码.
之后运行setup-db.php
sudo php setup-db.php
浏览器输入ip/sqli-labs-php7/index.html即可打开,点击Setup/reset Database for labs链接,来重新设置数据库。接下来就注入可以愉快的开始sql注入。