OK, alguém tem que perguntar o seguinte: hoje, 7/7/2015, foi lançado um novo patch de segurança para o Magento <1.9.2.
atualize suas lojas o mais rápido possível!
Mas o que mudou? Existem explorações conhecidas dos problemas de segurança cobertos? Qual o pior que poderia ter acontecido?
E há algo que possa quebrar? Como no SUPEE-5994, onde não era possível aplicar o patch se o diretório do downloader estivesse ausente ...
magento-1.9
security
patches
supee-6285
Fabian Schmengler
fonte
fonte
Respostas:
Como já mencionado, as vulnerabilidades corrigidas são descritas em detalhes nesta página oficial (novos documentos do comerciante): http://merch.docs.magento.com/ce/user_guide/Magento_Community_Edition_User_Guide.html#magento/patch-releases-2015.html
Sumário
Depois de consertar algumas lojas, é isso que eu reuni:
Patches de tema
Alguns arquivos de tema foram corrigidos com escape adicionado para evitar possíveis ataques XSS:
checkout/cart.phtml
checkout/cart/noItems.phtml
checkout/onepage/failure.phtml
rss/order/details.phtml
wishlist/email/rss.phtml
Se o seu tema contiver algum desses modelos ou se você tiver feito modificações diretamente
base/default
(boa sorte, você está ferrado), será necessário corrigi-lo manualmente:nos modelos de checkout, substitua todas as ocorrências de
com
dentro
wishlist/email/rss.phtml
, substituacom
Em
rss/order/details.phtml
, substituacom
Permissões
.htaccess
arquivos foram adicionadosdownloader/Maged
edownloader/lib
proibir o acesso direto aos arquivos de origem. Se você usar o nginx, precisará adicionar essas regras para obter o mesmo (thx para Ben Lessani para este):Mas eu recomendo excluir
downloader
de implantações em um sistema de sistema ativo de qualquer maneira, nesse caso, você não precisa tomar uma ação.Privilégios de administrador (ACL)
Se você usar contas de administrador restritas, alguns menus de extensões de terceiros poderão não funcionar mais para elas. O motivo é que o valor de retorno padrão de
Mage_Adminhtml_Controller_Action::_isAllowed()
foi alterado detrue
paraMage::getSingleton('admin/session')->isAllowed('admin')
. Extensões que não substituem esse método em seus controladores administrativos porque não usam a ACL, agora precisam do privilégio "ALL" .A única solução é corrigir as extensões e adicionar esse método a todos os seus controladores administrativos:
Ou se eles realmente tiverem um recurso ACL definido em
etc/adminhtml.xml
:(você pode ver que o patch faz o mesmo
Phoenix_Moneybookers
nas versões mais antigas do Magento, como 1.7, onde esta extensão foi incluída)Para obter uma perspectiva mais detalhada sobre esse problema e uma explicação sobre como definir recursos ACL ausentes, consulte: Erros de acesso negado após a instalação do SUPEE-6285
Possíveis erros ao aplicar o patch
Mensagem:
Motivo: o
default/modern
tema foi removido da instalaçãoSolução: adicione a
app/design/frontend/default/modern
partir de um novo download do Magento (deve ser a mesma versão da sua loja). Você também pode usar esse espelho: https://github.com/firegento/magento . Depois de aplicar o patch com êxito, você poderá remover o tema novamente.mensagem
Razão: o
downloader
diretório foi removido da instalaçãoSolução: adicione a
downloader
partir de um novo download do Magento (deve ser a mesma versão da sua loja). Você também pode usar esse espelho: https://github.com/firegento/magento . Depois de aplicar o patch com êxito, você poderá remover o diretório novamente.Mensagem: Algo semelhante a
Motivo: os arquivos são armazenados com
\r\n
(CRLF, quebra de linha do Windows) ou\r
(CR, quebra de linha do Mac) em vez de\n
(LF, quebra de linha do Unix).Solução: basta converter as quebras de linha, seu editor de texto ou IDE deve ser capaz disso.
fonte
_isAllowed
método. Felizmente, tivemos ACL no módulo e nenhuma ação adicional foi necessária, além da adição do método. Além disso, encontrei a primeira mensagem de erro com odefault/modern
tema que havia sido movido (também achei o culpado graças ao Git). +1 para issoVia @ http://blog.philwinkle.com/supee-6285-broken-down/
Depois de adicionar:
Para um dos Controladores de Terceiros, a Seção de Administrador começou a "funcionar" novamente ...
Então teremos outro Patch Magento em breve? Este parece ser um problema maior ...
fonte
Se você possui muitas extensões locais / da comunidade, deve prestar atenção especial a essa alteração no SUPEE-6285, que afeta
app/code/core/Mage/Adminhtml/Controller/Action.php
e está na linha 666, dependendo da sua versão do patch (este é o arquivo de patch EE 1.14.0.1):Todos os módulos personalizados que não implementam seus próprios recursos de administrador são afetados pela alteração acima e o acesso será negado, a menos que o usuário administrador em questão tenha privilégios totais de administrador.
Se você procurar em algum lugar do patch, verá que muitos dos módulos principais incluídos foram atualizados; no entanto, é provável que isso afete muitos módulos de terceiros. Portanto, preste atenção especial ao testar quaisquer extensões de terceiros no post do site para verificar você ainda pode acessá-los!
fonte
Parece que a página de lançamento do patch foi atualizada com informações sobre o que afeta.
Ainda tenho que instalar em um site de produção e testar
fonte
A lista completa dos arquivos modificados após a aplicação do patch também está disponível em
app/etc/applied.patches.list
fonte
No meu caso para módulos de terceiros, a adição do código abaixo aos adminhtml controllers funcionou:
fonte