当前位置: 首页 > news >正文

复现文件上传漏洞

一、搭建upload-labs环境

将下载好的upload-labs的压缩包,将此压缩包解压到WWW中,并将名称修改为upload,同时也要在upload文件中建立一个upload的文件。

然后在浏览器网址栏输入:127.0.0.1/upload进入靶场。

第一关

选择上传文件,这时我们会发现此时有提示框弹出,在弹框中说明请上传.jpg|.png|.gif类型的文件

这时我们可以查看代码

通过代码我们可以看出该用于限制文件过滤的函数是通过JavaScript运行的,所以我们可以通过浏览器的设置-->隐私和安全--->找到Javascript将其关掉

此时,我们会发现显示源码什么的都是点不动的,但是选择文件是可以点的动的,所以此时我们可以上传文件,会发现上传成功。

第二关

我们试着上传一下第一关所用的web.php,这时会给我们提示:文件类型不正确,请重新上传!,说明这一关不是通过JavaScript运行的,同时在代码里面也没有找到checkFile(),所以第二关有很大的概率是在后端验证的。我们通过Burp Suite进行抓包

这里我们可以看到内容协议是 Content-Type: application/octet-stream,所以我们可以传到Repeater对Content-Type进行修改,并将内容协议改为image/jpeg,在尝试是否上传成功

可见这是成功的。

第三关(黑名单)

查看提示信息,不允许上传.asp,.aspx,.php,.jsp后缀文件!

 查看代码

php文件的后缀一般为:phtml、php、php3、pHtml。

此时我们可以使用Burp Suite进行抓包,并对文件后缀进行修改为php3就可以成功。

第四关

查看提示

基于黑名单的方式,这一关利用重写文件解析规则绕过    上传.htaccess文件

在文件中书写“Sethandler application/x-httpd-php”,然后进行上传.htaccess文件,但是该文件和.jpg要在同一个文件夹下。

第五关

查看提示

 将后缀.php修改为.PHP,然后进行上传

第六关

查看提示

用Burp Suite中进行抓包,并且在Burp Suite中修改其上传名加上 “空格” 进行绕过代码

 ​​​​​​

第七关

查看提示

这一关还是比较好过的,可以在Burp Suite中对文件的后缀加一个点,例如:“.php.. ”就可以绕过。

 

第八关

查看提示

这里没有过滤 ::$DATA 利用 Windows文件流特性绕过 构造8.php::$DATA 会被保存为8.php

http://www.lryc.cn/news/318698.html

相关文章:

  • Java 内存异常
  • Windows11去掉 右键菜单的 AMD Software:Adrenalin Edition 选项
  • uniapp实现我的订单页面无感 - 删除数据
  • MySQL—redo log、undo log以及MVCC
  • 13 list的实现
  • 如何用client-go获取k8s因硬盘容量、cpu、内存、gpu资源不够引起的错误信息?
  • IDEA编译安卓源码TVBox(2)
  • 【C#】.net core 6.0 使用第三方日志插件Log4net,配置文件详细说明
  • 第十四届蓝桥杯省赛真题 Java 研究生 组【原卷】
  • adb shell input text 输入中文
  • Rudolf and the Ball Game
  • 计算机毕业设计-基于大数据技术下的高校舆情监测与分析
  • WPF使用LiveCharts画图时,横坐标转换成时间
  • Qt客户端开发的技术难点
  • 杰理AD155儿童玩具语音集成电路
  • git bash 命令行反应慢、卡顿(定位出根本原因)
  • Android 启动service(Kotlin)
  • Windows蓝牙驱动开发之模拟HID设备(一)(把Windows电脑模拟成蓝牙鼠标和蓝牙键盘等设备)
  • LlamaParse: 高效的PDF文件RAG解析工具
  • platform设备注册驱动模块的测试
  • 鸿蒙Harmony应用开发—ArkTS声明式开发(容器组件:ListItemGroup)
  • Docker:常用命令
  • 如何搭建“Docker Registry私有仓库,在CentOS7”?
  • DBA面试题:MySQL缓存池LRU算法做了哪些改进?
  • idea+vim+pycharm的块选择快捷键
  • ansible 部署FATE集群单边场景
  • 融入Facebook的世界:探索数字化社交的魅力
  • stm32-定时器输出比较PWM
  • Redis对过期key的删除策略
  • http的body格式