WebSub: Reflected script execution through intent-verification challenges
Summary
WebSub is a W3C recommendation produced by the Social Web Working Group. In recommendation REC-websub-20180123, the intent-verification protocol requires a subscriber to echo the hub.challenge value, also exposed as hub_challenge by some frameworks, but does not require safe response media typin...
Affected packages
| Ecosystem | Package | Affected | Fixed |
|---|---|---|---|
| w3c | websub | — | — |
Original description The description as published by the source.
WebSub is a W3C recommendation produced by the Social Web Working Group. In recommendation REC-websub-20180123, the intent-verification protocol requires a subscriber to echo the hub.challenge value, also exposed as hub_challenge by some frameworks, but does not require safe response media typing or disabled MIME sniffing. An attacker can initiate a subscription to obtain a callback URL and redirect a victim browser to a crafted verification request containing HTML or JavaScript. Subscribers that return the challenge as text/html can execute the reflected content in the subscriber origin, using a victim's existing session to read private data or perform actions, exposing localStorage or sessionStorage and browser permissions granted to that origin. An alternative uses the verification response as an attacker-controlled same-origin script resource to bypass script-src 'self'; this can remain possible with application/octet-stream when MIME sniffing is allowed. Safe media typing and X-Content-Type-Options: nosniff are both needed to address the described scenarios. WebSub Rocks demonstrated reflection, but the advisory does not establish practical impact on that demonstration site.
Source: CVE.org (CVE Program・cvelistV5) NVD