CVE-2026-24010Horilla是一款免费开源的人力资源管理系统(HRMS)。该系统存在一个严重的文件上传漏洞,存在于1.5.0之前的版本中。攻击者利用此漏洞配合社会工程学技术,可以实现对用户账户的完全接管。漏洞的核心问题在于系统对用户上传的头像文件缺乏充分的安全验证,允许认证用户上传包含恶意代码的HTML文件。攻击者将恶意HTML文件伪装成用户头像上传后,可以创建一个看起来与真实登录页面几乎一致的钓鱼页面。当受害者访问该文件URL时,会看到一个虚假的"会话已过期"提示,诱导用户重新输入登录凭证。所有输入的凭据都会被发送到攻击者控制的服务器,从而导致账户被完全接管。此漏洞影响所有使用受影响版本Horilla系统的组织,可能导致大量用户账户泄露和敏感数据暴露。
该漏洞是一个典型的文件上传安全漏洞,存在于Horilla HRMS的头像上传功能模块中。漏洞的根本原因在于系统对上传文件的类型、内容和扩展名验证不足。攻击流程如下:首先,攻击者需要拥有一个有效的Horilla系统账户(即使是低权限账户也可利用)。登录后,攻击者访问个人资料设置页面的头像上传功能。系统仅检查文件扩展名是否在允许列表中(如.jpg、.png等),但对HTML文件没有进行充分的过滤或内容检测。攻击者将包含钓鱼代码的HTML文件重命名为看似合法的图片扩展名(如1.5.0之前的版本可能允许.html或其他扩展名),或利用MIME类型检测漏洞绕过上传限制。上传成功后,系统返回文件的访问URL。攻击者将这个URL发送给目标用户(通常通过系统内的消息功能或其他内部渠道)。当受害者访问该URL时,浏览器直接渲染HTML内容,显示一个伪造的"会话已过期"登录页面。用户在此页面输入的凭据通过JavaScript发送到攻击者服务器。由于页面看起来与真实的Horilla登录页面一致,用户很难识别这是一个钓鱼攻击。攻击者获得凭据后可以登录目标账户,查看敏感的员工信息、薪资数据等。