| Auto-Submit | +1 |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
From googleclient/chrome/chromium_gwsq/ipc/config.gwsq:
IPC: na...@chromium.org
📎 It looks like you’re making a possibly security-sensitive change! 📎 IPC security review isn’t a rubberstamp, so your friendly security reviewer will need a fair amount of context to review your CL effectively. Please review your CL description and code comments to make sure they provide context for someone unfamiliar with your project/area. Pay special attention to where data comes from and which processes it flows between (and their privilege levels). Feel free to point your security reviewer at design docs, bugs, or other links if you can’t reasonably make a self-contained CL description. (Also see https://cbea.ms/git-commit/).
IPC reviewer(s): na...@chromium.org
Reviewer source(s):
na...@chromium.org is from context(googleclient/chrome/chromium_gwsq/ipc/config.gwsq)
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +1 |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Auto-Submit | +1 |
| Commit-Queue | +1 |
icon->setSrc(execution_context->CompleteURL(icon->src()));This change resolves relative icon URLs synchronously in the renderer before they are converted into the Mojo options struct.
Why this is safe:
Consistency: Mutating the original V8 options object immediately ensures that the TypeConverter copies full URLs. This prevents the strict Mojo traits validation from rejecting the message due to invalid URLs.
No-op in Icon Loader: The asynchronous BackgroundFetchIconLoader still resolves these URLs later, but since they are already full URLs, it is a safe no-op.
Migration & Database Analysis:
New Registrations: Correctly stores the full resolved URL in the database.
Old Registrations: Old registrations with relative URLs were stored as "" in the database. This is completely harmless because the browser process uses the cached icon bitmap, not the URL, to display the icon. So no migration is needed.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +1 |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +1 |
| Commit-Queue | +2 |
| Auto-Submit | +1 |
icon->setSrc(execution_context->CompleteURL(icon->src()));This change resolves relative icon URLs synchronously in the renderer before they are converted into the Mojo options struct.
Why this is safe:
Consistency: Mutating the original V8 options object immediately ensures that the TypeConverter copies full URLs. This prevents the strict Mojo traits validation from rejecting the message due to invalid URLs.
No-op in Icon Loader: The asynchronous BackgroundFetchIconLoader still resolves these URLs later, but since they are already full URLs, it is a safe no-op.Migration & Database Analysis:
New Registrations: Correctly stores the full resolved URL in the database.
Old Registrations: Old registrations with relative URLs were stored as "" in the database. This is completely harmless because the browser process uses the cached icon bitmap, not the URL, to display the icon. So no migration is needed.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
+peter for background fetch reviewer
icon->setSrc(execution_context->CompleteURL(icon->src()));Daniel MurphyThis change resolves relative icon URLs synchronously in the renderer before they are converted into the Mojo options struct.
Why this is safe:
Consistency: Mutating the original V8 options object immediately ensures that the TypeConverter copies full URLs. This prevents the strict Mojo traits validation from rejecting the message due to invalid URLs.
No-op in Icon Loader: The asynchronous BackgroundFetchIconLoader still resolves these URLs later, but since they are already full URLs, it is a safe no-op.Migration & Database Analysis:
New Registrations: Correctly stores the full resolved URL in the database.
Old Registrations: Old registrations with relative URLs were stored as "" in the database. This is completely harmless because the browser process uses the cached icon bitmap, not the URL, to display the icon. So no migration is needed.
Done
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +1 |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Commit-Queue | +2 |
icon->setSrc(execution_context->CompleteURL(icon->src()));Daniel MurphyThis change resolves relative icon URLs synchronously in the renderer before they are converted into the Mojo options struct.
Why this is safe:
Consistency: Mutating the original V8 options object immediately ensures that the TypeConverter copies full URLs. This prevents the strict Mojo traits validation from rejecting the message due to invalid URLs.
No-op in Icon Loader: The asynchronous BackgroundFetchIconLoader still resolves these URLs later, but since they are already full URLs, it is a safe no-op.Migration & Database Analysis:
New Registrations: Correctly stores the full resolved URL in the database.
Old Registrations: Old registrations with relative URLs were stored as "" in the database. This is completely harmless because the browser process uses the cached icon bitmap, not the URL, to display the icon. So no migration is needed.
Daniel MurphyDone
re-opening, for background_fetch_manager.cc owner
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
[PWA] Restrict manifest icon URL schemes
Restrict the allowed schemes for icons in the Web App Manifest to
`http`, `https`, and `data`, OR a the same scheme as the document.
This mitigates blind SSRF risks where a malicious manifest could point
icons to internal network targets.
In the parser, icons with invalid schemes are ignored with a console
error. In Mojo traits, deserialization fails if an invalid scheme is
sent, protecting against compromised renderers.
Also, in BackgroundFetchManager, resolve relative icon URLs
synchronously in the renderer before converting to Mojo types. This
ensures that the new strict Mojo traits validation checks pass for all
valid relative URLs, while correctly persisting fully-resolved URLs in
the metadata database.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |