Open Bug 2069873 Opened 12 days ago Updated 3 days ago

Overeager visual URL-decoding of delimiters in multiple components: link previews, devtools

Categories

(DevTools :: General, defect, P3)

Firefox 155
defect

Tracking

(Not tracked)

UNCONFIRMED

People

(Reporter: sormus.uku, Unassigned)

References

Details

Attachments

(1 file)

Steps to reproduce:

  1. Take the following example links:
    1.1. https://example.com/?action=edit&username=%26action%3Ddelete
    1.2. https://example.com/X%23Y
    1.3. https://example.com/X%2FY%3FZ

  2. Observe over-eager visual URL-decoding, when:
    2.1. Hovering over the links above, checking the URL preview in the bottom of the desktop browser
    2.2. Pasting any of the links into the address bar, checking the URL preview shown
    2.3. Opening devtools, navigating to any of the links, checking the
    2.3.1. "File" column
    2.3.2. The first row of "Headers"
    2.4. Opening devtools console while on example.com, executing fetch(<any of the URLs above>), checking the visual error message (in this case, 404)

Note not all the 2.X behaviors apply to all of the 1.X test cases.

Example: https://example.com/?action=edit&username=%26action%3Ddelete is displayed as https://example.com/?action=edit&username=&action=delete in all 2.X cases, changing the semantic meaning from two query parameters (action, username) to three query parameters (action, username, action).

Actual results:

URL-encoded URL (sub)delimiters are overeagerly URL-decoded in the visual output in multiple components like link previews and devtools.

Semantic meaning as seen by the end user or developer is different than the actual semantics of the URL.

The actual bytes sent to the server seem consistent with the actual meaning of the URL, so it seems to be only a visual bug.

Expected results:

URL-encoded URL (sub)delimiters (reserved characters), including %2F (/) , %3F (?), %26 (&), %23 (#), should not be visually URL-decoded.

The Bugbug bot thinks this bug should belong to the 'DevTools::General' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.

Component: Untriaged → General
Product: Firefox → DevTools

Let's have individual bugs for each of the components that are impacted

Flags: needinfo?(nchevobbe)
See Also: → 2070848

(In reply to Nicolas Chevobbe [:nchevobbe] from comment #2)

Let's have individual bugs for each of the components that are impacted

Filed Bug 2069873 for link previews, let's have this one for DevTools

In the Netmonitor, we can see the URL-decoding in the "File" column (but interestingly, not in the URL one)
It's also visible in the headers panel, when the URL is not expanded (even though for the https://example.com/?action=edit&username=%26action%3Ddelete case, we can see that action isn't actually a param as it's not in blue, but that's way too subtle)
The URL in the console when enabling the "Requests" filer is also decoded (and shouldn't)

Flags: needinfo?(nchevobbe)
Severity: -- → S3
Priority: -- → P3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: