Patch de segurança SUPEE-7405 - Possíveis problemas?

140

Está na hora de outro dia de atualização, o SUPEE-7405 para Magento 1.x está fora e a lista de correções é longa: https://magento.com/security/patches/supee-7405

Após a experiência com os últimos patches, tenho que perguntar novamente: quais são os possíveis problemas ao aplicar o patch e o que preciso considerar?

Muitos problemas de XSS foram corrigidos novamente, então espero corrigir temas personalizados manualmente. Algo mais? Existem alterações incompatíveis com versões anteriores?

Fabian Schmengler
fonte
2
GG não pode bater outro patch
Bobadevv 20/01
6
Um problema que encontramos hoje ao corrigir nossa versão (EE 1.14.0.1. ...) SUPEE-7405 Faz com que a tela Detalhes do pedido do administrador fique em branco / quebrada. A fila de pedidos está visível, mas clicar em qualquer pedido retorna uma página de detalhes de pedidos quebrados. Nós não descobrimos isso até depois de colocá-lo em produção. - Aguardando resposta do Magento Support.
precisa saber é o seguinte
6
Também acabamos de descobrir que nosso URL da API SOAP (/index.php/api/v2_soap/index/?wsdl=1) está gerando um erro 500. Se você confiar em SABÃO como eu faço ... não instalar o patch até que isso seja resolvido
Moonman67
4
Os arquivos enviados via painel de administração (por exemplo, upload de imagem do produto) agora não são legíveis mundialmente por padrão (0640). Os diretórios também não são executáveis ​​no mundo (0750). Isso pode causar problemas com imagens que não aparecem no site se o servidor da web for executado como um usuário diferente do php (por exemplo, php-fpm como usuário, servidor da web como ninguém para arquivos estáticos).
Rob Mangiafico
3
- todos os patches anteriores precisam ser aplicados (e se você não o aplicou, especialmente o Shoplift, você pode assumir que sua loja já está hackeada - verifique se há administradores desconhecidos, código estranho etc.) - a página do pedido pode estar quebrada no PHP 5.3 - o código usa a instrução PHP 5.4.
Piotr Kaminski

Respostas:

156

Atualização de 23 de fevereiro de 2016 : O patch foi atualizado para a V1.1, que corrige uma série de problemas importantes listados nesta postagem, e aqui está a lista:

  • Patch de mesclagem de carrinho (SUPEE-7978) : Os carros com itens idênticos agora são mesclados corretamente. Anteriormente, quando um carrinho com um item era mesclado com outro carrinho que continha o mesmo item, o Magento não mesclava os totais do carrinho corretamente. O carrinho agora inclui apenas um item e o total está correto.
  • Patch da API SOAP (SUPEE-7822) : A API SOAP Magento agora funciona conforme o esperado. Antes de instalar o patch SUPEE-7405 v1.0, uma solicitação de API causava um erro 500 e o Magento registrava uma exceção.
  • Compatibilidade com PHP 5.3 (SUPEE-7882) : O patch não era compatível com o PHP 5.3 para versões anteriores do Magento que ainda suportavam esta versão. Os comerciantes com esse problema não conseguiram visualizar as informações de vendas no Admin.
  • Permissões de upload de arquivo : o patch restaura permissões de arquivo menos restritivas (0666 para arquivos e 0777 para diretórios), pois as permissões mais estritas introduzidas pelo patch SUPEE-7405 original fizeram com que muitos comerciantes não pudessem exibir imagens de produtos carregadas, dependendo da configuração do provedor de hospedagem .

