-
Notifications
You must be signed in to change notification settings - Fork 79
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
GREASE is not well thought and will be circumvented due to necessity #156
Comments
The purpose of GREASE is sort of two-fold. First is to encourage clients to use a fleshed parser for the header instead of the half-baked/fragile parsers you see for the User Agent string now. This doesn't seem to be a problem in you scenarios, but is worth pointing out why the weird characters exist in the fake brand. The second is to discourage whitelisting (blocking or downgrading "unknown" user agent brands), which it goes for in two ways:
It's number two that we're hoping will stop the circumvention you're referring to. It's also the hope that these behaviours (ossifying lists of brands and databases of header values maps) will go away because they'll be unnecessary. In your analytics scenario, most analytics platforms either have an "other" already or simply drop unknown UA strings, which is bad for small browsers. With the proposed solution you can say
And I think customers will be able to tell what's up |
But it is, right here:
|
GREASE itself seems like a good idea, however I strongly believe that it will be quickly and swiftly circumvented due to necessity.
Imagine case where I would like to show user list of active sessions, with information on what kind of browser they're using. I can realistically show
Chrome 86 / Chromium 86
, but I can not show user'"Not\A;Brand / Chrome 86 / Chromium 86
. This means that either of these two cases must take place:Unknown
- this will make it harder for users to identify their sessions for less known browsers.\
,;
,"
, or'
in them are GREASE.Given these two scenarios, it seems obvious to me that GREASE does not achieve what it sets out to do.
The text was updated successfully, but these errors were encountered: