-
Notifications
You must be signed in to change notification settings - Fork 78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Embedding-CSP header #115
Comments
The new header is limited to navigational requests generate from With that in mind, the client-side CORS impacts should be limited, as we're operating in
When we no longer build features that require request-side signals. :) What would you like us to do here? Is there a design you'd prefer to header-based signaling? |
I'm well aware of the scope, but it's still a vector of sorts. Gives an attacker control over bytes in navigations. Is the header value normalized in some way? |
(E.g., what happens with Unicode domain input in the attribute?) |
On the narrow point, the value should conform to the On the broader point, I agree, but I think the risk here is small, and I don't have any other good ideas about smuggling the relevant state to the embedee without adding a header. That said, it's a bad precedent, and I'm following other bad precedent. Which is bad. |
WebAppSec should make some kind of document setting down some rules around this I think. If we generally think it's okay to bombard servers with new headers, we should have that in writing so servers know what to expect going forward. |
Also, if you're not going to canonicalize, is the server value required to be byte-identical? |
This also seems to somewhat go against the arguments put forward by @johnwilander in whatwg/fetch#313 to introduce more restrictions for requests that don't use a preflight. |
@johnwilander's arguments, as I understand them, are limited to the effect that a few well-known and well-defined headers have on servers. It's not clear to me that they apply equally to new headers to which servers almost certainly have not tied behavior.
The current algorithm compares the parsed objects, which would not be byte-identical due to some case-folding in various places.
Sounds like a good thing to chat about next week. :) /cc @hillbrad |
We neglected to talk about this last week. :/ |
Let's talk about this on the next conference call, please. |
/cc @hillbrad, as a topic for the 16th (we're having a call on the 16th, right?) |
This issue was moved to w3c/webappsec-cspee#3 |
This is a new header that apparently ruins CORS preflight guarantees. When are we going to stop doing that?
The text was updated successfully, but these errors were encountered: