Magento durch GuruINc bedroht und wie man mit SUPEE 6788 die Sicherheitslücke schliesst

laptop_file_image_list

Magento hat vor kurzem einen Patch bereit gestellt (SUPEE6788) der mehrere Sicherheitslücken schließt, einschließlich einer Lücke im Zend Framework. Über diese Lücke ist es einem Angreifer möglich auf Systemdateien zuzugreifen.

Sicherheitslücke nun öffentlich – automatisierte Angriffe drohen

Da das Problem mittlerweile öffentlich wurde wird es nicht lange dauern bis automatisierte Angriffe auf Magento-Installationen mit diesem oder ähnlichen Code bekannt werden. Daher ist es wichtig und unumgänglich das dieser Patch so schnell wie möglich eingespielt wird. Der Patch ist bereits in der Magento Enterprise Edition 1.14.2.2 und Community Edition 1.9.2.2 enthalten, so dass anstelle den Patch einzuspielen auch auf die aktuelle Magento Version aktualisiert werden kann.

Patch per SSH oder FTP einspielen

Der Patch kann entweder über SSH-Zugriff oder per FTP eingespielt werden. Wie man einen Patch einspielt haben wir bereits in einem frühreren Beitrag „Alle Magento Versionen von einer kritischen Sicherheitslücke betroffen“ erläutert. Eine Anleitung für den aktuellen Patch findet sich bei Magentary oder MageComp. Welche Fallstricke es gibt und was zu Beachten ist, hat Simon Sprankel auf Magento Stackexchange beantwortet.

Folgende Dateien sind von dem Patch betroffen:

  1. .htaccess
  2. .htaccess.sample
  3. app/code/core/Mage/Admin/Model/Block.php
  4. app/code/core/Mage/Admin/Model/Resource/Block.php
  5. app/code/core/Mage/Admin/Model/Resource/Block/Collection.php
  6. app/code/core/Mage/Admin/Model/Resource/Variable.php
  7. app/code/core/Mage/Admin/Model/Resource/Variable/Collection.php
  8. app/code/core/Mage/Admin/Model/Variable.php
  9. app/code/core/Mage/Admin/etc/config.xml
  10. app/code/core/Mage/Admin/sql/admin_setup/upgrade-1.6.1.1-1.6.1.2.php
  11. app/code/core/Mage/Adminhtml/Block/Permissions/Block.php
  12. app/code/core/Mage/Adminhtml/Block/Permissions/Block/Edit.php
  13. app/code/core/Mage/Adminhtml/Block/Permissions/Block/Edit/Form.php
  14. app/code/core/Mage/Adminhtml/Block/Permissions/Block/Grid.php
  15. app/code/core/Mage/Adminhtml/Block/Permissions/Variable.php
  16. app/code/core/Mage/Adminhtml/Block/Permissions/Variable/Edit.php
  17. app/code/core/Mage/Adminhtml/Block/Permissions/Variable/Edit/Form.php
  18. app/code/core/Mage/Adminhtml/Block/Permissions/Variable/Grid.php
  19. app/code/core/Mage/Adminhtml/controllers/Permissions/BlockController.php
  20. app/code/core/Mage/Adminhtml/controllers/Permissions/VariableController.php
  21. app/code/core/Mage/Adminhtml/etc/adminhtml.xml
  22. app/code/core/Mage/Catalog/Model/Product/Option/Type/File.php
  23. app/code/core/Mage/Core/Controller/Front/Action.php
  24. app/code/core/Mage/Core/Controller/Varien/Router/Admin.php
  25. app/code/core/Mage/Core/Helper/UnserializeArray.php
  26. app/code/core/Mage/Core/Model/Email/Template/Filter.php
  27. app/code/core/Mage/Core/Model/Resource/Setup.php
  28. app/code/core/Mage/Core/etc/config.xml
  29. app/code/core/Mage/Core/etc/system.xml
  30. app/code/core/Mage/Customer/Block/Account/Changeforgotten.php
  31. app/code/core/Mage/Customer/Block/Account/Resetpassword.php
  32. app/code/core/Mage/Customer/controllers/AccountController.php
  33. app/code/core/Mage/Downloadable/Model/Product/Type.php
  34. app/code/core/Mage/Eav/Model/Resource/Attribute/Collection.php
  35. app/code/core/Mage/Sales/Model/Resource/Order/Item/Collection.php
  36. app/code/core/Mage/Sales/controllers/DownloadController.php
  37. app/code/core/Mage/SalesRule/Model/Resource/Coupon/Collection.php
  38. app/design/adminhtml/default/default/layout/admin.xml
  39. app/design/frontend/base/default/layout/customer.xml
  40. app/design/frontend/base/default/template/customer/form/register.phtml
  41. app/design/frontend/base/default/template/customer/form/resetforgottenpassword.phtml
  42. app/design/frontend/base/default/template/persistent/customer/form/register.phtml
  43. app/design/frontend/default/iphone/layout/customer.xml
  44. app/design/frontend/default/modern/layout/customer.xml
  45. app/design/frontend/rwd/default/layout/customer.xml
  46. app/design/frontend/rwd/default/template/customer/form/resetforgottenpassword.phtml
  47. app/design/frontend/rwd/default/template/persistent/customer/form/register.phtml
  48. cron.php
  49. dev/tests/functional/.htaccess
  50. errors/processor.php
  51. lib/Unserialize/Parser.php
  52. lib/Unserialize/Reader/Arr.php
  53. lib/Unserialize/Reader/ArrKey.php
  54. lib/Unserialize/Reader/ArrValue.php
  55. lib/Unserialize/Reader/Bool.php
  56. lib/Unserialize/Reader/Dbl.php
  57. lib/Unserialize/Reader/Int.php
  58. lib/Unserialize/Reader/Str.php
  59. lib/Varien/Data/Collection/Db.php
  60. lib/Zend/Xml/Security.php

