["gelöst"] Fehlermeldungen des Shops bzgl. Outlook und Autodiscover nach Update auf 5.2. wg. X-CSRF

@Synonymous‍: schau mal hier (Punkt 2) - Ursache ist die Abfrage-Reihenfolge von Microsoft Outlook´s Autodiscovery Funktion - http://sebastianhetzel.net/exchange-autodiscover/

Outlook fragt folgende Stellen in der nachfolgenden Reihenfolge ab. Das Verhalten ist hardkodiert und kann somit nicht geändert werden. Werden die gewünschten Informationen über eine der Quellen bezogen, werden die restlichen Quellen nicht mehr abgefragt.

  1. Service Connection Point (SCP) aus dem AD
  2. Abfrage URL https://domäne/autodiscover/autodiscover.xml
  3. Abfrage URL https://autodiscover.domäne/autodiscover/autodiscover.xml
  4. Abfrage URL http://autodiscover.domäne/autodiscover/autodiscover.xml
  5. SRV Record _autodiscover._tcp.domäne
  6. Lokale autodiscover.xml

OMG… Typische MS Lösung :slight_smile:

In diesem Fall würde ich den Request blocken. Entweder direkt in der Firewall sofern möglich. Sonst in der Webserver-Konfig oder der .htaccess eine Regel setzen, die bei Request auf autodiscover/autodiscover.xml einen 404 retourniert und nicht den Controller aufruft. Ist mit mod_rewrite recht einfach zu lösen.

Ok. Wenn das die Lösung sein sollte, wie sieht die Regel in der .htaccess aus? Könnt ihr mir das sagen?

Ich denke sowas in diese Richtung:

RewriteEngine On
RewriteRule ^autodiscover/autodiscover.xml?$ - [F]

Ist nicht getestet aber wenn Du bei Google danach suchst, findest Du sicher eine Menge Lösungen.

Ok, nach einigem probieren brachte folgende Weiterleitung in der .htaccess den gewünschten Erfolg:

Redirect /Autodiscover/Autodiscover.xml https://autodiscover-s.outlook.com/Autodiscover/Autodiscover.xml

Ich hoffe das hilft allen mit ähnlichen Problemen.

Habe noch das Thema für eine bessere Auffindbarkeit umbenannt. :wink:

Ich habe das Ganze nochmals zusammengefasst:
https://synonymous.rocks/csrftokenvalidationexception-bei-shopware-systemen-in-verbindung-mit-outlook-autodiscover/

3 Likes

Hallo Leute ich habe das selbe problem mit dem Feinen unterschied dass es nicht Outlook ist sondern irgendwas anderes, und zwar macht irgendwas immer wieder anfragen und dies löst dieses X-CSFR Token Falsch aus. Hier mal ein Auszug aus den Hunderten Mails die ich durch shopware bekomme.

Weil ich habe Gegooglet und ich habe außer diesem “Outlook” Nix gefunden was darauf passen würde.

Villt hat jemand auch hier zu eine Hilfestellung.

Lieben Gruß und Danke

Keiner eine Ahnung?!?

Was für eine Anteilnahme.

 

Suche hier im Forum nach CSRF Protection und Du wirst mindestens zwei aktuelle Threads finden, in denen es um genau dieses Thema geht. Ich nehme an, dass es sich bei Dir um gewöhnliche Botnetze handelt.

Und noch ein formeller Tipp: Ohne sarkastische Aussagen ist die Hilfsbereitschaft in der Community für gewöhnlich größer.

@Synonymous schrieb:

Suche hier im Forum nach CSRF Protection und Du wirst mindestens zwei aktuelle Threads finden, in denen es um genau dieses Thema geht. Ich nehme an, dass es sich bei Dir um gewöhnliche Botnetze handelt.

Und noch ein formeller Tipp: Ohne sarkastische Aussagen ist die Hilfsbereitschaft in der Community für gewöhnlich größer.

Ich habe es ja Probiert, ich habe 2 Tage Gewartet, und keine Reaktion. Aber vielen dank trozdem.

Was meinst du denn kann mann diese Botnetze blocken?

lg. 

Zum Beispiel über eine WAF (Web Application Firewall) oder einige CDN Provider (zB. Cloudflare).

Nicht 100% Topic:
Es ist dennoch ein Fehlverhalten von Shopware, einen X-CSRF zu werfen, nur weil es ein POST ist. Zuerst müsste geprüft werden, ob es ein gültiger Aufruf (Seite, Controller, Action) ist - wenn nicht, muss ein 404 ausgegeben werden, dann kann man sich nämlich auch den X-CSRF sparen. Wieder etwas nicht sauber durchdachtes, was nur zu einer unnötigen Flut an Fehler-E-Mails führt.
Shopware sollte sich nur für die Dinge zuständig fühlen, für die Shopware auch zuständig ist.

[EDIT]
Damit kann man schön einen Shopbetreiber in den Wahnsinn treiben:
Simples Script in Endlosschleife laufen lassen und “irgendwas” mit wget und POST von einem Shopwareshop abrufen. Ist ja ne geile Mailbombe  Wearing-Sunglasses

 

Meine Meinung dazu:

  1. Fehlermeldungen per Mail schicken ist sehr fragwürdig. Ein professionell aufgesetztes System arbeitet hier mit Logfiles und Loganalyzer, im perfekten Fall sogar mit einem eigenen Logserver (Graylog etc.). Das Versenden von Exceptions per E-Mail würde ich in einem Produktivsystem niemals aktivieren. Es ist noch dazu nicht sehr zuverlässig (Mails landen im Spam, werden geblockt etc. pp.).
  2. Bei egal welchem Request - auch wenn er auf einen nicht existenzen Controller abzielt - möchte ich darüber informiert werden, dass hier jemand POST Daten schickt obwohl er nicht dazu berechtigt ist um präventiv weitere Schritte einleiten zu können, bevor der Bot oder Angreifer dann mal richtig zielt.

Das Argument „ich bekomme zu viele Mails“ ist dann in meinen Augen ein Fall von „selbst schuld“. Es gibt genügend Wege dieses Problem professionell zu lösen - wenn man diese nicht gehen möchte, darf man sich auch nicht beschweren.

Es gibt solche Ansichten, und solche - ich habe auch E-Mails aus - ich kann Dir aber auch gerne auf Deinem Server die Logfiles im Millisekundentackt füllen.
Generell sollte man sich aber die Frage stellen, an wen sich dieses Forum und z.B. die CE richtet - und ich denke mal, viele „Beiträge“ im Forum hier rocken da gar nicht, weil einfach an der „Zielgruppe“ vorbei. Wer alle Deine Ratschläge befolgen kann, ist nicht hier im Forum, weil er eh genug Kohle für einen Profidienstleister hat.  Wink

Also demnach sollte man nur halbgare Lösungen anstreben? Sehe ich eigentlich nicht so. Vor allem weil in diesem Fall die Lösung eine sehr einfache und kostengünstige ist…

@Synonymous schrieb:

Ich habe das Ganze nochmals zusammengefasst:
https://synonymous.rocks/csrftokenvalidationexception-bei-shopware-systemen-in-verbindung-mit-outlook-autodiscover/

Hi, leider führt der Link nicht mehr zu der Antwort. Ist diese noch anderswo verfügbar? 

Falls noch jemand über dieses alte Issue stolpert.

Habe einen fix dafür „contributed“ - sollte somit mit v5.6.8 behoben sein.

https://github.com/shopware/shopware/pull/2361