Testcase generating eTLD + N URL and fetching it hangs the Parent-Process for 6minutes+. Chrome is instant (i think it errors out)
Categories
(Core :: Security: PSM, defect, P1)
Tracking
()
People
(Reporter: mayankleoboy1, Assigned: nwipper)
References
(Blocks 1 open bug)
Details
(Whiteboard: [psm-assigned])
Attachments
(3 files)
Open testcase
Enter 500000 (or use a saner smaller number)
Click on generate. -- > This is instant, so thats good
Now click on Fetch button
Firefox (partial): https://share.firefox.dev/4faULbO (6minutes + )
Chrome: instant (or instant error-out)
| Reporter | ||
Comment 1•1 year ago
|
||
Here is a saner profile with N= 150000 : https://share.firefox.dev/4l1a08Q
| Reporter | ||
Updated•1 year ago
|
Comment 2•1 year ago
|
||
It looks like the source of the jank is this piece of code:
nsSiteSecurityService.cpp
Not sure if this parsing logic needs to be adjusted for this specific test case (an extremely long URL with "." delimiters).
I’ll defer to the security team to determine if any changes are necessary.
Comment 3•1 year ago
|
||
Jank in nsSiteSecurityService::IsSecureHost()
Comment 4•1 year ago
|
||
Well, you're never going to be able to resolve a hostname like that, so I wonder if it makes sense to add a limit to the number of subdomain components when constructing a URI (this may be what makes Chrome so fast here). Kershaw, what do you think?
Comment 5•1 year ago
|
||
(In reply to Dana Keeler (she/her) [:keeler] from comment #4)
Well, you're never going to be able to resolve a hostname like that, so I wonder if it makes sense to add a limit to the number of subdomain components when constructing a URI (this may be what makes Chrome so fast here). Kershaw, what do you think?
So, we have a limit here to check if a host name is valid.
I think we just need to reuse that check in nsSiteSecurityService::IsSecureHost().
Comment 6•11 months ago
|
||
Sounds good!
Nikolas, would you be interested in taking this on?
| Assignee | ||
Updated•11 months ago
|
| Assignee | ||
Comment 7•11 months ago
|
||
This does happen on my machine + I also get a consistent 7 seconds of JS jank regardless of N: https://share.firefox.dev/3JpXN02. Not sure how that is related.
| Assignee | ||
Comment 8•11 months ago
|
||
Comment 9•11 months ago
|
||
(In reply to Nikolas Wipper [:nwipper] from comment #7)
This does happen on my machine + I also get a consistent 7 seconds of JS jank regardless of N: https://share.firefox.dev/3JpXN02. Not sure how that is related.
Might be these regexes: https://searchfox.org/mozilla-central/rev/ca035d76ad92757859375c2dc807c7a61055823b/devtools/client/netmonitor/src/utils/request-utils.js#354-356 - maybe file a bug to see what we can do there?
Updated•11 months ago
|
Comment 10•11 months ago
|
||
Comment 11•11 months ago
|
||
The severity field is not set for this bug.
:keeler, could you have a look please?
For more information, please visit BugBot documentation.
| Assignee | ||
Updated•11 months ago
|
Comment 12•11 months ago
|
||
| bugherder | ||
Updated•11 months ago
|
| Reporter | ||
Comment 13•11 months ago
|
||
This is fixed on the latest Nightly - The browser seems to do nothing when i press the "fetch" button.
Thanks!
Description
•