Após cavar o patch, aqui estão as coisas relevantes / interessantes que eu encontrei (NB: esta lista foi feita analisando o patch para CE 1.9.2.0-1.9.2.2, provavelmente há mais para os patches que afetam versões mais antigas do Magento) :

  • (corrigido na V1.1 do patch) O uso de, em []vez de array()neste patch, o torna incompatível com o PHP <5.4 (veja problemas conhecidos abaixo)
  • Como afirmado, a maioria das alterações são de escape de html e limpeza de dados em relação a problemas de XSS.
  • A validação da chave do formulário foi adicionada ao login do administrador emMage_Admin_Model_Observer
  • A validação da chave do formulário foi adicionada ao administrador esqueceu a senha emMage_Adminhtml_IndexController
  • A validação da chave do formulário foi adicionada à senha de redefinição do administrador emMage_Adminhtml_IndexController
  • A validação da chave do formulário foi adicionada à ação de exclusão do carrinho de front - end . A chave do formulário é adicionada ao getDeleteUrlde Mage_Checkout_Block_Cart_Item_Renderere validada no deleteActionde Mage_Checkout_CartController.
  • Os eventos agora são despachados em letras minúsculas (todos os arquivos de configuração afetados foram modificados, por exemplo, controller_action_postdispatch_checkout_onepage_saveOrdertorna-se controller_action_postdispatch_checkout_onepage_saveorder). Isso não afeta a configuração dos observadores locais . Mais informações aqui: https://twitter.com/foomanNZ/status/689924329065164800
  • Um novo validador para verificar se um arquivo carregado é uma imagem foi adicionado:Mage_Core_Model_File_Validator_Image
  • Uma nova seção Importar / Exportar aparece:System => Configuration =>Advanced > System => Escape CSV Fields
  • Novo evento enviado:admin_user_validate sobMage_Admin_Model_User
  • SVG não é uma extensão do favicon válido mais
  • Para aqueles que usam o Authorizenet (não), parece que algumas alterações foram feitas, mas não tenho certeza de como isso afeta o sistema. As alterações incluem um novo assistente de administração ( Mage_Authorizenet_Helper_Admin) usado para obter o URL da ordem de sucesso.
  • Nova classe Zend:Zend_Xml_Security . Seu objetivo é verificar a seqüência XML para possíveis ataques XXE e XEE. No entanto, não encontrei nenhuma referência a ele nos outros arquivos modificados.
  • Os arquivos enviados via painel de administração (ou seja, upload de imagem do produto) agora não são legíveis mundialmente por padrão (antes: 777 / depois: 640).
  • Os diretórios também não são executáveis ​​em todo o mundo (antes de 755 / depois: 750). Esses dois podem causar problemas com imagens que não aparecem no site se o servidor da web for executado como um usuário diferente do php (créditos: @Rob Mangiafico)
  • Em relação aos modelos de front-end : as únicas modificações feitas são o escape de dados , que não são disjuntores do sistema, mas ainda são recomendados para implementar em seu tema personalizado (e há apenas dois arquivos de front-end afetados, pouco trabalho;))

Problemas conhecidos após o patch:

Vou tentar manter esta lista o mais atualizada possível.

Antes de iniciar um novo problema / pergunta, verifique se você aplicou todos os patches anteriores , pois parece que muitos problemas decorrem da falta de patches.

Outra coisa é: se você modificou os arquivos principais, a aplicação do patch pode falhar. Se você está tendo um Hunk # failed aterro em um arquivo específico e tem 100% de certeza de que aplicou todos os patches anteriores, verifique se possui o arquivo original da sua versão do Magento, verificando o espelho: https://github.com / OpenMage / espelho magento /

Lista de arquivos afetados

Pode ser encontrado nesta página aqui: https://magento.stackexchange.com/a/98232/2380 (créditos @MagenX)

Apenas EE

  • Se você atualizou do Magento EE 1.14.2.x para o Magento EE 1.14.2.3 em vez de aplicar o patch, e também aplicou o patch de suporte SUPEE-5984 antes, é necessário reaplicá-lo novamente, pois não está incluído no release . => https://magento.stackexchange.com/a/98805/2380

Em relação ao Patch 7616:

Bons recursos sobre os patches Magento

Sinta-se livre para me informar se eu perder alguma coisa.

