Links sicher auszeichnen mit „noopener“

20.02.201902 min

Im neuen Pagespeed Tool Google Lighthouse findet sich ein bis jetzt unbekannter Hinweis auf ein neues Attribut, das für Google wichtig zu sein scheint. In dem Tool wird dazu geraten externen Links das Attribut rel=“noopener“ hinzuzufügen. Google ordnet dies in Lighthouse unter der Kategorie „Best Practices“ ein, denn es gibt laut ihrer Informationsseite ein Sicherheitsproblem, welches auch die Ladezeit beeinträchtigen kann, wenn das Attribut nicht gesetzt ist.

rel-noopener screenshot

Sicherheitslücke mit target=“_blank“

Damit Nutzer länger auf einer potentiell wichtigen Seiten bleiben, möchte man normalerweise, dass der Besucher nach einem Klick auf einen Link die bestehende Seite nicht verlässt.

Abhilfe schafft dabei das Attribut target=“_blank“ im HTML Anchor Tag. Dies lässt einen neuen Tab im Browser öffnen, sobald ein Link angeklickt wurde.

Soweit so gut. Was jedoch viele nicht wissen, ist, dass die neue geöffnete Seite JavaScript auf der Quellseite ausführen darf. Hier kommt die Sicherheitslücke ins Spiel.


			<a href=".../rel-noopener.html" rel="opener" target="_blank">Klick mich</a>
		
Klick mich

Nach dem Klick auf den obigen Button wird die HTML Seite rel-noopener.html geöffnet. Diese bedient sich der JavaScript Funktion window.opener.document um auf der Quellseite ein Script auszuführen.

Sofern alles richtig funktioniert hat, sollte diese Seite nun einen roten Hintergrund haben.

Das Ändern der Hintergrundfarbe auf einer Quellseite ist ein harmloses Beispiel. Mögliche Szenarien, die ebenfalls ausgeführt werden könnten, wären z.B. eine Weiterleitung auf eine Phishingseite, eine Umwandlung sämtlicher Links zu einer anderen Zielseite und noch viel mehr….

Wichtig zu wissen ist, dass diese Funktion auch ausgeführt wird, wenn die Zielseite auf einer anderen Domain liegt.

Jetzt bitte einmal die Seite neu laden, damit alles wieder normal ist. Seite neue laden

Lösung mit rel=“noopener“

In diesem Beispiel haben wir auf dieser Seite (Quellseite) das Attribut rel=“noopener“ hinzugefügt. Es unterbindet das Ausführen von JavaScript auf der Quellseite.


			<a href=".../rel-noopener.html" target="_blank" rel="noopener" >Klick mich</a>
		

Klick mich

Wie zu sehen ist, wurde die Quellseite diesmal nicht geändert – obwohl die gleiche HTML-Datei aufgerufen wurde.

Unsere Empfehlung

Alle externen Links, die beim Klick die Seite in einem neuen Tab öffnen, sollten durch das Attribut rel=“noopener“ ergänzt werden.

Raymond Eiber ist SEO Expert bei der eology GmbH. Er berät KMUs ebenso wie Konzerne bei der Positionierung im Netz und erarbeitet für dieses langfristige SEO-Strategien.

Kontakt

Melde Dich
bei uns

  +49 9381 5829000