Nach wochenlangem Warten auf den Patch heute (27.10.2015) wurde er veröffentlicht: SUPEE-6788
Viele Dinge wurden gepatcht und es wird empfohlen, installierte Module auf mögliche Schwachstellen zu überprüfen.
Ich öffne diesen Beitrag, um einige Einblicke in die Anwendung des Patches zu erhalten. Was sind die Schritte, um den Patch anzuwenden? Nach meinem Verständnis sind dies die Schritte:
- Korrigieren Sie Module mit Administratorfunktionen, die sich nicht unter der Administrator-URL befinden
- Korrigieren Sie Module, die SQL-Anweisungen als Feldnamen oder Escape-Felder verwenden
- Whitelist-Blöcke oder Direktiven, die Variablen wie
{{config path=”web/unsecure/base_url”}}
und verwenden{{bloc type=rss/order_new}}
- Potenzielle Exploits mit dem Dateityp "Benutzerdefinierte Option" ansprechen (keine Ahnung, wie das geht)
- Wenden Sie den Patch an
Ist das die richtige Vorgehensweise?
admin
security
patches
supee-6788
Iloiacono
quelle
quelle
.htaccess.sample
ebenso wie.htaccess
. Letzteres wird in den meisten Shops angepasst. Dadurch schlägt der Patch fehl => Sie müssen ihn vorübergehend durch die Originaldatei von Magento ersetzen, den Patch anwenden, Ihre eigene .htaccess-Datei wiederherstellen und die Änderung anwenden, die den Zugriff aufcron.php
manuell schützt (don ' Natürlich nicht mit dem Produktionssystem!)Antworten:
Im Allgemeinen können Sie den Patch wie alle vorherigen anwenden. Schauen Sie sich die offiziellen Unterlagen an und überprüfen Sie diesen SE-Beitrag . Aber ja, es gibt einige zusätzliche Punkte, die Sie überprüfen sollten, wenn Sie diesen Patch anwenden. Byte / Hypernode hat einen schönen Beitrag dazu.
template/customer/form/register.phtml
oder benutzerdefinierte hattemplate/persistent/customer/form/register.phtml
. Wenn dies der Fall ist, stellen Sie sicher, dass aform_key
.layout/customer.xml
. Stellen Sie in diesem Fall sicher, dass Sie die erforderlichen Änderungen aus dem Patch (customer_account_resetpassword
geändert incustomer_account_changeforgotten
) übernehmen.cron.php
über HTTP? Stellen Sie sicher, dass Sie besser verwendencron.sh
. Wenn dies nicht möglich ist, stellen Sie sicher, dass Sie cron.php über CLI PHP aufrufen. Wenn Sie aus irgendeinem Grund keinen richtigen Cronjob konfigurieren können und ihn über HTTP ausführen müssen, lesen Sie diese SE-FrageStellen Sie beim Aktualisieren sicher, dass Sie die Datei löschen
dev/tests/functional/.htaccess
. Es ist in Magento 1.9.2.2 nicht mehr vorhanden. Wenn Sie es behalten, sind Sie immer noch verwundbar.Überprüfen Sie in jedem Fall Ihre Seite nach dem Update mit MageReport , um festzustellen , ob alles gut gelaufen ist .
Es gibt auch einen technischen Blogbeitrag von Piotr , der die kritischen Änderungen beschreibt.
quelle
Es gibt eine Überprüfungsdatei, mit deren Hilfe Sie Probleme identifizieren können: https://github.com/gaiterjones/magento-appsec-file-check
Ich habe ein CLI-Skript daraus gemacht. https://github.com/Schrank/magento-appsec-file-check
quelle
Stellen Sie für Nginx sicher, dass Sie den Zugriff auf cron.php und den dev-Ordner blockieren. Wir benutzen diesen Block:
quelle
Ich habe den Patch gerade auf meinen 1.10.1 EE angewendet und dies verursacht Nebenwirkungen auf nativen Bildschirmen, da der Core nicht APPSEC-1063-kompatibel ist:
Beispiel:
Im
app/code/core/Mage/Customer/Model/Entity/Attribute/Collection.php
Sie finden 2
addFieldToFilter
Anrufe, die nicht APPSEC-1063-konform sind.Dies ist ein Verstoß gegen die Raster "Kunde"> "Attribut". Daher müssen Sie den Patch mit dem im PDF "SUPEE-6788-Technical% 20Details% 20.pdf" im Abschnitt "APPSEC-1063" empfohlenen Trick patchen
Ändern der mehreren
(wobei das $ -Feld komplexe (CASE .. WHEN THEN ...) SQL-Anweisungen enthält)
in
Sowohl die supee-6788-Toolbox von rhoerr als auch die gaiterjones haben diese Art von Problemen nicht erkannt. Ich habe alle anderen überprüft -> addFieldToFilter ($ und keine scheinen das Problem zu verursachen.
Andere betroffene 1.10-Kerndateien: (gefunden von Rhoerrs supee-6788-Toolbox)
Es kann mehr geben.
quelle