Raphael na Digital Pianism
fonte
1
Você mencionou o meu problema "Possível problema ao aplicar o 7616 antes de aplicar o 7405: SUPEE 7405 - Hunk # 2 falhou aos 43" como um problema de EE, quando estou realmente usando o CE.
Liam McArthur
1
Você está certo, meu mal, eu consertei.
Raphael no Digital Pianism
1
Os eventos agora são despachados em letras minúsculas : isso significa que precisamos verificar / alterar a configuração dos observadores locais?
precisa saber é o seguinte
1
@ hellimac Estou prestes a testar isso nas próximas duas horas, atualizarei o post se isso afetar a configuração dos observadores locais.
Raphael no Digital Pianism
5
@hellimac Não, os valores do config.xml também são convertidos para minúsculas quando lidos: twitter.com/foomanNZ/status/689924329065164800
Fabian Schmengler
34

Um problema que notei é que, se o seu site estiver usando uma versão inferior ao PHP 5.4, o patch não será compatível.

Na classe em Mage_Adminhtml_Helper_Salestorno da linha número 124. O código é:

$links = [];

Eu precisava estender isso para ser:

        // Patch not compatible with PHP version 5.3: overwrote Magento patch update

        $links = array();

Outro erro que encontrei parecia envolver os cookies que eu havia configurado. Depois que eu limpei meus cookies, todas as páginas foram carregadas corretamente.

Exemplo de erro:

Notice: unserialize() [function.unserialize]: Error at offset 0 of 13 bytes  in `/var/www/website/app/code/core/Mage/Core/Helper/Cookie.php` on line 83

Não tenho certeza se alguém já se deparou com esses problemas, mas espero que ajude!

Dazari
fonte
1
Eu vi a mesma coisa no código que corrigimos. O patch corrige simultaneamente erros específicos do PHP 5.3 e quebra a compatibilidade com o PHP 5.3.
Jim OHalloran
Não é realmente uma resposta, apenas mais informações: a aplicação do patch 7405 em um site Magento 1.5.1 (sim, eu sei ...) foi árdua e, uma vez que "bem-sucedido", causou erros de front-end e o administrador ficou completamente indisponível. O site fica no php v5.3.1 - felizmente eu poderia restaurá-lo novamente. Eu tenho uma outra instalação v1.9 em php 5.3.3, que estou testando ... sentindo hesitante para limpar o cache agora
Jon Holland
Pode confirmar, Mag 1.9.0.1 no php 5.3.3 tentando visualizar um registro de pedido no admin é apenas uma área de conteúdo em branco. A alteração sugere corrigir o problema. Bom lugar.
Jon Holland
22

Aqui está um problema que encontrei ao corrigir o Magento CE com o SUPEE-7405. Ele substitui a linha:

chmod($destinationFile, 0777);

com:

chmod($destinationFile, 0640);

no arquivo lib/Varien/File/Uploader.php

Isso interrompeu a exibição das imagens no back-end, pois essa permissão de arquivo deveria ser 644. Existe algum motivo para isso ter sido definido como 640?

Liam McArthur
fonte
1
Eu tenho o mesmo problema no Magento ver. A imagem 1.7.0.2 pode ser carregada com êxito, mas não aparece no back-end devido a um problema de permissão. Se eu alterar a permissão 0640 para 0644, a imagem poderá ficar visível, o que não é a solução exata. Então eu acho que as pessoas do Magento precisam corrigir isso ou dar qualquer outra solução para isso.
jyotiranjan.in
Presumo que o apache / nginx deve ser configurado para estar no mesmo grupo que o php-fpm cria a imagem, alguém sabe as implicações de segurança disso?
precisa saber é
É o suPHP que está me causando o problema, eu acho! Desativei e habilitei o php-cgi, o que aumentou a velocidade da página, mas ainda tenho o problema de permissão. Não tenho certeza sobre as implicações de segurança, então estou deixando como está. Não quero abrir nenhuma brecha na segurança! Prefiro editar o arquivo principal!
Liam McArthur
3
basicamente, o problema é que o apache não está sendo executado como o mesmo usuário do php. Alterar a permissão para 640 significa que os arquivos não são mais legíveis pelo mundo. Você precisará garantir que o apache esteja sendo executado como o mesmo usuário do php. Isso pode ser difícil se o seu cpanel executando uma boa abordagem seria definir o grupo como ninguém e fazendo isso por exemplo pegajoso:chown USERNAME:nobody -R public_html find ./public_html -type d -exec chmod g+s {} \;
rob3000
Alguma solução para isso?
Arvind07
21

