Für Magento 1 ist ein neuer Sicherheitspatch verfügbar, der 13 APPSEC-Probleme behebt
https://magento.com/security/patches/supee-10266
Auf welche allgemeinen Probleme müssen Sie achten, wenn Sie diesen Patch anwenden?
SUPEE-10266, Magento Commerce 1.14.3.6 und Open Source 1.9.3.6 enthalten mehrere Sicherheitsverbesserungen, die dazu beitragen, Cross-Site Request Forgery (CSRF), nicht autorisiertes Datenleck und Sicherheitslücken bei der Remotecodeausführung von Administratoren zu schließen. Diese Releases enthalten auch Korrekturen für Probleme beim erneuten Laden von Bildern und beim Bezahlen in einem Schritt.
magento-1
patches
security
supee-10266
Luke Rodgers
quelle
quelle
Antworten:
Einige wichtige Informationen werden hier weitergegeben. Die meisten Dateien aus dem Magento-Backend. Die Dateilisten:
Das Wichtigste ist, diese drei Dateien zu überprüfen.
app / code / core / Mage / Checkout / controller / CartController.php zusätzliche Bedingung überprüfen Kunden-ID :
app / code / core / Mage / Sales / Model / Resource / Order / Item / Collection.php hinzugefügt Zusätzliche Methode addFilterByCustomerId in collection.
app / code / core / Mage / Core / Modell / Datei / Validator / Image.php
Wenn 'general / reprocess_images / active' false ist, wird die Bildwiederherstellung übersprungen. HINWEIS: Wenn Sie die Bildwiederherstellung deaktivieren, kann der Vorgang des Hochladens von Bildern Sicherheitsrisiken verursachen
Hoffe es wird hilfreich. Ich glaube
quelle
EE 1.14.2.4
Tippfehler in Zeile 726 des Patches:
autocomplete="new-pawwsord"
(app/design/adminhtml/default/default/template/backup/dialogs.phtml
)Der Patch scheint 2 Frontend-Dateien zu vermissen:
Gepatcht:
app\design\adminhtml\default\default\template\oauth\authorize\form\login-simple.phtml
Nicht gepatcht:
app\design\frontend\base\default\template\oauth\authorize\form\login-simple.phtml
app\design\frontend\rwd\default\template\oauth\authorize\form\login-simple.phtml
Vergessen Sie auch nicht, nach lokalen Überschreibungen zu suchen ... Ich musste manuell eine lokale Codepool-Überschreibung von patchen
app\design\adminhtml\default\default\template\sales\order\view\info.phtml
In der Antwort von quasiobject finden Sie Informationen zu einem Problem mit der Online - Kaufabwicklung . Enterprise-Support-Ticket erstellt und auf Antwort von Magento gewartet. Wenn Sie nicht auf einen aktualisierten Patch warten möchten
app\design\frontend\enterprise\default\template\giftcardaccount\onepage\payment\scripts.phtml
, können Sie die Anweisung "else" so ändern , dass sie das Element form_key wie folgt enthält:if (($('p_method_' + methodName) && $('p_method_' + methodName).checked) || elements[i].name == 'form_key') { ...
CE 1.9.2.4
Tippfehler in Zeile 694 des Patches:
autocomplete="new-pawwsord"
(app/design/adminhtml/default/default/template/backup/dialogs.phtml
)Die TrueOrderEdit Erweiterung muss geflickt werden ... Änderung
echo $_groupName
anecho $this->escapeHtml($_groupName)
in den folgenden Dateien:app\design\adminhtml\default\default\template\orderedit\sales\order\view\edit.phtml
app\design\adminhtml\default\default\template\orderedit\sales\order\view\history.phtml
app\design\adminhtml\default\default\template\orderedit\sales\order\view\info.phtml
Schließlich sollte diese Kernvorlagendatei wahrscheinlich auch mit demselben $ _groupName-Update gepatcht werden:
app\design\adminhtml\default\default\template\sales\order\view\edit.phtml
Alle 1.X-Versionen
Wenn Sie den
/downloader
Ordner (oder/downloader/template
) aus Ihrer Codebasis gelöscht haben, müssen Sie möglicherweise die .sh-Patchdatei manuell bearbeiten und den letzten Abschnitt entfernen, beginnend mitdiff --git downloader/template/login.phtml downloader/template/login.phtml
In Bezug auf den Fehler " Ungültiger Geheimschlüssel" finden Sie meine Antwort hier: Magento 1.9 Ungültiger Geheimschlüssel. Bitte aktualisieren Sie die Seite
quelle
Wir bei MageHost.pro haben ein Problem im Patch für Magento 1.9.1.1, Patch-Datei, gefunden
PATCH_SUPEE-10266_CE_1.9.1.1_v1-2017-09-15-04-59-56.sh
Error:
Ich habe es behoben, indem ich die Zeilen 454-472 durch 454-471 von ersetzt habe
PATCH_SUPEE-10266_CE_1.9.1.0_v1-2017-09-13-06-34-33.sh
Alter Code, Zeile 454-472:
Neuer Code, Zeilen 454-471:
quelle
In diesem Patch scheint nur 1 Formularschlüssel hinzugefügt worden zu sein.
Wenn Sie Probleme beim Löschen eines Widgets im Admin-Bereich haben, stellen Sie sicher, dass Ihre Lösch-URL vom Block generiert wird und dass Sie keine Überschreibungen dieses Blocks haben.
quelle
Kein Checkout auf EE 1.11+ möglich
In
app/design/frontend/enterprise/default/template/giftcardaccount/onepage/payment/scripts.phtml
der Form Schlüssel wurde Validierungscode entfernt und es bricht die gesamte Kasse, weitere Infos hier: https://magento.stackexchange.com/a/193442/2380Problemumgehung für den Moment (da ein V2 für EE 1.11+ veröffentlicht wird, um dieses Problem zu beheben): Setzen Sie die Vorlagendatei für beide
enterprise/default
undrwd/entreprise
Themes zurück.Unterschiede zwischen Patch und Version
EDIT: 1.9.3.6 wurde veröffentlicht, daher sind diese Informationen nicht mehr relevant
Eines der Hauptprobleme, das im Moment angesprochen wurde, ist, dass in Version 1.9.3.5 drei Sicherheitspatches fehlen. Daher empfehle ich dringend, nur zu patchen und noch nicht auf 1.9.3.5 zu aktualisieren
quelle
Ich versuche immer noch festzustellen, ob dies aufgrund von benutzerdefinierten Vorlagen in unserem Shop eindeutig ist. Es ist jedoch mit dem angewendeten Patch nicht mehr funktionsfähig, wenn wir zurückkehren. Ich wollte posten, falls andere das auch melden können.
In EE 1.14.2.0 können wir den Schritt "Zahlungsinformationen" beim Auschecken mit dem angewendeten Patch nicht überschreiten. Wir sind bis zu SUPEE-9767 v2 auf dem neuesten Stand, bevor wir den neuen Patch anwenden.
Unser Problem scheint darauf zurückzuführen zu sein, dass sie Folgendes entfernen
|| elements[i].name == 'form_key'
:Es ist aus der
enablePaymentMethods
Schleife entfernt. Anscheinend bleibt die verborgene form_key-Eingabe des Formulars deaktiviert und wird daher bei der Übermittlung nicht an den Controller übergeben.Fällt dann
$this->_validateFormKey()
aus und der Controller gibt nichts zurück.Update 1 (2017-09-18) : Ich habe am Freitag ein Ticket an den Magento-Support gesendet und wurde darüber informiert , dass noch keine Händler gemeldet haben. Anstatt Backups zu senden, habe ich versucht, bei einer Neuinstallation von 1.14.2.4 und 1.14.3.4 mit den entsprechenden Patches zu duplizieren. Ich konnte duplizieren und auf das Ticket antworten. Warten auf eine neue Antwort.
Hinweis: System> Konfiguration> Admin> Sicherheit> Formularschlüsselüberprüfung beim Auschecken aktivieren muss "Ja" sein. Wenn "Nein", wird das Problem nicht angezeigt.
Update 2 (18.09.2017) : Es wurde bemerkt, dass ich das Problem mit 1.14.3.6 nicht duplizieren konnte, aber als ich die obige Vorlagendatei überprüft habe,
|| elements[i].name == 'form_key'
ist es immer noch da. Scheint, dass die Patches es nicht entfernt haben sollten. Schickte diese Informationen auch an den Magento-Support.Update 3 (2017-09-20): Ich habe gerade einen Patch erhalten, um das Problem für 1.14.0.0–1.14.3.4 zu beheben, der nur die
form_key
Zeile in der Vorlage wiederherstellt . Fragen Sie den Support für SUPEE-10348.quelle
Wenn Sie zu Magento Connect wechseln und anschließend auf "Zurück zum Administrator" in der oberen rechten Ecke der Seite klicken. Nach der Rückkehr zum Admin-Dashboard erhalten Sie eine Fehlermeldung
rote Fehlermeldung: "Ungültiger geheimer Schlüssel. Bitte aktualisieren Sie die Seite."
Sobald Sie die Seite aktualisiert haben, ist sie verschwunden.
Aktualisiert: 15. September 2017
Wenn Sie sich bei Magento Admin anmelden, sagen wir Dashboard. Ohne sich vom Dashboard-Bereich abzumelden, öffnen Sie ein anderes Browserfenster im selben Browser und gehen zu example.com/admin. Es wird sich automatisch anmelden und genau dieselbe Meldung anzeigen
rote Fehlermeldung: "Ungültiger geheimer Schlüssel. Bitte aktualisieren Sie die Seite."
Bisher ist es das einzige Problem, das ich gefunden habe. Ich bin mir nicht mal sicher, ob es ein solides Problem ist, da die Nachricht nach der Aktualisierung verschwindet.
quelle
if ($_keyErrorMsg != '') { Mage::getSingleton('adminhtml/session')->addError($_keyErrorMsg); };
sollte seinif (!$_isValidFormKey){ Mage::getSingleton('adminhtml/session')->addError($_keyErrorMsg); };
Ich habe den Magento-Support nach dem folgenden Problem gefragt
Sie haben mir heute Morgen geantwortet und einen neuen Patch PATCH_SUPEE-10348 veröffentlicht .
Magento hat das Problem gerade gelöst, indem es in dieser Datei ein Zurücksetzen durchgeführt hat.
quelle
Ich bin auf ein Problem mit E-Mail-Vorlagen, benutzerdefiniertem CSS und Modman gestoßen. Wenn Sie z. B. ein Design
rwd/default
haben, das auf einem benutzerdefiniertenskin/frontend/package/theme/css/email-inline.css
Design basiert , und Ihre Skin-Dateien über einen Symlink über Modman eingebunden werden, wird das CSS nach dem Anwenden von SUPEE-10266 nicht zur E-Mail-Vorlage hinzugefügt. Das Problem ist, dass inMage_Core_Model_Email_Template_Abstract::_getCssFileContent
einige Prüfungen eingeführt wurden:Ich habe es
app/code/local/Mage/Core/Model/Email/Template/Abstract.php
vorerst mit einem dreckigen Hack mit Override gelöst . Ich musste die Prüfung abschwächen, damit die CSS-Datei aus dem Modman-Verzeichnis geladen werden kann:Es wird nicht mehr geprüft, ob der Pfad das vollständige Skin-Verzeichnis enthält, sondern nur, ob der Pfad die Zeichenfolge enthält
/skin
und ob dies nicht der Fall ist..
, wodurch Verzeichnisüberquerungsangriffe verhindert werden sollen.quelle
if (strpos($filename, '..') === false) { $positionSkinDirectory = 1; }
die Zeile zu überprüfen, nachdem sie$positionSkinDirectory
ursprünglich festgelegt wurde. Dies sollte helfen, das Durchsuchen von Verzeichnissen zu vermeiden.Hier ist die vollständige Liste der vom
autocomplete="new-pawwsord"
Tippfehler betroffenen Patches :quelle
In Magento 1.8.1 gab es Probleme mit folgenden Dateien:
Am Ende habe ich die neueste Magento-Version heruntergeladen, die den Patch NICHT enthält. In diesem Fall Magento 1.9.3.4 .
Das Ersetzen der "beschädigten" Dateien durch die Dateien aus dem Download behebt das Problem. Ich konnte den Patch erfolgreich anwenden.
Aber Vorsicht: Ich empfehle, die 3 Dateien nach dem Patchen wieder zurückzusetzen und die Dateien manuell zu bearbeiten.
quelle