Es gibt es eine Spam-Attacke über die Inhalte über die Shopsuche in Shopify-Shops einbindet und es schafft diese Seiten in den Google-Suchergebnissen zu Listen. Einige unserer Kunden hat das Thema bereits betroffen und auch große Marken-Shops wie z.B. GFuel sind von dem Problem betroffen. Mitte Dezember 2022 hatten wir ersten Fälle, leider gibt es bisher keine generelle Lösung von Shopify um derartiges zu verhindern.
Prüfen ob der eigene Shopify-Shop betroffen ist
Grundsätzlich ist erstmal jeder Shop angreifbar, da Shopify die Suchergebnisseiten von Haus aus nicht durch die Robots.txt für Google sperrt oder via Meta-Tag auf „noindex“ stellt. Man sollte mit dem „Site:“-Kommando bei Google prüfen ob Spamseiten im Index sind. Außerdem würden die Webmastertools gegen Dezember 2022/Januar 2023 einen starken Anstieg der indexierten Seiten des eigenen Shops anzeigen. Teilweise wurden bei Shops tausende Spam-Seiten generiert und in den Google-Index geladen. Hier liegt natürlich auch das Problem für betroffene Shops.
So sieht das ganze in Google aus
Durch den Aufruf einer Shopify URL wie z.B. dieser:
https://gfuel.com/search?q=So%20kann%20beliebiger%20Text%20eingeschl%C3%A4u%C3%9Ft%20werden
kann man beliebigen Text in den Shop schleusen. Glücklicherweise nur Text und keinen Code, d.h. klickbare externe Links oder Scripte und somit ein „echtes“ Sicherheitsproblem liegt nicht vor. Jedoch will man ja nicht folgendes Bild im eigenen Shop sehen, erst recht nicht, wenn man über ein Google-Link in seinen Shop klickt:
Den Shopify Shop absichern
Das Problem kann einfach gelöst werden, indem man die robots.txt so erweitert, dass diese Seiten nicht mehr von Google gecrawlt werden können. Alternativ könnte man auch den Meta-Tag „<meta name=’robots‘ content=’noindex‘ />“ bei den unerwünschten Seiten setzen, unserer Erfahrung nach ist der weg über die robots.txt jedoch verlässlicher.
Zunächst öffnet den Theme Code-Editor unter „Vertriebskanäle > Onlineshop > Themes > „…“ > Code bearbeiten„
Unter „Vorlagen“ klickt man auf „Neue Vorlage hinzufügen“ und wählt „robots.txt“ aus.
Code in Robots.txt einbinden
Nach den Zeilen
{% for rule in group.rules %}
{{- rule -}}
{% endfor %}
müssen folgende Zeilen hinzugefügt werden
{%- if group.user_agent.value == '*' -%}
{{ 'Disallow: /collections/all*' }}
{{ 'Disallow: /*?q=*' }}
{{ 'Disallow: /collections/vendors/*' }}
{%- endif -%}
Das Ergebnis sollte dann ca. so aussehen:
Robots.txt-Anpassungen prüfen
Man sich im klaren sein, dass man mit dem falschen Code in der robots.txt Google ungewollt mitteilen könnte, dass der Shop nicht mehr bei Google gelistet werden soll. D.h. man sollte sehr genau prüfen, ob die Zeilen den gewünschten Effekt haben.
Am besten macht man das, indem man eine Liste von 10-20 willkürlich gewählten URLs aus seinem Shop erstellt. Es sollten viele Typen von Seiten enthalten sein: Produkte, Startseite, Collectionen, Blogposts, Login-Seite, Suchergebnisseite etc. einfach eine fast zufällige Liste erstellen.
Die Liste von URLs fügt man dann in den Robots-Checker von tamethebots ein und klickt auf „Test URLs„, das Ergebnis sollte so aussehen:
Auffällig ist, dass die Suche-Seite (Zeile 2) und die Login-Seite (Zeile 1) „Blocked“ sind. D.h. Google wird angewiesen Seiten von diesem Typ nicht mehr in den Google-Index aufzunehmen, wie von uns gewünscht. Die normalen Shopseiten (Zeile 3-5), Startseite, Kategorie & Produktseite sind jedoch „Allowed“ und somit für Google problemlos indexierbar