Ao se candidatar ao Magento 1.7.0.0, está tentando remover um comentário no app/design/adminhtml/default/default/template/authorizenet/directpost/iframe.phtml

-/* @var $_helper Mage_Authorizenet_Helper_Data */

1.7.0.0 - https://raw.githubusercontent.com/OpenMage/magento-mirror/1.7.0.0/app/design/adminhtml/default/default/template/authorizenet/directpost/iframe.phtml

que não foi adicionado até 1.7.0.1 https://raw.githubusercontent.com/OpenMage/magento-mirror/1.7.0.1/app/design/adminhtml/default/default/template/authorizenet/directpost/iframe.phtml

rob3000
fonte
Acabei de adicionar essa linha na versão 1.7.0.0 iframe.phtml e executei o patch novamente e foi bem
Danny Z
1
@DannyZ mesma coisa aqui apenas pensei que eu iria fazer melhor nota do mesmo em algum lugar :)
rob3000
19

esses arquivos corrigidos, você pode ver qualquer impacto possível:
modelo: modelos de administração, em sua maioria corrigidos.

+++ app/design/frontend/base/default/template/rss/order/details.phtml
+++ app/design/frontend/base/default/template/catalog/product/view/options/type/file.phtml
+++ app/design/adminhtml/default/default/template/sales/order/view/info.phtml
+++ app/design/adminhtml/default/default/template/sales/order/totals/discount.phtml
+++ app/design/adminhtml/default/default/template/sales/items/renderer/default.phtml
+++ app/design/adminhtml/default/default/template/sales/items/column/name.phtml
+++ app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/name.phtml
+++ app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/invoice/name.phtml
+++ app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/creditmemo/name.phtml
+++ app/design/adminhtml/default/default/template/catalog/product/composite/fieldset/options/type/file.phtml
+++ app/design/adminhtml/default/default/template/bundle/sales/shipment/view/items/renderer.phtml
+++ app/design/adminhtml/default/default/template/bundle/sales/shipment/create/items/renderer.phtml
+++ app/design/adminhtml/default/default/template/bundle/sales/order/view/items/renderer.phtml
+++ app/design/adminhtml/default/default/template/bundle/sales/invoice/view/items/renderer.phtml
+++ app/design/adminhtml/default/default/template/bundle/sales/invoice/create/items/renderer.phtml
+++ app/design/adminhtml/default/default/template/bundle/sales/creditmemo/view/items/renderer.phtml
+++ app/design/adminhtml/default/default/template/bundle/sales/creditmemo/create/items/renderer.phtml
+++ app/design/adminhtml/default/default/template/authorizenet/directpost/iframe.phtml

núcleo / libs:

