Neuinstallation auf 5.2.1. -> X-CSRF-Token is invalid.

Hallo Sebastian,

 

vielen dank für die Info.

Plugin wurde deinstalliert -> Problem besteht aber immer noch. Jedoch wie gesagt nur im Subshop, nicht im Hauptshop.

Weitere Lösungsmöglichkeiten?

Problem gelöst.

Den Jungs von AIXPRO sei Dank. Thumb-Up Wearing-Sunglasses

CSFR wurde per config.php abgeschaltet und jetzt funktioniert wieder alles…

Auch hier zu finden:

https://developers.shopware.com/developers-guide/csrf-protection/

aber leider nur englisch

Ich hatte den Fehler heute auf einer meiner Testinstallationen auch.

Überraschenderweise funktioniert das Versenden einer Mail über das Kontaktformular mit dem Firefox nicht, jedoch mit Chromium

Das ließ mich vermuten, dass etwas ein lokales Problem (außer das vor dem Bildschirm :wink: ) besteht.

Nach dem Löschen der Browser Cookies erschien der Fehler dann nicht mehr :slight_smile:

Gibts hierzu eine offizielle Stellungnahme, wie mit dem Problem umzugehen ist? Bei mir tritt dasselbe Problem im Checkout beim Zahlungswechsel auf. Was ist das für eine Funktion, die man in der Config erst deaktivieren muss, damit der Shop fehlerfrei läuft? Bitte geht der Sache mal auf den Grund und sprecht eine Handlungsempfehlung aus.

Grüße

Bei mir dasselbe, kommer hier nicht weiter. Habe zum Testen vom Support bereits ein Update von PayPal-Plus erhalten, Fehler besteht jedoch weiterhin.

Wenn ich das hier so lese: CSRF Protection sollte man das doch auf keinen Fall in der Config ausschalten?!

Letztlich ist es doch ein Shop-Bug, oder liege ich da jetzt falsch.

Es gibt hier keine Handlungsempfehlung, Ihr könnt das abschalten oder anlassen. Das ab und an der Fehler im Log steht, ist völlig in Ordnung. Der wird ja auch von Bots usw. geworfen. Aktuell gibt es noch eine Race-Confition die ab und an Auftritt, vor allem auf kleineren Hosting Paketen. Da gibt es mit der 5.2.13 ein Update. Wenn das Feature in eurem Shop nicht einwandfrei läuft, dann macht es aus, prüft in einer Testumgebung eure Anpassungen (bspw. alle Plugins aus, Standard Theme) und schaut ob es irgendwo knallt. Das ist ein zusätzliches Sicherheitsfeature.

Wir haben sämtliche Plugins überprüft und konnten das Sofortüberweisungs Plugin identifizieren.
Nachdem wir dieses Plugin im Plugin Manager deaktivierten, hatten wir keine Probleme mehr.
Sofortüberweisung wurde von uns darüber informiert.
Laut Shopware Store sollte das Plugin kompatibel mit 5.0.0 – 5.2.12 sein, was wohl nicht heißt, dass
Drittanbieter Plugins diese Sicherheits-Funktion unterstützten.
Wir verstanden „kompatibel mit 5.0.0 – 5.2.12“ jedoch in dem Sinne, dass es auch fehlerfrei ist.

Moin,

ich hatte nun bereits zum 2. Mal genau das selbe Problem. Hatte gerade im Testshop 2 Plugins upgedatet (DPD und Stripe Kreditkarte). Dann wollte ich eben ne Testbestellung machen. Es kommt dann aber direkt nach dem Login zum besagten Fehler X-CSRF-Token. Ein deaktivieren des Stripe Plugins etc. bringt hier überhaupt nichts. Erst nach löschen der Cookies funktioniert wieder alles einwandfrei. Blöde natürlich wenn dies beim Kunden auftritt, der löscht die Cookies nicht…

Shopware: 5.2.12
Browser: Chrome

Gruß
Daniel

Wir haben aktuell bei Version 5.2.14 folgende Einträge im  log:
 

