DVWA文件上传漏洞
low难度,没有任何限制直接上传即可
medium只允许jpeg/png,文件大小小于100000字节(个人认为是字节)
high允许上传jpg,jpeg,png格式
还有几个参数的意思
isset()函数用于检测变量是否已设置并且非NULL。
basename()函数返回路径中的文件名部分。
substr()函数返回字符串的一部分。
strrpos()函数查找字符串在另一字符串中最后一次出现的位置(区分大小写)。
strtolower()函数把字符串转换为小写。
getimagesize()函数用于获取图像大小及相关信息,成功返回一个数组,失败则返回FALSE并产生一条E_WARNING级的错误信息。
move_uploaded_file()函数把上传的文件移动到新位置。如果成功该函数返回TRUE,如果失败则返回FALSE。
Low
这里我上传了一个php文件并且上传成功
使用菜刀,查看我们上传的文件的文件夹
菜刀使用方法打开后右键添加
输入地址,选择脚本类型和字符编码
在右上角输入参数,参数为一句话木马里的参数
点击添加完成后双击运行地址,得到下图
这时候我们已经成功了,可以对文件进行操作
medium
这里我们上传在low中上传的代码发现报错
错误提示是只能上传JPEG或PNG图像
这时候我们需要用到burp抓包软件,对上传的软件类型进行修改
将文件类型修改为jpeg/png就行
上传成功后和low一样可以对文件进行操作
遇到的问题
在做medium难度的时候出现一个问题,更改文件类型后发现,上传失败
在此卡了许久后被告知,捕获的数据包中有impossible和medium2个不同级别而impossible级别只更改文件类型是无法上传成功的在此只需要把impossible这一个级别删除就行
high
这里需要使用图片木马进行上传
需要一句话木马的php文件1.php以及一张png或者jpg图片1.jpg 或者1.png
制作图片木马
然后注入,发现报错,具体解决方案,明天学习
可以查看到图片中包含一句话脚本