+++ lib/Varien/Io/File.php
+++ lib/Varien/File/Uploader.php
+++ app/code/core/Zend/Xml/Security.php
+++ app/code/core/Mage/Sales/Model/Quote/Item.php
+++ app/code/core/Mage/Sales/Model/Quote/Address.php
+++ app/code/core/Mage/Sales/Helper/Guest.php
+++ app/code/core/Mage/Rss/Helper/Order.php
+++ app/code/core/Mage/Rss/Block/Catalog/Salesrule.php
+++ app/code/core/Mage/Review/controllers/ProductController.php
+++ app/code/core/Mage/Paypal/controllers/PayflowadvancedController.php
+++ app/code/core/Mage/Paypal/controllers/PayflowController.php
+++ app/code/core/Mage/Newsletter/Model/Queue.php
+++ app/code/core/Mage/Newsletter/Model/Observer.php
+++ app/code/core/Mage/ImportExport/Model/Import/Entity/Abstract.php
+++ app/code/core/Mage/ImportExport/Model/Export/Adapter/Csv.php
+++ app/code/core/Mage/ImportExport/Model/Export/Adapter/Abstract.php
+++ app/code/core/Mage/Downloadable/controllers/CustomerController.php
+++ app/code/core/Mage/Dataflow/Model/Convert/Parser/Csv.php
+++ app/code/core/Mage/Customer/controllers/AccountController.php
+++ app/code/core/Mage/Core/Model/Session.php
+++ app/code/core/Mage/Core/Model/Input/Filter/MaliciousCode.php
+++ app/code/core/Mage/Core/Model/File/Validator/Image.php
+++ app/code/core/Mage/Core/Model/Email/Template/Filter.php
+++ app/code/core/Mage/Core/Model/Email/Queue.php
+++ app/code/core/Mage/Core/Model/Config.php
+++ app/code/core/Mage/Core/Model/App.php
+++ app/code/core/Mage/Core/Helper/Data.php
+++ app/code/core/Mage/Checkout/controllers/OnepageController.php
+++ app/code/core/Mage/Checkout/controllers/CartController.php
+++ app/code/core/Mage/Checkout/Block/Cart/Item/Renderer.php
+++ app/code/core/Mage/CatalogInventory/Helper/Minsaleqty.php
+++ app/code/core/Mage/Catalog/Model/Resource/Product/Attribute/Backend/Image.php
+++ app/code/core/Mage/Catalog/Model/Category/Attribute/Backend/Image.php
+++ app/code/core/Mage/Catalog/Block/Product/View/Options/Type/Select.php
+++ app/code/core/Mage/Authorizenet/controllers/Adminhtml/Authorizenet/Directpost/PaymentController.php
+++ app/code/core/Mage/Authorizenet/Helper/Data.php
+++ app/code/core/Mage/Authorizenet/Helper/Admin.php
+++ app/code/core/Mage/Adminhtml/controllers/IndexController.php
+++ app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Image/Favicon.php
+++ app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Image.php
+++ app/code/core/Mage/Adminhtml/Model/System/Config/Backend/File.php
+++ app/code/core/Mage/Adminhtml/Helper/Sales.php
+++ app/code/core/Mage/Adminhtml/Helper/Catalog/Product/Edit/Action/Attribute.php
+++ app/code/core/Mage/Adminhtml/Block/Widget/Grid.php
+++ app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Tab/History.php
+++ app/code/core/Mage/Admin/Model/User.php
+++ app/code/core/Mage/Admin/Model/Resource/User.php
+++ app/code/core/Mage/Admin/Model/Redirectpolicy.php
+++ app/code/core/Mage/Admin/Model/Observer.php

==================================================== ======================= ps apenas para manter todos juntos, criamos um multipatch "sem pensar" para consertar muitos servidores com várias instalações magento. multipatch-7405.sh

MagenX
fonte
Agradável! Não consigo lembrar substituir esses arquivos temáticos assim remendo .sh pode simplesmente fazer a sua coisa: D
Bobadevv
1
Bem feito. O multipatch é uma ótima idéia; Eu só queria que Magento lançado SHA1 hashes para seus patches para que pudéssemos verificar se elas correspondem fontes externas
philwinkle
isso pode ser simplificado acessando o repositório da web magento diretamente para curvar todos os patches, mas tivemos alguns problemas com ele. e é necessário inserir seus detalhes de login ... magento wtf ...
MagenX
14

Aqui está o meu plano de teste básico:

  • Aplicar cupom
  • Entre para o administrador
  • Forçar o administrador a alterar a senha
  • Exportar um CSV
  • Importar um CSV
  • Redefinir senha como administrador e cliente
  • Crie um pedido no administrador
  • Crie e faça o pedido no front-end como convidado
  • Crie e faça o pedido no front-end como cliente
  • Adicionar uma imagem a um produto
  • Criar uma nota de crédito
  • Crie uma fatura
