Pikachu Unsafe Fileupload 通关解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: Pikachu Unsafe Fileupload 通关解析

前言

Pikachu是一种常见的网络安全训练平台,用于模拟真实世界中的网络和防御场景。它提供了一系列的实验室环境,供安全专业人士、学生和爱好者练习和测试他们的技能。


Pikachu的目的是帮助用户了解和掌握网络的原理和技术,同时提供实践机会来开发和改进网络防御策略。内的网络环境是虚拟的,用户可以通过远程访问来完成各种任务。这些任务可能包括测试、利用、密码破解、网络侦查、恶意软件分析等。


Pikachu提供了多个不同的实验室环境,以满足不同的训练需求。每个实验室环境都有不同的难度级别和目标,用户可以选择适合自己技能水平的实验室来进行训练。平台还提供了一系列的学习材料和指导,以帮助用户理解每个实验室的背景知识和解决方案。


通过在Pikachu进行训练,用户可以提高自己的网络安全技能,了解常见的技术和,并学习如何防御和保护网络。这对于网络管理员、测试人员和安全研究人员来说都是非常有价值的。


总而言之,Pikachu是一个提供实践机会的网络安全训练平台,旨在帮助用户提高网络安全技能和知识。它是一个非常有用的资源,可以帮助用户更好地应对日益增长的网络安全威胁。


介绍

文件上传(File Upload Vulnerability)是一种常见的网络安全,它允许攻击者通过恶意构造的上传请求来上传任意的文件到目标系统。这种通常存在于Web应用程序中,特别是在处理用户上传的文件时。


攻击者可以利用文件上传来进行以下:


1. 执行恶意代码:攻击者可以上传包含恶意代码的文件,例如Webshell或恶意脚本,然后通过执行该文件来获取系统控制权。


2. 存储恶意文件:攻击者可以上传恶意文件到目标系统,如病毒、木马或恶意软件,从而对受感染系统进行。


3. 绕过访问控制:可以通过上传恶意文件来绕过访问控制机制,从而获取对受限资源的访问权限。


为了防止文件上传的利用,开发者和系统管理员应采取以下措施:


1. 文件类型验证:应用程序应对上传的文件进行类型验证,确保只允许上传安全的文件类型,并禁止危险的文件类型如可执行文件或脚本。


2. 文件大小限制:应用程序应限制上传文件的大小,以防止上传过大的文件导致服务器资源耗尽或拒绝服务。


3. 文件名验证:应用程序应对上传的文件名进行验证,确保只允许合法的文件名,防止通过恶意构造文件名来绕过安全措施。


4. 存储目录隔离:应用程序应将上传的文件存储在与应用程序代码和其他敏感文件分离的目录中,以防止攻击者通过上传恶意文件来获取对敏感文件的访问权限。


5. 权限控制:应用程序应实施严格的访问控制机制,确保只有授权的用户能够上传文件,并限制用户对上传文件的访问权限。


6. 安全编码实践:开发人员应遵循安全编码实践,在设计和开发过程中考虑文件上传的安全性,避免直接将用户上传的文件存储在公开可访问的位置。


总之,文件上传是一种常见的网络安全,可以导致上传恶意文件或执行恶意代码。为了防止该的利用,开发者和系统管理员应采取相应的安全措施来保护系统和用户的安全。

一、client check

打开点击选择文件

选择 PHP 时弹窗

前端 JS 验证只需禁用掉 JS 即可

二、MIME type

打开 BurpSuite 抓包修改类型

常见的 MIME 类型
 
超文本标记语言文本 .html、.html:text/html
 
普通文本 .txt: text/plain
 
RTF 文本 .rtf: application/rtf
 
GIF 图形 .gif: image/gif
 
JPEG 图形 .jpeg、.jpg: image/jpeg
 
au 声音文件 .au: audio/basic
 
MIDI 音乐文件 mid、.midi: audio/midi、audio/x-midi
 
RealAudio 音乐文件 .ra、.ram: audio/x-pn-realaudio
 
MPEG 文件 .mpg、.mpeg: video/mpeg
 
AVI 文件 .avi: video/x-msvideo
 
GZIP 文件 .gz: application/x-gzip
 
TAR 文件 .tar: application/x-tar

上传成功

三、getimagesize

getimagesize(string filename)函数是PHP中的一个内置函数,用于获取指定图像文件的尺寸和其他相关信息。

函数参数:

- filename:要获取信息的图像文件的路径或URL。

函数返回值:

- 如果指定的文件是一个有效的图像文件,则返回一个包含图像尺寸和其他信息的关联数组,例如:

 - [0]:图像的宽度(像素)

 - [1]:图像的高度(像素)

 - [2]:图像类型的常量

 - [3]:包含字符串描述的图像类型,如"width=100 height=100"等

 - 'mime':图像的MIME类型

- 如果指定的文件不是一个有效的图像文件,则返回false。

该函数对于获取图像文件的尺寸和类型非常有用,可以在开发中用于动态调整图像大小、验证上传的图像文件等操作。

这一关使用了这个函数对其图像进行了检测

在 Windows 操作系统下可以使用 copy 命令 PHP 与图像文件结合起来

文件上传成功

当然,还可以通关直接伪造头部来实现绕过


相关文章
|
3天前
|
SQL 文字识别 安全
DVWA Insecure CAPTCHA 通关解析
DVWA Insecure CAPTCHA 通关解析
|
3天前
|
SQL 安全 PHP
DVWA File Inclusion 通关解析
DVWA File Inclusion 通关解析
|
3天前
|
存储 安全 Linux
OverTheWire Bandit 通关解析(上)
OverTheWire Bandit 通关解析(上)
|
3天前
|
存储 SQL 安全
DVWA File Upload 通关解析
DVWA File Upload 通关解析
|
3天前
|
SQL 安全 网络安全
DVWA SQL Injection (Blind) 通关解析
DVWA SQL Injection (Blind) 通关解析
|
3天前
|
存储 Shell Linux
OverTheWire Bandit 通关解析(下)
OverTheWire Bandit 通关解析(下)
|
3天前
|
安全 Linux Shell
OverTheWire Bandit 通关解析(中)
OverTheWire Bandit 通关解析(中)
|
26天前
|
XML Java 数据格式
深度解析 Spring 源码:从 BeanDefinition 源码探索 Bean 的本质
深度解析 Spring 源码:从 BeanDefinition 源码探索 Bean 的本质
28 3
|
11天前
|
存储 安全 Java
深度长文解析SpringWebFlux响应式框架15个核心组件源码
以上是Spring WebFlux 框架核心组件的全部介绍了,希望可以帮助你全面深入的理解 WebFlux的原理,关注【威哥爱编程】,主页里可查看V哥每天更新的原创技术内容,让我们一起成长。
|
12天前
|
关系型数据库 分布式数据库 数据库
PolarDB-X源码解析:揭秘分布式事务处理
【7月更文挑战第3天】**PolarDB-X源码解析:揭秘分布式事务处理** PolarDB-X,应对大规模分布式事务挑战,基于2PC协议确保ACID特性。通过预提交和提交阶段保证原子性与一致性,使用一致性快照隔离和乐观锁减少冲突,结合故障恢复机制确保高可用。源码中的事务管理逻辑展现了优化的分布式事务处理流程,为开发者提供了洞察分布式数据库核心技术的窗口。随着开源社区的发展,更多创新实践将促进数据库技术进步。
18 3

推荐镜像

更多