Skip to content

FoldPage 1.5-beta1 — Sanitizer-Allowlist (Testbuild)

Pre-release
Pre-release

Choose a tag to compare

@BEKO2210 BEKO2210 released this 12 Aug 06:10

Testbuild, kein Release. Debug-Variante von 1.5 (versionCode 7), gebaut aus dem Branch beta/sanitizer-allowlist.

Was neu ist

Der Sanitizer für gespeicherte Artikel ist von einer Blockliste auf eine Allowlist umgestellt. Gespeichertes HTML wird im eigenen Origin gerendert — was dort ausgeführt wird, kann die ganze Bibliothek aus IndexedDB lesen. Neu geschlossen:

  • <base href> — hätte jede relative URL der App umbiegen können
  • <svg> / <math> — deren Parser akzeptieren Konstrukte, die HTML nicht kennt (<animate attributeName="href">)
  • style — ein position:fixed;inset:0 hätte die eigene Oberfläche überdecken können
  • class — Kollisionen mit dem Stylesheet der App
  • URLs nur noch http(s), mailto, tel, #fragment, data:image

Unbekannte Elemente werden entpackt, ihr Text bleibt erhalten.

Gemessen

Tests 14/14 grün (neuer Test mit 7 Angriffsfällen)
Wortbestand über den Korpus (39 Artikel) 85.676 → 85.676, unverändert
Gespeicherte HTML-Bytes −22,5 %
Befund href-relative 1 → 0

Zum Testen

Der Sanitizer greift beim Speichern. Bereits gespeicherte Artikel behalten ihr altes HTML — für den Test bitte neue Artikel speichern (Wikipedia, heise, eine Seite mit Tabelle) und auf Bilder, seitwärts scrollende Tabellen und Links im Text achten.

Hinweise

  • Signiert mit dem Play-Upload-Key (SHA-256 84:50:…:72:72), lässt sich also über eine installierte 1.5 aktualisieren.
  • Es ist eine Debug-Variante: debuggable, ohne Minify, rund 5 MB statt 1,5 MB. Nicht für den Play Store, nicht zum Weitergeben.
  • SHA-256 der APK: b0fb98cfc74d0c04f4976bd8a58562fef5a18a1c32cbb4bf585da5216bc5d716