Hier ist die Liste der vom SUPEE-10570-Patch geänderten Dateien:
app/Mage.php
app/code/core/Mage/Admin/Helper/Data.php
app/code/core/Mage/Admin/Model/Block.php
app/code/core/Mage/Admin/Model/Resource/Block.php
app/code/core/Mage/Admin/Model/User.php
app/code/core/Mage/Adminhtml/Block/Catalog/Category/Edit/Form.php
app/code/core/Mage/Adminhtml/Block/Catalog/Product/Grid.php
app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Grid/Renderer/Sender.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/Grid.php
app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Info.php
app/code/core/Mage/Adminhtml/Block/System/Store/Edit/Form.php
app/code/core/Mage/Adminhtml/Block/Tag/Assigned/Grid.php
app/code/core/Mage/Adminhtml/Block/Widget/Grid/Column/Renderer/Store.php
app/code/core/Mage/Adminhtml/Block/Widget/Tabs.php
app/code/core/Mage/Adminhtml/Model/Config/Data.php
app/code/core/Mage/Adminhtml/Model/System/Store.php
app/code/core/Mage/Adminhtml/controllers/Catalog/ProductController.php
app/code/core/Mage/Adminhtml/controllers/CustomerController.php
app/code/core/Mage/Adminhtml/controllers/System/BackupController.php
app/code/core/Mage/Core/Model/Session/Abstract/Varien.php
app/code/core/Mage/Core/Model/Variable.php
app/code/core/Mage/Customer/Helper/Data.php
app/code/core/Mage/Customer/Model/Resource/Customer.php
app/code/core/Mage/Customer/controllers/AccountController.php
app/code/core/Mage/Customer/etc/config.xml
app/code/core/Mage/Customer/sql/customer_setup/upgrade-1.6.2.0.1.1.1-1.6.2.0.1.1.2.php
app/code/core/Mage/Downloadable/etc/config.xml
app/code/core/Mage/Downloadable/etc/system.xml
app/code/core/Mage/Downloadable/sql/downloadable_setup/upgrade-1.6.0.0.2.1.1-1.6.0.0.2.1.2.php
app/code/core/Mage/ImportExport/Model/Import.php
app/code/core/Mage/ImportExport/Model/Import/Entity/Product.php
app/code/core/Mage/Shipping/Model/Info.php
app/code/core/Mage/Widget/controllers/Adminhtml/Widget/InstanceController.php
app/design/adminhtml/default/default/template/catalog/product/attribute/set/main.phtml
app/design/adminhtml/default/default/template/customer/tab/view.phtml
app/design/adminhtml/default/default/template/customer/tab/view/sales.phtml
app/design/adminhtml/default/default/template/dashboard/store/switcher.phtml
app/design/adminhtml/default/default/template/downloadable/product/composite/fieldset/downloadable.phtml
app/design/adminhtml/default/default/template/downloadable/product/edit/downloadable/links.phtml
app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/creditmemo/name.phtml
app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/invoice/name.phtml
app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/name.phtml
app/design/adminhtml/default/default/template/newsletter/preview/store.phtml
app/design/adminhtml/default/default/template/report/store/switcher.phtml
app/design/adminhtml/default/default/template/sales/order/view/info.phtml
app/design/adminhtml/default/default/template/store/switcher.phtml
app/design/adminhtml/default/default/template/store/switcher/enhanced.phtml
app/design/adminhtml/default/default/template/system/convert/profile/wizard.phtml
app/design/adminhtml/default/default/template/tax/rate/title.phtml
app/design/adminhtml/default/default/template/widget/form/renderer/fieldset.phtml
app/locale/en_US/Mage_Catalog.csv
app/locale/en_US/Mage_ImportExport.csv
lib/Zend/Mail/Transport/Sendmail.php
BEARBEITEN
Nach der Bereitstellung auf meiner Produktwebsite (CE 1.7.0.2) ist mir ein kritisches Blockierungsproblem aufgefallen (Checkout-Prozess blockiert).
Der Kontext:
Nach Schritt 1 Adresse erstelle und protokolliere ich den Kunden direkt, er soll erst den nächsten Checkout-Schritt sehen.
Das Problem:
Nach supee-10570 wird der Checkout-Prozess nach Schritt 1 abgebrochen (falls ein Account erstellt wurde) und der Kunde wird zur Homepage weitergeleitet (wenn der Warenkorb leer + abgemeldet ist) = es ist unmöglich, seinen Checkout zu erreichen.
Die Notlösung:
Falls Sie ein ähnliches Problem mit Ihrer Kaufabwicklung / Kundensitzung haben, kommentieren Sie die Zeilen 414-430 aus app / code / core / Mage / Core / Model / Session / Abstract / Varien.php (die vom Patch hinzugefügten) , siehe unten).
// if ($this->useValidateSessionPasswordTimestamp()
// && isset($validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP])
// && isset($sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP])
// && $validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP]
// > $sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP] - $this->getCookie()->getLifetime()
// ) {
// return false;
// }
// if ($this->useValidateSessionExpire()
// && isset($sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP])
// && $sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP] < time() ) {
// return false;
// } else {
// $this->_data[self::VALIDATOR_KEY][self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP]
// = $validatorData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP];
// }
BEARBEITEN (2)
Ich denke, die folgende Bedingung wird immer false zurückgeben (Mage_Core_Model_Session_Abstract_Varien in den Zeilen 414-419, insbesondere in den Zeilen 417 + 418).
if ($this->useValidateSessionPasswordTimestamp()
&& isset($validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP])
&& isset($sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP])
&& $validatorData[self::VALIDATOR_PASSWORD_CREATE_TIMESTAMP]
> $sessionData[self::VALIDATOR_SESSION_EXPIRE_TIMESTAMP] - $this->getCookie()->getLifetime()
) {
return false;
VALIDATOR_PASSWORD_CREATE_TIMESTAMP ist immer größer als VALIDATOR_SESSION_EXPIRE_TIMESTAMP. Der Zeitstempel für das Ablaufen der Sitzung wird bei der Kontoerstellung neu definiert und ist daher zwangsläufig älter als der Initialisierungszeitpunkt der Sitzung.
Wenn Sie den Kunden zum Beispiel während des Bezahlvorgangs erstellen, wird dies falsch zurückgegeben und der Kunde wird nur gekickt (= Kasse beenden, Weiterleitung zur Startseite und Warenkorb leer). Ziemlich schlimm.
Ich habe dieses Problem dem Magento-Team gemeldet. Ich werde hier so schnell wie möglich Feedback geben.
BEARBEITEN (3)
Ein neuer Patch ist wip (auf der Magento-Patch-Download-Seite steht "SUPEE-10570 für CE 1.7.0.0 - AKTUALISIERTER PATCH ERWARTET, NICHT VERWENDEN (0,06 MB)").
EDIT (4) ~ 1 Monat nach dem ersten gemeldeten Blockierungsproblem
Hallo! Ich hoffe, Sie sind alle Waren (und ich hoffe, Sie haben den anfänglichen Patch-Status bis jetzt nicht beibehalten, es sei denn, Ihr Geschäftseinkommen war wahrscheinlich ernsthaft gesunken ^^).
Ich habe den folgenden Satz von der offiziellen Seite bemerkt: "Magento stellt jetzt einen aktualisierten Patch (SUPEE-10570v2) zur Verfügung, der dieses Problem nicht mehr verursacht. Beachten Sie jedoch, dass dieser neue Patch nicht mehr vor zwei Sitzungen mit geringem Risiko schützt, die mit der Behandlung zusammenhängen Sicherheitsprobleme, gegen die der Patch SUPEE-10570 geschützt ist. " von der offiziellen supee-10570 Seite.
Auf der Release-Seite finden wir endlich die v2-Datei (PATCH_SUPEE-10570_CE_v1.7.0.2_v2-2018-03-29-08-52-37.sh).
Ich habe die Änderungen im Detail untersucht. Schließlich scheint es so, als ob das magento-Team gerade beschlossen hat, einen Sicherheitsteil des Patches zu löschen. Hoffe, dass dieses Sicherheitsloch keine ernsthaften Schäden verursacht (es ist laut offizieller Anmerkung niedrig kritisch).
Achten Sie darauf, dass nach dem Zurücksetzen von v1 + Anwenden von v2 die folgenden Dateien in ihrem ursprünglichen Zustand zurückgesetzt werden (bevor v1 angewendet wurde):
app/code/core/Mage/Adminhtml/controllers/CustomerController.php
app/code/core/Mage/Customer/controllers/AccountController.php
app/code/core/Mage/Customer/Helper/Data.php
app/code/core/Mage/Customer/Model/Resource/Customer.php
PS: Natürlich werden auch einige andere Dateien modifiziert, bitte überprüfen Sie dies entsprechend.