Unsafe Fileupload-pikachu

系列目录

第一章 暴力破解

第二章 Cross-Site Scripting-pikachu

第三章 CSRF

第四章 sql-injection

第五章 RCE

第六章 File inclusion

第七章 Unsafe filedownload

第八章 Unsafe fileupload

概述

不安全的文件上传漏洞概述

文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像、上传附件等等。当用户点击上传按钮后,后台会对上传的文件进行判断 比如是否是指定的类型、后缀名、大小等等,然后将其按照设计的格式进行重命名后存储在指定的目录。 如果说后台对上传的文件没有进行任何的安全判断或者判断条件不够严谨,则攻击着可能会上传一些恶意的文件,比如一句话木马,从而导致后台服务器被webshell。

所以,在设计文件上传功能时,一定要对传进来的文件进行严格的安全考虑。比如:

--验证文件类型、后缀名、大小;

--验证文件的上传方式;

--对文件进行一定复杂的重命名;

--不要暴露文件上传后的路径;

--等等...

一、Client Check

页面提示我们只能上传图片

尝试上传其他类型的文件

发现存在一个校验

检查前端代码发现,前端进行的校验

我们有两种办法绕过校验

1.禁用js

直接禁用js

我们上传成功

我们上传了一个php一句话木马,所以我们使用蚁剑连接

php 复制代码
<?php  @eval($_POST['command']); ?>
2. 使用burpsuite

由于是前端的校验,那么我们只需要在前端提交一个图片文件

在发送数据的过程中,将数据包更改

就可以绕过这个前端校验了

抓到数据包以后,先去除掉图片的数据

修改文件名

添加文件内容

连接成功

二、MIME type

三、get image size

PHP中的getimagesize()函数是一个内置函数,用于获取图像的大小。Getimagesize()返回结果中有文件大小和文件类型,如果用这个函数来获取类型,从而判断是否是图片的话,会存在问题。

制作图片马,上传成功后

由于这是图片文件,php代码并没有执行

我们需要利用之前的文件上传漏洞,来让php代码执行

相关推荐
智联视频超融合平台2 小时前
无人机+AI视频联网:精准狙击,让‘罪恶之花’无处藏身
人工智能·网络协议·安全·系统安全·音视频·无人机
博睿谷IT99_4 小时前
Oracle OCP认证的技术定位怎么样?
运维·数据库·安全·数据库oracle
key064 小时前
数据分类分级的实践与反思:源自数据分析、治理与安全交叉视角的洞察
安全·分类·数据分析
纪元A梦4 小时前
Redis最佳实践——安全与稳定性保障之数据持久化详解
数据库·redis·安全
浩浩测试一下5 小时前
reverse_ssh 建立反向 SSH 连接指南 混淆&&AV [好东西哟]
运维·开发语言·网络·安全·网络安全·ssh·php
WHFENGHE7 小时前
裂缝仪在线监测装置:工程安全领域的“实时守卫者”
物联网·安全
XiaoLeisj18 小时前
【JUC】深入解析 JUC 并发编程:单例模式、懒汉模式、饿汉模式、及懒汉模式线程安全问题解析和使用 volatile 解决内存可见性问题与指令重排序问题
javascript·安全·单例模式
网宿安全演武实验室20 小时前
AI生态警报:MCP协议风险与应对指南(中)——MCP Server运行时安全
人工智能·安全·大语言模型·mcp协议
网易易盾1 天前
大模型测评选型指南:企业级大模型测评实战解析
人工智能·安全·内容运营
雾岛心情1 天前
【黑客与安全】Windows的WSL 安装Linux系统
linux·运维·安全