So überprüfen Sie, welche Module vom Sicherheitspatch SUPEE-6788 betroffen sind

71

Am 27. Oktober 2015 hat Magento den Sicherheitspatch SUPEE-6788 veröffentlicht. Gemäß den technischen Details erfordern 4 APPSECs, die repariert wurden, einige Überarbeitungen in lokalen und Community-Modulen:

  • APPSEC-1034, Adressierung unter Umgehung der benutzerdefinierten Administrator-URL (standardmäßig deaktiviert)
  • APPSEC-1063, Adressierung möglicher SQL-Injection
  • APPSEC-1057, Template-Verarbeitungsmethode, ermöglicht den Zugriff auf private Informationen
  • APPSEC-1079, um potenzielle Exploits mit benutzerdefinierten Optionsdateitypen zu beheben

Ich habe mich gefragt, wie ich überprüfen soll, welche Module von diesem Sicherheitspatch betroffen sind.

Ich habe die folgende Teillösung gefunden:

  • APPSEC-1034: Suche <use>admin</use>in der config.xml aller lokalen und Community-Module. Ich denke, dies sollte alle Module auflisten, die von diesem Problem betroffen sind.
  • APPSEC-1063: Suche nach addFieldToFilter('(und addFieldToFilter('`in allen PHP-Dateien von lokalen und Community-Modulen. Dies ist unvollständig, da auch Variablen verwendet werden können.
  • APPSEC-1057: Suchen Sie nach {{config path=und {{block type=in allen PHP-Dateien lokaler und Community-Module und filtern Sie alle Elemente aus der Whitelist heraus. Dies ist unvollständig, da es keine von Administratoren hinzugefügten Vorlagenvariablen enthält.
  • APPSEC-1079: keine Ahnung.

Es gibt auch eine Liste von Erweiterungen , die für APPSEC-1034 und APPSEC-1063 anfällig sind und von Peter Jaap Blaakmeer zusammengestellt wurden

Aad Mathijssen
quelle
Ich habe keine Ahnung, wie ich mich an @PeterJaapBlaakmeer wenden soll, aber ich habe eine Erweiterung, die der Liste hinzugefügt werden muss: FreeLunchLabs ConstantContact für die Admin-URL-Ausgabe
David Wilkins
6
Wer hat sich einige dieser Lösungen ausgedacht? Plötzlich wird es einen Blocktyp und eine variable Whitelist geben? Das Upgraden von Magento war schon immer mühsam, aber für Magento war es eine gute Aufgabe, es noch schmerzhafter zu machen.
Agop
6
He, Magento, das Geschenk, das immer weiter gibt. Ich habe gerade das Upgrade ALLER Module für die 1.9.2.1-Kompatibilität abgeschlossen. Die Entwickler von Wettmodulen hüpfen nur vor Freude oder rennen und schreien nach den Hügeln.
Fiasco Labs
3
In diesem Moment Patch auf nächste Woche verschoben - Verschieben Sie die Veröffentlichung des Sicherheitspatches auf Anfang nächster Woche und ändern Sie den Patch so, dass die Änderungen am Administrator-Routing standardmäßig deaktiviert sind. Dies bedeutet, dass der Patch das Update enthält, aber bei der Installation deaktiviert wird. Das neue Veröffentlichungsdatum und die Änderungen am Patch geben Ihnen zusätzliche Zeit, um Ihren Code zu aktualisieren, und geben Händlern die Flexibilität, diesen Teil des Patches zu aktivieren, sobald ihre Erweiterungen und Anpassungen aktualisiert wurden, um mit ihm zu arbeiten.
FireBear
1
PATCH wurde veröffentlicht: magento.com/security/patches/supee-6788-technical-details
Mukesh

Antworten:

55

SUPEE-6788 freigegeben und Admin-Routing-Änderungen standardmäßig deaktiviert. Dies bedeutet, dass der Patch das Update enthält, aber bei der Installation deaktiviert wird. Dies gibt Ihnen zusätzliche Zeit, um Ihren Code zu aktualisieren, und gibt Händlern die Flexibilität, diesen Teil des Patches zu aktivieren, sobald ihre Erweiterungen und Anpassungen aktualisiert wurden, um mit ihm zu arbeiten.

Um die Admin-Routing-Funktion für Erweiterungen nach der Installation zu aktivieren, gehen Sie zu Admin -> Erweitert -> Admin -> Sicherheit.

Magento CE 1.4-1.6 Patches sind verzögert und sollten in ungefähr einer Woche verfügbar sein!

SUPEE-6788 Ressourcenliste

Feuerbär
quelle
Können wir für Module, die nicht repariert werden können, dokumentieren, was im Allgemeinen geändert werden muss, damit diese Module manuell für die Arbeit mit 6788 gepatcht werden können? Zum Beispiel "X aus allen addFieldToFilterAnrufen entfernen ".
Tyler V.
1
Der Patch wurde veröffentlicht. Bitte aktualisieren Sie Ihre Antwort.
7ochem
@FireBear Ich habe in der Vergangenheit schon viele Male Magento-Patches angewendet. Aber ich habe Zweifel an SUPEE-6788. Muss ich es wie andere Patches anwenden und später kann ich die Admin-Routing-Funktion im Magento Admin-Panel aktivieren oder muss ich nur während der Installation aufpassen. Bitte vorschlagen.
Mukesh
2
@Muk ja, Sie können es als andere Patches installieren, müssen sich aber vor defekten Erweiterungen hüten, wenn Sie einige Erweiterungen aus der Liste verwenden - Sie müssen sie manuell reparieren oder auf Updates von Entwicklern warten, bis Sie die - Admin-Routing-Funktion aktivieren können für Erweiterungen
FireBear
@FireBear Könnten Sie uns Ihr Feedback zu community.magento.com/t5/Version-Upgrades/… (Vorher und Nachher im benutzerdefinierten Modul) geben?
Mukesh
21

In Anlehnung an andere Kommentare zum Erkennen von Konflikten haben wir bei ParadoxLabs ein Skript erstellt, um alle von APPSEC-1034 (Admin-Controller) und APPSEC-1057 (Whitelist) betroffenen Elemente aufzuspüren. Es wird auch versucht, fehlerhafte Controller zu beheben, da dies eine ziemlich präzise und invasive Änderung ist.

APPSEC-1063 (SQL Injection) oder APPSEC-1079 (Custom Options) werden nicht behandelt, aber es wäre großartig, wenn dies möglich wäre. Ich bin nicht sicher, wie ich diese mit irgendeiner Genauigkeit erkennen soll. Wir sind offen für Beiträge.

https://github.com/rhoerr/supee-6788-toolbox

Ryan Hoerr
quelle
3
Das sieht wirklich nützlich aus, gute Arbeit!
paj
fixWhitelists fügt Blöcke zu Whitelists hinzu, scheint aber nicht dasselbe für Variablen zu tun - können Sie das bitte bestätigen?
Zigojacko
1
@zigojacko Es deckt beides ab.
Ryan Hoerr
Ja, ich habe es herausgefunden, indem ich es ausprobiert habe. Ausgezeichnete Arbeit, super Job von ParadoxLabs :)
Zigojacko
Respekt gegenüber ParadoxLabs. Dieses Tool spart viel Arbeit.
DarkCowboy
5

Dieses PHP-Skript kann nützlich sein, um Magento-Code zu identifizieren, der vom vorgeschlagenen SUPEE-6788-Patch betroffen ist .

Dies ist in keiner Weise eine narrensichere Sicherheitsüberprüfung für diesen Patch, kann jedoch hilfreich sein, um Ihre Installation schnell nach den betroffenen Modulen und Codes zu durchsuchen.

Installieren Sie das Skript mit

wget https://raw.githubusercontent.com/gaiterjones/magento-appsec-file-check/master/magento_appsec_file_check.php

Bearbeiten Sie den Pfad zu Ihrer Magento-Installation

$_magentoPath='/home/www/magento/';

Lauf

php magento_appsec_file_check.php

Betroffene Dateien werden angezeigt:

*** Magento security file check ***
[1] APPSEC-1034, addressing bypassing custom admin URL
2 effected files :
<use>admin</use> found in  app/code/community/Itabs/Debit/etc/config.xml
<use>admin</use> found in  app/code/core/Mage/Adminhtml/etc/config.xml


[2] APPSEC-1063, addressing possible SQL injection
2 effected files :
collection->addFieldToFilter(' found in  app/code/community/Itabs/Debit/Model/Export/Abstract.php
collection->addFieldToFilter(' found in  app/code/community/Itabs/Debit/controllers/Adminhtml/OrderController.php
collection->addFieldToFilter(' not found.
collection->addFieldToFilter('\` not found.
collection->addFieldToFilter('\` not found.


[3] APPSEC-1057, template processing method allows access to private information
{{config path= not found.
{{block type= not found.


***********************************

Das Skript durchsucht Magento-Dateien mit grep nach Vorkommen des Codes, die möglicherweise die Abwärtskompatibilität mit Anpassungen oder Erweiterungen beeinträchtigen, wenn SUPEE-6788 angewendet wird.

paj
quelle
4

Es gibt bereits eine große Liste mit allen Erweiterungen, die mit SUPEE-6788 nicht mehr funktionieren

Weitere Informationen finden Sie hier: https://docs.google.com/spreadsheets/d/1LHJL6D6xm3vD349DJsDF88FBI_6PZvx_u3FioC_1-rg/edit#gid=0

Gary Olderman
quelle
Ich bin sehr gespannt, wie diese Liste zusammengestellt wurde.
mam08ixo
3
Es wurde Crowdsourcing betrieben; Die Originalquelle ist: docs.google.com/spreadsheets/d/…
Herman Slatman
Bitte entfernen Sie die Liste aus der oben genannten Seite und Link auf die Quelle statt, die up-to-date gehalten wird: docs.google.com/spreadsheets/d/...
Aad Mathijssen
1
Gibt es einen Ansprechpartner, der über aktualisierte Versionen informiert? Ich sehe dort mindestens 2-3 Module, die bereits aktualisiert wurden.
Versedi
-1

Die Liste der zulässigen Variablen, die über den Inhaltsfilter verarbeitet werden können, ist größer als im PDF angezeigt:

+ trans_email/ident_support/name
+ trans_email/ident_support/email
web/unsecure/base_url
web/secure/base_url
trans_email/ident_general/name
+ trans_email/ident_general/email
trans_email/ident_sales/name
trans_email/ident_sales/email
trans_email/ident_custom1/name
trans_email/ident_custom1/email
trans_email/ident_custom2/name
trans_email/ident_custom2/email
general/store_information/name
general/store_information/phone
general/store_information/address

(Ich habe +vor den Variablen, die nicht im PDF beschrieben wurden, eine hinzugefügt )

Die zulässigen Blöcke, die über den Inhaltsfilter verarbeitet werden können, sind:

core/template
catalog/product_new
Daniel van der Garde
quelle