DVWA-文件上传学习笔记
一、文件上传漏洞
文件上传漏洞,通常是由于对上传文件的类型、内容没有进行严格的过滤、检查,导致攻击者恶意上传木马以便获得服务器的webshell权限。
二、DVWA学习
将DVWA的级别设置为low
1.分析源码,把网站根目录和上传的到的目录以及文件名进行拼接,然后判断文件是否上传到新的位置,可以看出没有对文件上传做任何过滤
2.编写php一句话木马,然后上传,下图说明上传成功
3.用中国菜刀连接上传的webshell
将DVWA的级别设置为Medium
1.分析源码,可以看到对上传的文件类型和大小做了限制, 采用白名单过滤只允许上传文件的MIME类型为image/jpeg或者image/png,以及文件大小小于100000字节
2.抓包修改文件的MIME类型,绕过MIME类型的限制
3.使用菜刀连接
将DVWA的级别设置为High
1.分析源码,可以看到对上传文件的后缀进行了严格的限制,只允许后缀为jpg、jpeg、png并且大小小于100000字节的文件。 此时只能上传文件后缀为jpg、jpeg、png的文件
2.通过构造一句话图片木马,然后上传来绕过防御,然后结合php文件解析漏洞或者web中间件解析漏洞或者文件包含漏洞来达到解析含有php代码的png文件
2.1构造图片马 #本实验由于DVWA版本自身原因,无法利用文件包含结合文件上传
方法一:找个图片,用记事本打开,添加一句话
方法二:copy 1.jpg/b+a.php/a 2.jpg
将DVWA的级别设置为Impossible
1.分析源码,可以看出对上传文件的后缀,上传文件的类型,上传文件的大小做了严格的限制,并对上传的文件进行重命名,彻底杜绝文件上传漏洞
Impossible级别的代码对上传文件进行了重命名