core.ERROR: exception 'Shopware\Components\CSRFTokenValidationException' with message 'The provided X-CSRF-Token for path "/store/newsletter" is invalid. Please go back, reload the page and try again.' in /www/htdocs/xxxxxxx/store/engine/Shopware/Components/CSRFTokenValidator.php:161 Stack trace: #0 [internal function]: Shopware\Components\CSRFTokenValidator->checkFrontendTokenValidation(Object(Enlight_Controller_ActionEventArgs)) #1 /www/htdocs/xxxxxxxx/store/engine/Library/Enlight/Event/Handler/Default.php(91): call_user_func(Array, Object(Enlight_Controller_ActionEventArgs)) #2 /www/htdocs/xxxxxxx/store/engine/Library/Enlight/Event/EventManager.php(214): Enlight_Event_Handler_Default->execute(Object(Enlight_Controller_ActionEventArgs)) #3 /www/htdocs/xxxxxxx/store/engine/Library/Enlight/Controller/Action.php(143)usw. usw.

 

 Hallo, ich habe noch 5.2.12 und auch folgenden Fehler im Log: exception 'Shopware\Components\CSRFTokenValidationException' with message 'The provided X-CSRF-Token is invalid. Please go back, reload the page and try again.' in /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Shopware/Components/CSRFTokenValidator.php:161 Stack trace: #0 [internal function]: Shopware\Components\CSRFTokenValidator-\>checkFrontendTokenValidation(Object(Enlight\_Controller\_ActionEventArgs)) #1 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Library/Enlight/Event/Handler/Default.php(91): call\_user\_func(Array, Object(Enlight\_Controller\_ActionEventArgs)) #2 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Library/Enlight/Event/EventManager.php(214): Enlight\_Event\_Handler\_Default-\>execute(Object(Enlight\_Controller\_ActionEventArgs)) #3 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Library/Enlight/Controller/Action.php(143): Enlight\_Event\_EventManager-\>notify('Enlight\_Control...', Object(Enlight\_Controller\_ActionEventArgs)) #4 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Library/Enlight/Controller/Dispatcher/Default.php(523): Enlight\_Controller\_Action-\>dispatch('indexAction') #5 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Library/Enlight/Controller/Front.php(223): Enlight\_Controller\_Dispatcher\_Default-\>dispatch(Object(Enlight\_Controller\_Request\_RequestHttp), Object(Enlight\_Controller\_Response\_ResponseHttp)) #6 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Shopware/Kernel.php(178): Enlight\_Controller\_Front-\>dispatch() #7 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/vendor/symfony/http-kernel/HttpCache/HttpCache.php(487): Shopware\Kernel-\>handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #8 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Shopware/Components/HttpCache/AppCache.php(255): Symfony\Component\HttpKernel\HttpCache\HttpCache-\>forward(Object(Symfony\Component\HttpFoundation\Request), true, NULL) #9 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/vendor/symfony/http-kernel/HttpCache/HttpCache.php(258): Shopware\Components\HttpCache\AppCache-\>forward(Object(Symfony\Component\HttpFoundation\Request), true) #10 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/vendor/symfony/http-kernel/HttpCache/HttpCache.php(275): Symfony\Component\HttpKernel\HttpCache\HttpCache-\>pass(Object(Symfony\Component\HttpFoundation\Request), true) #11 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Shopware/Components/HttpCache/AppCache.php(133): Symfony\Component\HttpKernel\HttpCache\HttpCache-\>invalidate(Object(Symfony\Component\HttpFoundation\Request), true) #12 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/vendor/symfony/http-kernel/HttpCache/HttpCache.php(206): Shopware\Components\HttpCache\AppCache-\>invalidate(Object(Symfony\Component\HttpFoundation\Request), true) #13 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/engine/Shopware/Components/HttpCache/AppCache.php(114): Symfony\Component\HttpKernel\HttpCache\HttpCache-\>handle(Object(Symfony\Component\HttpFoundation\Request), 1, true) #14 /www/htdocs/w01537bc/potsdamer-schraubenhandel.com/shopware.php(113): Shopware\Components\HttpCache\AppCache-\>handle(Object(Symfony\Component\HttpFoundation\Request)) #15 {main}

Time:

 2017-01-25T13:56:22.586977+0100

Channel:

 core

request:

 { "uri": "/newsletter", "method": "POST", "query": { "module": "frontend", "controller": "newsletter", "action": "index" }, "post": { "subscribeToNewsletter": "1", "newsletter": "" } }

session:

 No session data available

shopId:

 1

 

Wer kann uns helfen? Bin für jeden Hinweis dankbar.

gruss

 

Hallo,

wir haben die gleichen Probleme. Aufgefallen ist uns das, als wir den Shopcache gelöscht haben. Beim Eintragen in den Newsletter, wird auf der nächste Seite ein CSRF-Token Fehler in die Logs geschrieben. Auch direkt nach der Anmeldung im Shop kommt nach dem Shopcache leeren ein “Ups ein Fehler ist aufgetreten” mit dem gleichen Logeintrag.

Finde ich persönlich auch unzufriedenstellend, vor allem das auf kleine Webhostingpakete zu schieben.

