OK, ktoś musi o to zapytać: dzisiaj, 7.07.2015, została wydana nowa poprawka bezpieczeństwa dla Magento <1.9.2.
zaktualizuj swoje sklepy jak najszybciej!
Ale co się zmieniło? Czy znane są luki w zabezpieczeniach? Co najgorszego mogło się stać?
I czy jest coś, co może się zepsuć? Podobnie jak w przypadku SUPEE-5994, w którym nie można zastosować poprawki, jeśli brakuje katalogu downloadera ...
magento-1.9
security
patches
supee-6285
Fabian Schmengler
źródło
źródło
Odpowiedzi:
Jak już wspomniano, załatane luki opisano szczegółowo na tej oficjalnej stronie (nowe dokumenty sprzedawcy): http://merch.docs.magento.com/ce/user_guide/Magento_Community_Edition_User_Guide.html#magento/patch-releases-2015.html
Podsumowanie
Po załataniu kilku sklepów, oto co zebrałem:
Łatki tematyczne
Niektóre pliki motywów zostały załatane z dodaniem znaku ucieczki, aby zapobiec możliwym atakom XSS:
checkout/cart.phtml
checkout/cart/noItems.phtml
checkout/onepage/failure.phtml
rss/order/details.phtml
wishlist/email/rss.phtml
Jeśli Twój motyw (y) zawiera którykolwiek z tych szablonów lub dokonałeś modyfikacji bezpośrednio w
base/default
(powodzenia, jesteś wkręcony), musisz je załatać ręcznie:w szablonach płatności zamień wszystkie wystąpienia
z
w
wishlist/email/rss.phtml
, zamieńz
W
rss/order/details.phtml
, zamieńz
Uprawnienia
.htaccess
pliki zostały dodane dodownloader/Maged
idownloader/lib
uniemożliwiają bezpośredni dostęp do plików źródłowych. Jeśli używasz nginx, musisz dodać te reguły, aby osiągnąć to samo ( dziękuję Benowi Lessani za ten):Ale i tak zalecam wykluczenie
downloader
z wdrożeń systemu działającego na żywo, w tym przypadku nie musisz podejmować żadnych działań.Uprawnienia administratora (ACL)
Jeśli używasz ograniczonych kont administracyjnych, niektóre menu rozszerzeń innych firm mogą już nie działać. Powodem jest to, że domyślna wartość zwracana
Mage_Adminhtml_Controller_Action::_isAllowed()
została zmieniona ztrue
naMage::getSingleton('admin/session')->isAllowed('admin')
. Rozszerzenia, które nie zastępują tej metody w swoich kontrolerach administracyjnych, ponieważ nie używają ACL, teraz potrzebują uprawnienia „WSZYSTKO” .Jedynym rozwiązaniem jest załatanie rozszerzeń i dodanie tej metody do wszystkich kontrolerów administratora:
Lub jeśli faktycznie mają zasób ACL zdefiniowany w
etc/adminhtml.xml
:(widać, że łatka robi to samo
Phoenix_Moneybookers
w starszych wersjach Magento, takich jak 1.7, w których to rozszerzenie zostało uwzględnione)Aby uzyskać bardziej szczegółowe spojrzenie na ten problem i wyjaśnienie, jak zdefiniować brakujące zasoby ACL, zobacz: Błędy odmowy dostępu po zainstalowaniu SUPEE-6285
Możliwe błędy podczas stosowania poprawki
Wiadomość:
Powód:
default/modern
Temat został usunięty z instalacjiRozwiązanie: Dodaj
app/design/frontend/default/modern
ze świeżego pliku do pobrania Magento (powinna być w tej samej wersji co Twój sklep). Możesz także użyć tego lustra: https://github.com/firegento/magento . Następnie po pomyślnym zastosowaniu łatki możesz ponownie usunąć motyw.Wiadomość
Powód:
downloader
katalog został usunięty z instalacjiRozwiązanie: Dodaj
downloader
ze świeżego pliku do pobrania Magento (powinna być w tej samej wersji co Twój sklep). Możesz także użyć tego lustra: https://github.com/firegento/magento . Następnie po pomyślnym zastosowaniu łatki możesz ponownie usunąć katalog.Wiadomość: Coś podobnego do
Powód: pliki są przechowywane w
\r\n
(CRLF, podział linii Windows) lub\r
(CR, podział linii Mac) zamiast\n
(LF, podział linii Unix).Rozwiązanie: Wystarczy przekonwertować podziały wierszy, edytor tekstu lub IDE powinno to umożliwić.
źródło
_isAllowed
metody. Na szczęście w module mamy ACL i nie było żadnych dodatkowych działań oprócz dodania metody. Spotkałem też ten pierwszy komunikat o błędzie z przeniesionymdefault/modern
motywem (znalazłem również winowajcę dzięki Git). +1 za toVia @ http://blog.philwinkle.com/supee-6285-broken-down/
Po dodaniu:
Do jednego z zewnętrznych kontrolerów ta sekcja administracyjna znów zaczęła „działać” ...
Czyli wkrótce dostaniemy kolejną łatkę Magento? Wydaje się to większym problemem ...
źródło
Jeśli masz wiele rozszerzeń społecznościowych / lokalnych, powinieneś zwrócić szczególną uwagę na tę zmianę w SUPEE-6285, która wpływa
app/code/core/Mage/Adminhtml/Controller/Action.php
i jest w linii 666 w zależności od wersji łatki (jest to plik poprawek EE 1.14.0.1):Powyższe zmiany mają wpływ na wszystkie niestandardowe moduły, które nie wdrażają własnych zasobów administracyjnych, a dostęp zostanie odmówiony, chyba że dany administrator będzie miał pełne uprawnienia administratora.
Jeśli spojrzysz gdzie indziej w łatce, zobaczysz, że wiele zawartych modułów podstawowych zostało zaktualizowanych, jednak może to wpłynąć na wiele modułów stron trzecich, więc zwróć szczególną uwagę na przetestowanie rozszerzeń innych firm w łatce po stronie, aby sprawdzić nadal możesz uzyskać do nich dostęp!
źródło
Wygląda na to, że strona wydania łatki została zaktualizowana o informacje dotyczące jej wpływu.
Muszę jeszcze zainstalować na stronie produkcyjnej i przetestować
źródło
Pełna lista zmodyfikowanych plików po zastosowaniu poprawki jest również dostępna w
app/etc/applied.patches.list
źródło
W moim przypadku dla modułów stron trzecich dodanie poniższego kodu do kontrolerów adminhtml działało:
źródło