Brideo
fonte
como exatamente esta lista me ajudará a entender os erros causados ​​por esse patch ou apenas um desenvolvedor curvou as mãos ???
MagenX 21/01
@MagenX Não sei o que significa um desenvolvedor com mãos curvas. Mas quando diferi o patch, fiz uma lista de coisas que poderiam ser problemáticas.
Brideo 21/01
@MagenX, então, depois de aplicar o patch, eu verificaria essas áreas, desculpe se não foi útil.
Brideo 21/01
Ah, suíte básica de testes para depois das verificações de patches para garantir que você encontre o ai antes de seus clientes e trabalhadores ... Faz todo o sentido, pois exercita áreas afetadas por arquivos corrigidos.
Fiasco Labs
Este seria um (melhor?) Resposta boa para essa pergunta aqui: magento.stackexchange.com/questions/98565/...
Anna Volkl
8

Captura de tela para a página de detalhes do pedido de administrador, se estiver mostrando esse tipo de problema, siga as instruções abaixo para que funcione para mim !!insira a descrição da imagem aqui

Solução

Altere a linha 124 em app / code / core / Mage / Adminhtml / Helper / Sales.php de $ links = []; para $ links = array ();

Randhir Yadav
fonte
7

Sempre que instalamos um patch para um de nossos clientes, usamos a seguinte lista de verificação:

  • Faça um backup completo dos arquivos e banco de dados do site.
  • Verifique se todos os patches anteriores foram instalados com sucesso (podem ser vistos no app/etc/applied.patches.listarquivo)
  • Após a instalação bem-sucedida do patch, limpe o cache e faça um pedido de teste para garantir que tudo funcione.

Eu acho que é realmente tudo o que existe. Os patches foram projetados para serem instalados rapidamente e sem problemas. 9 em cada 10 vezes eles serão instalados perfeitamente e, nas outras vezes, temos backups. Contanto que você não esteja mexendo com os arquivos principais, tudo ficará bem.

Gary Olderman
fonte
arquivo provavelmenteapp/etc/applied.patches.list
MagenX
3
Não acho que isso responda à pergunta. O OP está se referindo ao SUPEE-6788, que exigia toneladas de trabalho manual em extensões de terceiros, não como aplicar um patch.
Robbie Averill
O OP está se referindo ao SUPEE-6788 Robbie, não ao 6788.
Gary Olderman
Desculpe, para esclarecer a pergunta é obviamente sobre o 7405, mas é feita à luz do pesadelo que foi 6788 - é contexto
Robbie Averill
6

arquivos afetados aqui para Magento EE

