Alerta de vulnerabilidade CVE-2022-24086 para sites que usam o Magento Ecommerce
DeveloperSteve Coochin
17 de fevereiro de 2022
0 minutos de leituraDesde seu lançamento inicial, em 2008, o Magento é uma plataforma de comércio eletrônico muito usada e querida. Uma das coisas de que sempre gostei no Magento é a capacidade de acompanhar o crescimento dos negócios de comércio eletrônico. Inicialmente disponível como uma versão auto-hospedada (que usei bastante como desenvolvedor ao longo dos anos), o Magento agora oferece opções claras de suporte e gerenciamento pela Adobe ou por parceiros de seu ecossistema.
De acordo com o Wappalyzer, atualmente 158.000 sites usam o Magento para suas soluções de comércio eletrônico. Marcas globais como Coca-Cola e Olympus, além de montadoras icônicas como a Land Rover, usam o Magento para oferecer experiências de compra online.
Distribuído sob a licença OSL (Open Software License) 3.0 e atualmente na versão 2.0 do SDLC, o Magento oferece dois tipos principais de solução.
Magento Open Source, anteriormente conhecido como CE (Community Edition). Embora tenha o apoio da Adobe e do Magento, essa versão é mantida principalmente pela comunidade e pelo ecossistema do Magento.
Magento Enterprise, agora chamado Adobe Commerce. Essa é a oferta gerenciada pela Adobe, que inclui diferentes níveis de suporte e gerenciamento da empresa.
Ao longo dos anos, o Magento teve sua parcela de vulnerabilidades, mas sempre adotou uma postura bastante proativa em relação a alertas de segurança, patches e correções quando novas vulnerabilidades são descobertas. Em 14 de fevereiro, foi identificada uma vulnerabilidade crítica, CVE-2022-24086, causada por validação inadequada de entrada e que afeta as versões do Magento Open Source e do Adobe Commerce superiores à 2.3.4 e inferiores à 2.4.3-p1 ou à 2.3.7-p2.
Entenda a vulnerabilidade CVE-2022-24086 do Magento
Essa vulnerabilidade decorre de um método de validação inadequado durante o processo de checkout, que permite aos invasores contornar os métodos de validação de entrada normalmente usados para sanitizar tipos de entrada indesejados.
O vetor de ataque da CVE-2022-24086 possibilita ataques de injeção de SQL e de objetos PHP no Magento, que podem adicionar entradas indesejadas ao banco de dados ou permitir a execução remota de código.
Em segurança de aplicações, já vimos que a validação inadequada de entradas pode ter consequências graves. Como a plataforma não consegue reconhecer uma combinação de tipos de caracteres durante a validação de formulários, sequências maliciosas podem causar estragos sem serem impedidas.
Para testar na prática a validação inadequada de PHP, confira o app PHP-Goof do Snyk Labs no GitHub.
Como aplicar a correção
O Magento é uma daquelas plataformas e frameworks com uma comunidade e um ecossistema muito fortes. Repetidas vezes, vimos essa comunidade se unir para ajudar a aplicar correções em situações como essa.
O patch disponibilizado pelo Magento atualiza o método de sanitização Filter.php na função pública transDirective, no diretório /Email/Model/Template, adicionando um novo padrão regex para capturar entradas.

Além disso, o patch também altera o arquivo VarDirective.php no framework principal, incluindo a mesma captura por regex.

O patch oficial da Adobe pode ser adicionado ao manifesto do pacote PHP Composer ou aplicado diretamente à base de código derivada. Lembre-se sempre de testar os patches que você pretende aplicar em um ambiente de homologação ou desenvolvimento antes de levá-los à produção. E mantenha sempre backups seguros.
Detecte problemas automaticamente com a Snyk
A segurança é sempre importante, especialmente quando envolve dados confidenciais de clientes e transações financeiras. A Snyk oferece algumas maneiras de começar a verificar o Magento, dependendo de como você o instalou.
A abordagem mais recomendada e amplamente adotada é usar o método PHP Composer. Essa também é uma ótima maneira de atualizar complementos e plugins do ecossistema Magento à medida que são adicionados. É fácil verificar o manifesto do pacote PHP Composer com a Snyk para detectar vulnerabilidades contínuas em bibliotecas e dependências, como a CVE-2022-24086.
Também é possível clonar ou criar um fork do Magento a partir do repositório git. Isso é especialmente útil se você quiser contribuir com o projeto (algo sempre recomendado!) ou se o método de implantação exigir que o código venha de um repositório.
A Snyk se conecta a várias plataformas de repositório e também pode ser integrada a muitos serviços de CI/CD que verificam vulnerabilidades de IaC.
Usar um serviço de verificação alerta você sobre vulnerabilidades que possam surgir e ajuda a proteger sua plataforma, sua infraestrutura e seus clientes contra ataques.
Comece a participar de desafios de Capture the Flag
Aprenda a resolver desafios de Capture the Flag assistindo sob demanda ao nosso workshop virtual introdutório.