Patch verursacht Fehler in Plugins

Momentan sind noch viele Plugins nicht kompatibel mit dem Patch. Eine Übersicht findet sich hier.

Ist mein Shop betroffen?

Um das zu beantworten kann man den Online-Dienst MageReport nutzen. Im Blog von Sucuri kann man nachlesen welcher Schadcode auf Seiten eingeschleust wird.

Autor

Sebastian
Ich interessiere mich für eCommerce-Themen, vor allem im Zusammenhang mit dem Shopsystem Magento Commerce sowie alles rund um Web-Entwicklung und den damit verbundenen Möglichkeiten.

9 Kommentare zu “Magento durch GuruINc bedroht und wie man mit SUPEE 6788 die Sicherheitslücke schliesst

  • 5. November 2015 um 18:57
    Permalink

    Wer am Mac sitzt kann einfach die Konsole nutzen:
    ssh user@domain.de -p 222 (-p Port)

    Dann einfach Passwort für „user“ eingeben und wie oben schon beschrieben ins Magento-Directory gehen und den Patch starten. Cache leeren, fertig!

    Antwort
    • 9. November 2015 um 20:10
      Permalink

      Hallo Nolom,

      vielen Dank für den Hinweis für Mac-User.

      Beste Grüße
      Sebastian

      Antwort
  • 30. November 2015 um 13:39
    Permalink

    Vielen Dank Sebastian für diesen hilfreichen Artikel !

    Allgemein gefällt mir der Blog sehr gut… Ich werde in Zukunft wohl öfter mal „vorbeischauen“ 😉

    Beste Grüße

    Mario

    Antwort
  • 16. Dezember 2015 um 14:20
    Permalink

    Danke für die hilfreichen Tutorials! Ohne euch wäre ich wirklich ein wenig verloren manchmal. Ich schaue oft vorbei und werde das auch in Zukunft tun. Weiter so!

    Antwort
  • 21. Dezember 2015 um 13:57
    Permalink

    In letzter Zeit stand Magento leider häufiger unter Beschuss. 🙁 Schön das ihr auch darüber berichtet und auch eine Fehlerbehebung dokumentiert habt. Wir aktualisieren auch ständig unseren Blogpost (http://www.studio1.de/blog/sicherheitsluecken-in-websystemen.html), um über aktuelle Sicherheitslücken in CMS zu berichten. Viele befassen sich wahrscheinlich auch gar nicht oft mit den Themen. Wenn dann die eigenen Website oder der Onlineshop kompromittiert wurde, ist das Geschrei dann groß.

    Antwort
  • 22. Januar 2016 um 09:45
    Permalink

    Danke Sebastian für den wirklich informativen Artikel. Mag-Tuorials ist immer einen Besuch wert!

    Weiter so

    Antwort
  • 25. Januar 2016 um 16:35
    Permalink

    Hey Sebastian,

    danke für die wirklich sehr nützlichen Infos!

    Viele Grüße

    Peter

    Antwort
  • 26. Februar 2016 um 10:42
    Permalink

    Wirklich toll die Tutorials, die du immer machst. Sie haben mir schon in so mancher Situation extrem weiter geholfen. Danke dafür!

    Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

CAPTCHA

*