> -e 2016-02-11 03:14:54 UTC | SUPEE-7405-EE-1-14-2-2 | EE_1.14.2.2 | v1 | 91465c744a824111902e2911fd63fd8cb6c32f05 | Tue Jan 19 14:27:03 2016 +0200 | e1fc3c59c9..91465c744a
patching file app/code/core/Enterprise/Checkout/Block/Adminhtml/Manage/Form/Coupon.php
patching file app/code/core/Enterprise/GoogleAnalyticsUniversal/Block/Ga.php
patching file app/code/core/Enterprise/PageCache/etc/config.xml
patching file app/code/core/Enterprise/Pbridge/etc/config.xml
patching file app/code/core/Enterprise/Pci/Model/Observer.php
patching file app/code/core/Enterprise/Pci/Model/Resource/Admin/User.php
patching file app/code/core/Enterprise/Pci/etc/config.xml
patching file app/code/core/Enterprise/Persistent/etc/config.xml
patching file app/code/core/Enterprise/SalesArchive/etc/config.xml
patching file app/code/core/Enterprise/WebsiteRestriction/etc/config.xml
patching file app/code/core/Mage/Admin/Model/Observer.php
patching file app/code/core/Mage/Admin/Model/Redirectpolicy.php
patching file app/code/core/Mage/Admin/Model/Resource/User.php
patching file app/code/core/Mage/Admin/Model/User.php
patching file app/code/core/Mage/Adminhtml/Block/Sales/Order/View/Tab/History.php
patching file app/code/core/Mage/Adminhtml/Block/Widget/Grid.php
patching file app/code/core/Mage/Adminhtml/Helper/Catalog/Product/Edit/Action/Attribute.php
patching file app/code/core/Mage/Adminhtml/Helper/Sales.php
patching file app/code/core/Mage/Adminhtml/Model/System/Config/Backend/File.php
patching file app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Image.php
patching file app/code/core/Mage/Adminhtml/Model/System/Config/Backend/Image/Favicon.php
patching file app/code/core/Mage/Adminhtml/controllers/IndexController.php
patching file app/code/core/Mage/Authorizenet/Helper/Admin.php
patching file app/code/core/Mage/Authorizenet/Helper/Data.php
patching file app/code/core/Mage/Authorizenet/controllers/Adminhtml/Authorizenet/Directpost/PaymentController.php
patching file app/code/core/Mage/Captcha/etc/config.xml
patching file app/code/core/Mage/Catalog/Block/Product/View/Options/Type/Select.php
patching file app/code/core/Mage/Catalog/Model/Category/Attribute/Backend/Image.php
patching file app/code/core/Mage/Catalog/Model/Resource/Product/Attribute/Backend/Image.php
patching file app/code/core/Mage/CatalogIndex/etc/config.xml
patching file app/code/core/Mage/CatalogInventory/Helper/Minsaleqty.php
patching file app/code/core/Mage/Checkout/Block/Cart/Item/Renderer.php
patching file app/code/core/Mage/Checkout/controllers/CartController.php
patching file app/code/core/Mage/Checkout/controllers/OnepageController.php
patching file app/code/core/Mage/Core/Helper/Data.php
patching file app/code/core/Mage/Core/Model/App.php
patching file app/code/core/Mage/Core/Model/Config.php
patching file app/code/core/Mage/Core/Model/Email/Queue.php
patching file app/code/core/Mage/Core/Model/Email/Template/Filter.php
patching file app/code/core/Mage/Core/Model/File/Validator/Image.php
patching file app/code/core/Mage/Core/Model/Input/Filter/MaliciousCode.php
patching file app/code/core/Mage/Core/Model/Session.php
patching file app/code/core/Mage/Customer/controllers/AccountController.php
patching file app/code/core/Mage/Dataflow/Model/Convert/Parser/Csv.php
patching file app/code/core/Mage/Downloadable/controllers/CustomerController.php
patching file app/code/core/Mage/ImportExport/Model/Export/Adapter/Abstract.php
patching file app/code/core/Mage/ImportExport/Model/Export/Adapter/Csv.php
patching file app/code/core/Mage/ImportExport/Model/Import/Entity/Abstract.php
patching file app/code/core/Mage/ImportExport/etc/config.xml
patching file app/code/core/Mage/ImportExport/etc/system.xml
patching file app/code/core/Mage/Newsletter/Model/Observer.php
patching file app/code/core/Mage/Newsletter/Model/Queue.php
patching file app/code/core/Mage/Page/etc/system.xml
patching file app/code/core/Mage/Paypal/controllers/PayflowController.php
patching file app/code/core/Mage/Paypal/controllers/PayflowadvancedController.php
patching file app/code/core/Mage/Paypal/etc/config.xml
patching file app/code/core/Mage/Persistent/etc/config.xml
patching file app/code/core/Mage/Review/controllers/ProductController.php
patching file app/code/core/Mage/Rss/Block/Catalog/Salesrule.php
patching file app/code/core/Mage/Rss/Helper/Order.php
patching file app/code/core/Mage/Sales/Helper/Guest.php
patching file app/code/core/Mage/Sales/Model/Quote/Address.php
patching file app/code/core/Mage/Sales/Model/Quote/Item.php
patching file app/code/core/Zend/Xml/Security.php
patching file app/design/adminhtml/default/default/template/authorizenet/directpost/iframe.phtml
patching file app/design/adminhtml/default/default/template/bundle/sales/creditmemo/create/items/renderer.phtml
patching file app/design/adminhtml/default/default/template/bundle/sales/creditmemo/view/items/renderer.phtml
patching file app/design/adminhtml/default/default/template/bundle/sales/invoice/create/items/renderer.phtml
patching file app/design/adminhtml/default/default/template/bundle/sales/invoice/view/items/renderer.phtml
patching file app/design/adminhtml/default/default/template/bundle/sales/order/view/items/renderer.phtml
patching file app/design/adminhtml/default/default/template/bundle/sales/shipment/create/items/renderer.phtml
patching file app/design/adminhtml/default/default/template/bundle/sales/shipment/view/items/renderer.phtml
patching file app/design/adminhtml/default/default/template/catalog/product/composite/fieldset/options/type/file.phtml
patching file app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/creditmemo/name.phtml
patching file app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/invoice/name.phtml
patching file app/design/adminhtml/default/default/template/downloadable/sales/items/column/downloadable/name.phtml
patching file app/design/adminhtml/default/default/template/enterprise/checkout/form/coupon.phtml
patching file app/design/adminhtml/default/default/template/sales/items/column/name.phtml
patching file app/design/adminhtml/default/default/template/sales/items/renderer/default.phtml
patching file app/design/adminhtml/default/default/template/sales/order/totals/discount.phtml
patching file app/design/adminhtml/default/default/template/sales/order/view/info.phtml
patching file app/design/frontend/base/default/template/catalog/product/view/options/type/file.phtml
patching file app/design/frontend/base/default/template/rss/order/details.phtml
patching file lib/Varien/File/Uploader.php
patching file lib/Varien/Io/File.php
Ansyori
fonte
5

