CVE-2026-104454 YesWiki wakka.php 算法复杂度拒绝服务漏洞
影响未认证攻击者可耗尽 PHP-FPM 工作进程,导致服务拒绝
YesWiki 4.6.7 之前版本的 wakka.php 格式化器在处理 Markdown 链接时使用了 O(n^2) 复杂度的正则表达式。未认证攻击者只需向页面编辑预览端点提交少量精心构造的方括号字符,即可触发算法复杂度拒绝服务。
影响范围
YesWiki 4.6.7 之前的版本。
漏洞详情
漏洞类型为算法复杂度(ReDoS 类)拒绝服务。成因是 wakka.php 中用于解析 Markdown 链接的正则表达式具有 O(n^2) 时间复杂度,当输入包含大量方括号字符时,匹配过程耗时随输入长度平方级增长。攻击者通过页面编辑预览端点提交构造的请求体,即可长时间占用 PHP-FPM 工作进程。
利用条件与风险
利用无需认证,仅需向编辑预览端点发送小体积构造请求即可触发,实战中可反复请求以占满 PHP-FPM 进程池,造成网站不可用。
修复建议
升级至 YesWiki 4.6.7 或更高版本以修复该正则表达式。临时缓解措施包括限制编辑预览端点的访问频率或对请求体长度与字符内容进行过滤,暂无其他公开信息。
YesWiki before 4.6.7 contains an algorithmic-complexity denial of service in the wakka.php formatter due to an O(n^2) markdown-link regex. Unauthenticated attackers can submit a small crafted body of bracket characters to the page-edit preview endpoint to pin PHP-FPM workers and saturate the pool.