关键漏洞信息 1. 受影响产品 产品名称: Pet grooming management software 版本: V1.0 供应商主页: https://www.sourcecodester.com/php/18340/pet-grooming-management-software-download.html 2. 漏洞文件 易受攻击的文件: /petgrooming_erp/pet_grooming/admin/profile.php 3. 漏洞类型 类型: Unrestricted Upload 4. 描述 问题描述: 在profile.php中存在文件上传功能,由于缺乏有效的验证和过滤用户上传的文件,攻击者可以上传恶意脚本文件(如.php后门)。系统直接保存文件使用用户提供的原始文件名到web可访问目录,使攻击者能够访问和执行上传的恶意脚本。 5. 漏洞细节和PoC 漏洞细节: 文件上传功能在profile.php中存在严重的安全漏洞。它仅依赖于前端过滤进行文件类型验证,并完全缺乏服务器端验证文件的实际类型。例如,它未能使用像getimagesize()这样的函数来验证上传的文件是否为真正的图像。这允许攻击者轻松绕过前端限制并上传恶意文件。 PoC: - 准备恶意文件: - 当通过profile.php上传用户头像到服务器后,查看页面源代码显示上传路径为../assets/uploadImage/Profile/webshe1l.php。 - 使用webshell连接工具,连接成功,如下图所示。 6. 建议修复 修复建议: - 在服务器端建立白名单机制,仅允许JPG、PNG和BMP文件格式上传,并强制验证文件内容的真实性。 - 配置web服务器禁止上传目录中的任何脚本执行,部署实时文件监控系统扫描异常内容,并维护所有上传操作的完整日志。