Das ist ein Fehler den Ihr beheben solltet!

Lieben Gruß

Gerade neue Fehlermeldungen von einem PayPal Mitarbeiter der die Integration testen wollte: 

Shopware\Components\CSRFTokenValidationException: The provided X-CSRF-Token for path "/register/ajax_validate_password" is invalid. Please go back, reload the page and try again. in /var/www/vhosts/XXX/httpdocs/engine/Shopware/Components/CSRFTokenValidator.php:161

Shopware\Components\CSRFTokenValidationException: The provided X-CSRF-Token for path "/register/saveRegister/sTarget/checkout/sTargetAction/confirm" is invalid. Please go back, reload the page and try again. in /var/www/vhosts/XXX/httpdocs/engine/Shopware/Components/CSRFTokenValidator.php:161

Shopware\Components\CSRFTokenValidationException: The provided X-CSRF-Token for path "/register/ajax_validate_email" is invalid. Please go back, reload the page and try again. in /var/www/vhosts/XXX/httpdocs/engine/Shopware/Components/CSRFTokenValidator.php:161

Wir haben die Prüfung deaktiviert. Derzeit ist die Funktion nicht zu gebrauchen.

Nächster Kunde, gleiches Problem. Es gab Beschwerden, dass die Kunden sich nicht anmelden können. Dort konnte auch wieder der CSRF-Token nicht gefunden werden…

Wir haben es auch dort deaktiviert…

Gibt es irgendwelche Einstellungen die man hier beachten sollte? PHP.INI oder Module die installiert sein sollten?

https://developers.shopware.com/developers-guide/csrf-protection/?_ga=1.146314100.1953330596.1481999934#disable-the-protection

Ja danke, wie bereits erwähnt, die Prüfung haben wir bereits deaktiviert. Ist aber nicht sinn und zweck. Ich würde gern wissen, was die Ursache dafür ist.

Eine Vermutung wäre, dass der Shop-cache zu klein bemessen ist, bzw. die Systemvorraussetzungen zu knapp, (bei uns ist es seit dem Serverumzug nicht mehr aufgetreten)

aber das sind alles nur Vermutungen…

Wurde der shop denn schon mal “debugt” ? Da findet sich oft so einiges was in normalen Tests nicht zu finden ist. Aber wie gesagt sind das nur Glaskugel-Ahnungen.

Hi,

beschäftige mich schon seit geraumer Zeit mit dem Problem.

Auffällig bei Auswertung der Logfiles war, dass bei mir immer mobile Geräte betroffen waren.

Mittlerweile kann ich die Fehlermeldung bewusst auslösen und gehe von folgendem Szenario aus:

Frau X surft via Tablet im Shop und legt was in den Warenkorb. Sie unterbricht ihre Shoppingtour aus welchem Grund auch immer und macht nach einer Stunde wieder weiter. Sie legt einen weiteren Artikel in den Warenkorb und will in ‚Warenkorb bearbeiten‘ die Stückzahl des ersten Artikels ändern – UUUPS… da kommt die Fehlermeldung!!

Sehr wahrscheinlich ist das nur eines von verschiedenen, die Fehlermeldungen auslösenden Szenarios, aber wenn die ursächlichen Faktoren bekannt sind, kann man auch etwas dagegen unternehmen

1 „Gefällt mir“

Hallo,

die crsf-protection ist ja grundsätzlich sinnvoll und sollte nicht abgeschaltet werden. Die produzierten Fehlermeldungen zeigen ja auch, dass sie funktioniert: anscheinend wird eine Fehlermeldung ja immer nach längerer Inaktivität auf der Shopseite produziert (dann wird der token abgefragt, der dann nicht mehr aktuell ist). Wer’s noch nicht glaubt und immer an irgendwelche Plugins denkt, die das auslösen: Mustershop von Shopware aufrufen, längere Zeit warten, im Footer den Newsletter anklicken -> Upps… Also scheint es ja ein grundlegendes Problem mit der crsf-protection zu sein.

Mein Vorschlag: wie wäre es vorerst mit einer simplen token-Fehlermeldung: „Session abgelaufen - bitte neu laden“ oder so ähnlich. Dann weiß der Nutzer worum es geht und wird nicht durch eine allgemeine Fehlermeldung verschreckt. Andere Websites machen das auch so, wenn man längere Zeit inaktiv ist.

Am besten wäre es natürlich, wenn die crsf-protection nur noch im tatsächlichen Angriffsfall eingreift… aber da müssen sich die Fachleute was einfallen lassen.

3 „Gefällt mir“