一、基于 DVWA 的 low 级别演示文件上传漏洞

1、文件上传漏洞简介

2、上传文件测试

二、基于 DVWA 的 Medium 级别演示文件上传漏洞

三、基于 DVWA 的 High 级别演示文件上传漏洞

1、上传测试                        

2、文件包含漏洞

3、制作简单的图片木马进行上传绕过


        

使用蚁剑进行连接 

在空白处单击鼠标右键,点击添加数据

URL 地址: http://192.168.1.103/DVWA-master/hackable/uploads/root.php
密码为 root,用于接受 post 方式提交的数据
        

         

上传下载文件
注:仅在 web 站点目录可进行上传,因为当前用户仅对 web 站点目录拥有写权限,下载文件则需
要拥有对下载文件的读权限。
        
也可删除文件
打开虚拟终端

         

可以看到用户是 apache 因为我们是通过 php 解析来进行执行命令的,apache 的运行用户为
apache 所以我们获取到的就是 apache 权限。如果站点是以 root 身份运行的我们获取到的就是超级管 理员权限。
如果系统或运行的服务存在可提权的漏洞即可提权为 root 用户。
        
        
        

         

将 root1.php 改名为:root1.png
        
bp抓取并更改文件后缀并放行
        

        

使用蚁剑进行连接

URL 地址:http://192.168.1.103/DVWA-master/hackable/uploads/root1.php
连接密码:root
        
总结:
因为代码已经对文件格式验证完成,文件格式满足需求然后进行上传,上传的过程中截取 HTTP 请 求对文件格式进行再次修改,最终 root1.php 被上传到 Web 站点。
        
        
        

上传失败,尽管root1.png 是以 png 结尾的,但是文件里面的内容不对。一样上传不
了。

        

把代码+图片合在一起。最终看到还是一个图片,只是这个图片中有代码。
思路:
1、把代码+图片合在一起。最终看到还是一个图片,只是这个图片中有代码。
2、上传一个带有代码的 png 图片
3、以文件包含漏洞来执行图片中的 php 代码
        
        
        

        
        
修改文件地址
http://192.168.1.103/DVWA-master/vulnerabilities/fi/?page=file:etc/passwd
注:file:///是固定格式后面跟文件路径/etc/passwd
        
页面中加载了 passwd 文件,那么我们可以上传一个带有 php 一句话木马代码的 png 图片。上传
成功后,使用菜刀进行连接。
        
        
        

        

上传文件 

文件上传成功,但是文件后缀名称并不能更改,因为代码中对文件名称也进行了严格的校验。

拓展:如果 php 版本低于 5.4 可以使用 webshell.php%00.jpg 进行截断绕过,这样文件会被直接
当做 php 文件进行执行,不过我们当前的 php 版本大于 5.4 所以我们需要使用文件包含进行绕过。

         

以文件包含漏洞 来执行图片中的 php 代码
        
http://192.168.1.103/DVWA- master/vulnerabilities/fi/?page=file:// /var/www/html/DVWA-
master/hackable/uploads/root.jpg
        
由于文件包含,需要登录 DVWA ,在未登录的状态下,会导致连接不成功。可以直接把已经登录的 Cookie 信息在编辑 Shell 配置添加到 Header 头里,这样就可以了。
按 F12 键,获取 Cookie
        

         

成功
        

点赞(1) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部