PDF-documentexport zet Markdown-URLs ongefilterd in AnnotationUrl #1642
Labels
No labels
accepted
bug
declined
docs
duplicate
enhancement
good first issue
in-progress
needs-info
privacy
security
triage
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
LibreKAT/Ocideck#1642
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Wat er misgaat
In de gezette document-PDF wordt elke link
pw.AnnotationUrl(href.trim())(lib/services/pdf/document_pdf_widgets.dart). Er is geen allowlist van schema's.Gevolg:
[tekst](javascript:…)of[tekst](file:///…)wordt een klikbare PDF-annotatie.file:staat niet inMarkdownSafetyScanner, dus zo'n link mag zelfs bij openen al in het document zitten.javascript:wordt bij openen geweigerd, maar de gebruiker kan hem daarna intypen en alsnog exporteren.De HTML-export sanitizeert hrefs via DOMPurify; de PDF-tak deelt die poort niet.
Stappen
Document met
[geheim](file:///etc/passwd)exporteren als PDF; de link is een URL-annotatie.Wat het met het formaat doet
De PDF is een audience-oppervlak. Een schema dat lokaal of in de viewer code of bestanden opent, hoort er niet in.
Regressie
Alleen
https:/http:/mailto:(en interne ankers) mogen een annotatie worden;file:,javascript:,data:en leeg schema → platte tekst. Test opbuildDocumentExportPdf.