Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-84365— Hono: Incomplete fix for CVE-2026-39408: `toSSG()` still writes files outside the output directory

Quick assessment

Affected
honojs hono
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Hono 是一个支持任意 JavaScript 运行时的 Web 应用框架。从 4.12.12 到 4.13.5,针对 CVE-2026-39408 发布的修复未能覆盖所有的路径穿越序列,当路由参数包含连续的上级目录段(parent-directory segments)时,toSSG() 仍然可以将文件写入配置的输出目录之外。静态站点生成过程会根据路由路径以及通过 ssgParams 提供的值构建每个输出路径,并使用构建该路径的同一规范化例程来验证结果是否保持在输出目录内。该规范化例程未能完全折叠连续的上级目录段

CVSS 6.5 · Medium
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-84365

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Hono: Incomplete fix for CVE-2026-39408: `toSSG()` still writes files outside the output directory
Source: CVE Program / CVE List V5
Vulnerability Description
Hono is a Web application framework that provides support for any JavaScript runtime. From 4.12.12 until 4.13.5, the fix released for CVE-2026-39408 does not cover every traversal sequence, and toSSG() can still write files outside the configured output directory when a route parameter contains consecutive parent-directory segments. Static site generation builds each output path from the route path and values supplied through ssgParams, then verifies that the result stays inside the output directory using the same normalization routine that built the path. That routine does not fully collapse runs of consecutive parent-directory segments, allowing a path that the check accepts to resolve outside the output directory, and the check also treats output directories that differ in how they are rooted as equivalent. This arises when an application generates a static site from route parameter values it does not fully control, such as slugs from a CMS, API, or user submission. An untrusted ssgParams value can create or overwrite files elsewhere in the build environment and alter generated artifacts or deployment output. The vulnerability affects build-time static site generation only; request-time routing and applications with entirely developer-controlled ssgParams values are not affected. This issue is fixed in version 4.13.5.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:N
Source: CVE Program / CVE List V5
Vulnerability Type
对路径名的限制不恰当(路径遍历)
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
honojs hono < 4.13.5 -

II. Public POCs for CVE-2026-84365

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-84365

登录查看更多情报信息。

Other References for CVE-2026-84365 (3)

Same Patch Batch · honojs · 2026-09-01 · 3 CVEs total

CVE-2026-84363 5.9 MEDIUM Hono: Query parser reads parameters after the URL fragment, causing cache-key and proxy in
CVE-2026-84364 5.3 MEDIUM Hono: Unbounded dot-notation nesting in `parseBody()` can cause memory exhaustion

IV. Related Vulnerabilities

V. Comments for CVE-2026-84365

No comments yet


Leave a comment