Depois de aplicar o SUPEE-7405 no Magento 1.14.1.0, obtive o erro:

Fatal error: Cannot redeclare Mage_Core_Controller_Varien_Router_Admin::_validateControllerInstance() in app/code/core/Mage/Core/Controller/Varien/Router/Admin.php on line 173

O problema foi causado pelo método declarado _validateControllerInstance em

app/code/core/Mage/Core/Controller/Varien/Router/Admin.php on line 173

Após remover a segunda (mesma) declaração de função, o problema foi resolvido.

vladPavlov
fonte
5

Eu recebi o seguinte erro após instalar o patch SUPEE-7405 ao tentar fazer login no admin.

Erro fatal: Ligue para o método indefinido Mage_Core_Controller_Response_Http :: sendHeadersAndExit () em
\ app \ code \ core \ Mage \ Admin \ Model \ Session.php na linha 135

porque esse arquivo foi substituído no pool de códigos local que não possui o sendHeadersAndExit método criado por esse patch.

\app\code\local\Mage\Core\Controller\Response\Http.php O método a seguir não existe. (Este é um novo método adicionado ao arquivo principal)

  /**
     * Method send already collected headers and exit from script
     */
    public function sendHeadersAndExit()
    {
        $this->sendHeaders();
        exit;
    }

Depois de adicionar isso ao problema de arquivo substituído desapareceu.

Mukesh
fonte
3

Um dos problemas que tive ao usar o SUPEE-7405 é o Image Upload Bugs

Portanto, verifico as alterações neste arquivo: lib / Varien / File / Uploader.php

diff --git lib / Varien / Arquivo / Uploader.php lib / Varien / Arquivo / Uploader.php
---
---
- chmod ($ destinationFile, 0777);
+ chmod ($ destinationFile, 0640);
---
---
- if (! (@ is_dir ($ destinationFolder) || @mkdir ($ destinationFolder, 0777, true))) {
+ if (! (@ is_dir ($ destinationFolder) || @mkdir ($ destinationFolder, 0750, true))) {

Então, descobri duas maneiras de superá-lo:

Opção 1:

Realizo uma alteração manual no arquivo lib / Varien / File / Uploader.php para ajustar as permissões 0640/0750.

Opção 2: Como o Magento espera que o servidor web seja o proprietário dos arquivos do site:

http://devdocs.magento.com/guides/m1x/install/installer-privileges_after.html#privs-after

A outra maneira de resolver o problema é tornar o servidor da web o proprietário dos arquivos

chown -R web-server-user-name magento / raiz / caminho

O nome do usuário do servidor da web é geralmente www-data ou apache.

Jameslj
fonte