| Summary: | SVG Data URLs "taint" canvas as cross-origin | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Brooks <brooks> | ||||
| Component: | Canvas | Assignee: | Nobody <webkit-unassigned> | ||||
| Status: | RESOLVED CONFIGURATION CHANGED | ||||||
| Severity: | Normal | CC: | ahmad.saleem792, ap, dtrebbien, krit | ||||
| Priority: | P2 | ||||||
| Version: | 528+ (Nightly build) | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Attachments: |
|
||||||
|
Description
Brooks
2014-02-21 14:51:07 PST
Correction: Data URIs in UTF8 format (data:image/svg+xml;utf8) and Base64 format (data:image/svg+xml;base64) seem to both taint the canvas; the checks to ensure an SVG source is safe seem to only check an SVG included as a remote file, and don't scan Data URI contents themselves. (In reply to comment #1) > Correction: Data URIs in UTF8 format (data:image/svg+xml;utf8) and Base64 format (data:image/svg+xml;base64) seem to both taint the canvas; the checks to ensure an SVG source is safe seem to only check an SVG included as a remote file, and don't scan Data URI contents themselves. We load the SVG as SVG image which should be save enough, since SVG images already make sure that the security model is followed. A question: Can you load an embed an external SVG document in the Canvas? Seems to be fixed in Safari 8.0 (10600.1.25.1). I am not able to reproduce the issue in Safari 15.5 on macOS 12.4 and Safari behaves same as Firefox Nightly 103. Although, Chrome Canary 104 behaves differently and does not show any picture like Firefox and Safari. Should this be marked as "RESOLVED CONFIGURATION CHANGED"? Thank you for checking! Not sure what's up with Chrome, but that doesn't seem to be the same issue:
Uncaught TypeError: Cannot read properties of null (reading 'appendChild')
at Image.completionHandler (attachment.cgi?id=224914:26:17)
|