In diesem Artikel wird beschrieben, wie Sie eine browserübergreifende Kennung erstellen, indem Sie Schwachstellen in vier gängigen Browsern ausnutzen: Tor Browser, Safari, Chrome und Firefox. Links zu Demo , Quellcode .
Vor zwei Monaten bin ich bei der Untersuchung des Safari-Browsers versehentlich auf eine Sicherheitsanfälligkeit gestoßen, mit der ich mithilfe von JavaScript direkt vom Browser aus auf dem Computer eines Benutzers nach einer bestimmten Anwendung suchen kann.
24 24- . . , , .
, IDE Python, PostgreSQL . , , - , , Tor Browser. ?
, . , :
Linux. xdg-open, . Firefox - ;
, 8% ;
15% . , ;
-
. - Tor Browser PR .
. .
, . Deep Linking.
- , , .
Chromium
. ( ). ( ), .
, Extension () . , Extensions ( mailto:) . .
Chrome PDF Viewer, Extension. PDF .
:
location.replace();
input . , , ;
PDF , ;
1-3 , .
Firefox
same-origin policy. . , , JavaScript. about:blank, .
:
window.open;
location.replace;
document . , ;
2-3 .
Safari
, Firefox. , ( location.reload) .
Tor Browser
, -, . , .
Hier werden keine zusätzlichen Fenster benötigt. Wir verwenden nur iframe- Elemente und überprüfen die Richtlinie mit demselben Ursprung .
Sie können passiv prüfen: Wir prüfen alle 10 Sekunden im Hintergrund, ohne dass Benutzeraktionen erforderlich sind.
Sie können dies aktiv tun: Zeigen Sie ein Captcha mit 24 Zeichen an und überprüfen Sie es nach jedem Tastendruck.
Schlussfolgerungen
Diese Sicherheitsanfälligkeit besteht seit mehreren Jahren, und viele Browserentwickler sind sich dessen bewusst, gemessen an den Fehlerberichten. Ich konnte jedoch keine Websites finden, die es verwenden.
Links: