
CVE-2026-23873 是一个针对开源在线评判系统 hustoj 的中危 CSV 注入漏洞,影响 26.01.01 之前的所有版本。
该漏洞的核心问题在于,系统对用户输入的“昵称(Nickname)”字段过滤不严。这些未经验证的数据随后会通过比赛排名导出功能,被写入到兼容 Excel 的 .xls 文件中。当管理员使用 Microsoft Excel 打开此导出文件时,文件中恶意构造的公式就会被执行,可能导致管理员机器被远程执行代码或敏感数据泄露。
利用此漏洞需要攻击者拥有一个低权限账户来提交恶意昵称,并且需要管理员打开导出的文件(即需要用户交互)。目前,官方尚未发布补丁。
CVE-2026-23873 是一个典型的CSV注入漏洞(对应CWE-1236分类)。它存在于广泛用于ACM/ICPC和NOIP等编程竞赛训练的hustoj平台中。
漏洞的根本原因在于,应用在将比赛排名导出为 .xls 文件前,未能对用户输入的“昵称”字段中的公式元素进行有效处理或转义。值得注意的是,虽然文件扩展名为 .xls,但实际内容是HTML表格,Microsoft Excel能够打开此类文件。
Excel会将任何以等号(=)、加号(+)、减号(-)或“@”等特殊字符开头的单元格内容解释为可执行的公式。攻击者可以提交一个以这些字符开头的恶意字符串作为昵称。一旦管理员使用Excel打开导出的排名文件,这个恶意“昵称”中的公式就会在管理员的机器上执行任意命令或脚本,从而实现远程代码执行或数据窃取。
根据CVSS 4.0评分,该漏洞基础得分为5.2(中危),其攻击向量为网络、攻击复杂度低、需要部分权限和用户交互,且影响范围大。由于尚无官方补丁,对于依赖此软件的组织来说,风险较高。此漏洞也凸显了将未经验证的用户输入导出到支持公式的电子表格格式时的潜在风险。
对于在学术或竞赛编程环境中使用hustoj的欧洲组织而言,此漏洞对管理系统构成了重大风险。
如果漏洞被成功利用,攻击者可以在管理员机器上执行任意命令,可能导致系统被接管、数据被非法访问,甚至在网络内部进行横向移动。如果受害机器能访问内部资源,这可能导致敏感的比赛数据、参赛者信息或更广泛的组织数据泄露。
由于攻击需要攻击者注册并提交恶意昵称,以及管理员打开导出的文件,因此在用户审核不严格或管理员习惯不经验证直接打开导出文件的环境中,该风险会更高。此漏洞可能会中断比赛运营、损害组织声誉并导致数据泄露。
=、+、-、@)。在服务器端实施严格的输入验证和清理,以消除公式注入的可能。原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。