渗透学习日记day10(sqli-labs)

目录

sqli-labs靶场搭建

Sqli-labs第一关:


sqli-labs靶场搭建

下载地址:https://github.com/Audi-1/sqli-labs

 用phpstudy打开apache和mysql服务,本地输入127.0.0.1/sqli-labs即可打开

今天搭建时出现遗留问题,把自己下的mysql删除了重新安装phpstudy出现了mysql的套件--打开mysql服务访问127.0.0.1/sqli-labs成功。

渗透学习日记day10(sqli-labs)

 sqli-labs教程

里面说要修改phpStudy\WWW\sqli-labs\sql-connections的’$dbpass‘为root

这里修改$dbpass的原因是phpstudy默认的数据库账号密码都是root        这里根据自己数据库设置的密码设置去修改

点击Setup/reset Database

这里出现报错 Call to undefined function mysql_connect() 

 原因是mysql_connect()函数是php5.0版本支持的,现在高版本php已经废弃,我下载的phpstudy是8.0的版本用的php是较高的版本,需要在网站——php版本——安装一个php5.0的版本

渗透学习日记day10(sqli-labs)

完成后再次点击点击Setup/reset Database显示成功 

渗透学习日记day10(sqli-labs)

 现在再次打开127.0.0.1/sqli-labs下面的大纲就有很多注入点了

使用PhpStudy进行sqli-labs注入实验时,出现特殊符号被分斜杠“\”转义,导致注入失败

打开phpstudy工具所在的文件夹,需要更改其文件夹下的“PHP”文件夹中的php.ini配置文件。

将配置文件中的“magic_quotes_gpc = On ”改为“magic_quotes_gpc= Off ”

Sqli-labs第一关:

?id=' or 1=1 --          注意:--后有个空格

直接回车浏览器可能忽略该空格会出现: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '#的报错

这时候手动在浏览器的?id=%27%20or%201=1%20--   (经过url编码后)加一个%20或者+都可以

若是想要sqli中显示出注入的语句和执行的Mysql语句可以在sqli-labs目录下打开网页源码插入如下代码

渗透学习日记day10(sqli-labs)

 原文链接

他这里给的第二部分代码是

echo "执行的Mysql语句:".“$sql”."<br>";

我试了下改过效果是一样的

echo "执行的Mysql语句:".$sql."<br>"; 

 

补充点:PHPstorm可以动态的调试页面

具体可参考视频P37-P38,我这里用的是vscode,百度说可以下个phpdebug的插件,但是弄了一下感觉很麻烦,而且没找到很具体的步骤,这里就手动一次次输一下

这里动态调试原理和抓包类似

上一篇:3、JPA-API


下一篇:docker 阿里云应用型服务器 安装sqli-labs中遇到的问题