DVWA环境源码中图片路径错误问题

DVWA的第一关就存在一个密码破解成功后显示的图片路径错误的问题,而且是源码中的错误,在我进行这一关的学习时查阅了很多入门教程的资料,发现几乎所有人都没有去在意这个问题,但是为了保持作为专业学习者要打破砂锅问到底的原则,我对这里的源码进行了分析(在第一次接触PHP的情况下)。。。

页面中查看图片解析的资源路径

在这里插入图片描述

浏览器访问的资源地址为

http://localhost/hackable/users/admin.jpg

图片404
在这里插入图片描述
但是在文件夹里面图片都是存在的,只能是路径解析的问题了,于是我去查看了index.php的内容。
在这里插入图片描述
我首先看到了关卡页面的路径拼接的语句,而这个页面里面并没有图片的标签,往上看switch语句是通过cookie中的security参数来加载不同难度的关卡网页,然后放进$vulnerabilityFile里面最终得到页面加载的路径,我现在访问的是low级别的关卡,也就是要去low.php才能看到图片DOM了。
在这里插入图片描述

在这里找到了图片路径的参数,$avatar是从数据库中的users表,列名为avatar中获取到的数据,那么这些数据是在DVWA环境开始使用时就初始化好的数据库数据,于是我找到了数据库的初始化的文件。
在这里插入图片描述

$avatarUrl设置的字符串内容就是头像的加载路径了,我的截图中是已经修改好的了,只需在/hackable/users/前面添加“/DVWA”
注意一定要加上 “ / ” 否则资源路径就会由当前请求路径加上图片资源路径,就会变成
http://localhost/DVWA/vulnerabilities/brute/DVWA/hackable/users/admin.jpg
依然会出现404
在这里插入图片描述
另外如果为解决PHPstudy与本地MySQL数据库端口冲突问题,在PHPstudy中修改了端口号后,要在
**\WWW\DVWA\config\config.inc.php文件中的
$_DVWA[ ‘db_server’ ] = ‘127.0.0.1’;
数据库链接变量后添加修改的端口号(不添加默认为3306)

$_DVWA[ ‘db_server’ ] = ‘127.0.0.1:3307’;

在这里插入图片描述
最后点击主页中的Setup / Reset DB按钮重新加载数据库内容,就可以看到数据库中的图片路径已经全都修改好了,然后再次回到暴力破解这里,成功登陆后就会正常显示图片了,Nice!!!
在这里插入图片描述
在这里插入图片描述
到这里总算是完成了,过程实在是有些蒙圈,不过还好最终还是看明白了一些逻辑,找到了问题的所在,至于为什么一个广为流传的环境源码会有这种问题存在我也不太清楚,可能专门为和我一样强迫症的人准备的吧,哈哈。

这里是Renexton,一个啥都想学的程序猿,学无止境,一起加油!

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值