Co wprowadza patch Magento 2.3.3
W sieci znajdziesz już nowy update, który znacznie poprawia bezpieczeństwo. Jeszcze nie zaktualizowałeś swojego sklepu na Magento? Lepiej się nie ociągaj, jeśli nie chcesz, by ktoś nagle się do niego włamał. Sprawdź, co zyskasz dzięki aktualizacji.
W tym artykule dowiesz się:
- Co oferują Magento 2.3.3 i 2.2.10.
- Ile błędów z poprzednich wersji eliminują.
- W jaki sposób poprawiają bezpieczeństwo.
- Jak i dlaczego warto zaktualizować swój sklep.
Magento 2.3.3 i 2.2.10. Co oferują nowe wersje?
Magento 2.3.3 i 2.2.10 oficjalnie weszły na rynek 8 października 2019. Znajdziesz w nich:
- Ponad 200 poprawek społeczności Magento,
- 170 usprawnień funkcjonalnych platformy podstawowej,
- 75 ulepszeń bezpieczeństwa.
Modyfikacje dotyczą zarówno drobnego czyszczenia kodu podstawowego jak i znacznych ulepszeń w zarządzaniu zapasami i GraphQL. Poprawiają funkcjonalność i wydajność platformy, umożliwiają obsługę PHP 7.3.x jako dodatek do PHP 7.2.x oraz podnoszą jakość narzędzi handlowych, PWA, zarządzania zapasami, Magento Shipping czy Google Shopping. Pełną listę ulepszeń znajdziesz na oficjalnej stronie producenta.
Jak informuje Adobe, najnowsza łatka skupia się przede wszystkim na podwyższeniu poziomu bezpieczeństwa i lepszej ochronie danych. Eliminuje 54 krytyczne wady zabezpieczeń znalezione w wersji 2.3.2 i 2.2.9. Każde z nich oceniono na podstawie CVSS (Common Vulnerability Scoring System), czyli wspólnego systemu oceny podatności wprowadzonego przez Oracle w październiku 2006 roku (od kwietnia 2016 r. obowiązuje wersja 3.0. systemu). Jego zadaniem jest klasyfikacja nowych luk w zabezpieczeniach oprogramowania, biorąca pod uwagę łatwość wykorzystania luki, warunki wstępne ataku oraz jego ewentualne skutki w zakresie utraty integralności, poufności danych czy dostępności w systemie docelowym. CVSS przekształca otrzymane wyniki na ocenę w skali od 0,0 do 10,0 (im wyższa, tym większe jest zagrożenie atakiem). Otrzymane w ten sposób macierze ryzyka porządkuje się zgodnie z wynikiem bazowym, od góry do dołu.
W skali istotności CVSS ponad 20% błędów w Magento 2.3.2 i 2.2.9 oceniono w granicach 9-10. Najpoważniejszy pozwalał na zdalne wykonanie kodu z poziomu PageBuildera nieuwierzytelnionemu użytkownikowi.
Brzmi strasznie?
Security Update dla Magento Open Source i Commerce
Nowy zestaw łatek podnosi poziom bezpieczeństwa w darmowej i płatnej wersji platformy. Ulepszenia obejmują:
1. Integracje metody płatności zgodne przepisami PSD2
Magento 2.3.3 integruje podstawowe metody płatności z unijnymi przepisami PSD2 – dyrektywą płatniczą obowiązującą we wszystkich krajach UE od 14 września 2019 roku. Interfejs API metody Braintree został zaktualizowany do najnowszej wersji API JavaScript SDK v3 i jest teraz weryfikowany przez natywną usługę Braintree 3D Secure 2.0.
Zmiany dotyczą także Authorize.net. Teraz, używając pola żądania, można za jej pomocą przeprowadzić bezpieczną weryfikację 3D Secure. Odbywa się to z wykorzystaniem usługi CardinalCommerce.
Powyższe oznacza, że po aktualizacji Magento płatności przy wykorzystaniu Braintree i Authorize.net stają się bezpieczniejsze, lepiej weryfikowane i nadzorowane. Co dzięki temu zyskują klient, a co sklep?
- Klient: Na mocy PSD2 w procesie płatniczym pojawia się silne (podwójne) uwierzytelnianie klienta, który może dokonać transakcji wyłącznie po zidentyfikowaniu go za pomocą minimum dwóch niezależnych metod uwierzytelniania. Prawdopodobnie już się z tym spotkałeś, jeśli masz konto w banku, ponieważ od 14 września br., wykonując przelew internetowy na komputerze, musisz go potwierdzić również na telefonie komórkowym.
- Sklep: Dyrektywa PSD2 dopuszcza transakcje za pośrednictwem niezależnych usługodawców otrzymujących dane dostępowe i uwierzytelniających przelewy za pomocą modelu PIS (Payment Initiation Service). Plusem takiego rozwiązania jest zwolnienie z niektórych opłat (np. dla banku). Czyni to je tańszym niż dotychczasowe Pay by link.
Należy też dodać, że w najnowszej aktualizacji wycofano moduły płatnicze Cybersource i eWay. Zamiast nich producent sugeruje użycie alternatywnych rozszerzeń dostępnych w Marketplace.
2. Zwiększenie poziomu bezpieczeństwa skryptów krzyżowych XSS (cross-site scripting)
Patch pack zwiększa bezpieczeństwo skryptów krzyżowych XSS (cross-site scripting). Teraz zyskały one ochronę przed przyszłymi exploitami. W praktyce oznacza to, że po aktualizacji znacznie trudniej jest hakerom zaatakować i przejąć sklep, wprowadzając spreparowany kod maszynowy (shellcode).
Wcześniej – w wersjach 2.3.2 oraz 2.2.9 – ujawniono szereg luk w zabezpieczeniach przechowywanych XSS. Wykorzystując je, uwierzytelniony użytkownik mógł wprowadzać dowolne kody JavaScript na poziomach interfesju API, PageBuildera, źródła zasobów reklamowych, nazw witryn i ich tłumaczeń, konfigurowania metod płatności czy e-maila. Obecna łatka eliminuje te błędy.
3. Zdalne wykonanie kodu (RCE)
Najpoważniejsze podatności w zakresie RCE (Remote Code Execution) przed aktualizacją stwarzały realne zagrożenie przejęcia kontroli nad stroną. Najpoważniejszą, ocenioną na 10 w skali CVSS, było zdalne wykonanie kodu za pomocą spreparowanych szablonów PageBuilder, którego dokonać mógł nieuwierzytelniony użytkownik. Inne błędy umożliwiały (tu akurat już uwierzytelnionym osobom) wstawianie złośliwych fragmentów kodu oraz modyfikowanie go na poziomie środowiska Symphony, CMS, spreparowanego pliku archiwizacji konfiguracji czy poprzez manipulowanie układami strony.
Inne podatności dotyczyły m.in. iniekcji SQL czy XXE, używania komponentów ze znanymi lukami, fałszowania żądań po stronie serwera, arbitralnego usuwania plików, zepsutego uwierzytelniania, niewystarczającej obsługi sesji, skryptów między witrynami, nieograniczonego przesyłania plików, obejść bezpieczeństwa, błędów kryptograficznych, iniekcji zabezpieczeń XPath lub niewystarczającego rejestrowania i monitorowania. Pełną ich listę znajdziesz tu: https://magento.com/security/patches/magento-2.3.3-and-2.2.10-security-update
Całe szczęście nie potwierdzono na razie żadnych ataków, przejęć sklepów czy kradzieży danych. Większość z nich wymagałaby bowiem, aby agresor najpierw uzyskał status administratora witryny. Wykryte podatności wciąż jednak stwarzają realne zagrożenie w wersjach 2.3.2 i 2.2.9.
Jak zainstalować Magento 2.3.3?
Nową wersję Magento można pobrać bezpośrednio ze strony producenta: https://magento.com/tech-resources/download. Do instalacji użyj kompozytora (Composer) lub wybierz download w wersjach .zip, .tar.gz i tar.bz2 dostępne w 2 wariantach (z przykładowymi danymi bądź bez nich).
O dokonanie aktualizacji możesz zapytać specjalistów Magento.
Zaaplikowanie łatki spowoduje podniesienie aktualnie posiadanej przez Ciebie wersji Magento (np. z 2.3.2 do 2.3.2-p lub 2.3.3). Warto pamiętać, że v2.2.10 jest ostatnim upgradem dla v2.1.x. Zgodnie z zapowiedziami, od lipca 2019 roku nie pojawią się już żadne aktualizacje zabezpieczeń ani poprawki jakościowe dla tej wersji oprogramowania.
Adobe zaznacza, że użytkownicy, którzy wcześniej nie pobrali wydania Magento 2, powinni przejść bezpośrednio do Magento Commerce lub Open Source 2.3.3. Natomiast jeżeli już zaktualizowałeś Magento do przedpremierowej wersji poprawki (2.3.2-p1), powinieneś jak najszybciej poszerzyć ją do wersji 2.3.2-p2. Łatka zawiera krytyczne poprawki bezpieczeństwa dodane do Magento 2.3.3, 2.2.10, 1.9.4.3 i 1.14.4.3, ale nie zawarte w łatce 2.3.2-p1.
Podsumowanie
Jeżeli nie chcesz nagle utracić kontroli nad swoim sklepem, zaktualizuj swoje oprogramowanie. Zaleca się podniesienie platformy do wersji 2.3.X, jednak dla witryn pracujących na 2.2.X przeskok ten może okazać się bardzo pracochłonny, a przez to nieopłacalny.
Niezależnie od tego, które rozwiązanie wybierzesz, nie zwlekaj z aktualizacją, ponieważ tylko w ten sposób sprawdzisz, że Twój sklep będzie bezpieczny. Pamiętaj również, że zostając na wersji 2.2.X nie zyskasz dostępu do nowych funkcjonalności oferowanych w Magento 2.3.X.