CVE-2025-70457CVE-2025-70457是Sourcecodester Modern Image Gallery App v1.0中的一个严重远程代码执行漏洞。该漏洞位于gallery/upload.php组件中,主要源于应用程序对上传文件的验证机制存在严重缺陷。攻击者可以利用此漏洞,在无需任何认证的情况下,上传包含恶意PHP代码的文件,并通过Web服务器执行任意命令,最终导致整个系统被完全沦陷。漏洞的严重性在于其攻击门槛极低(无需认证和用户交互),且利用成功后可获得最高权限的系统控制能力。根据CVSS 3.1评分9.8(严重级别),该漏洞对机密性、完整性和可用性均造成严重影响。鉴于该应用在 galleries/ 目录直接保存上传文件且保留原始扩展名,攻击者可以轻易绕过MIME类型检查,上传.php文件并获取服务器shell权限。
该漏洞的技术根源在于应用程序对文件上传处理的多重安全缺陷。首先,upload.php组件仅检查MIME类型但未验证文件实际内容,攻击者可以通过在PHP文件前添加图片文件头(如GIF89a)来绕过MIME类型检查。其次,应用程序在保存文件时直接使用用户提供的扩展名而非白名单机制,导致.php文件可以直接保存到服务器。更关键的是,保存路径gallery/位于Web可访问目录下,使得上传的恶意PHP文件可以被Web服务器直接解析执行。攻击者只需构造一个包含<?php system($_GET['cmd']); ?>的PHP文件,添加GIF89a文件头,伪装为image/gif类型上传,即可在访问该文件时通过cmd参数执行任意系统命令。这种设计缺陷使得攻击者可以完全控制服务器,执行任何操作包括读取敏感配置、植入后门、横向移动等。