
Este repositorio contiene un script de Python para automatizar el proceso de prueba de una vulnerabilidad conocida como Text4Shell, referenciada con el ID de CVE: CVE-2022-42889.
Este repositorio contiene un script de Python para automatizar el proceso de prueba de una vulnerabilidad conocida como Text4Shell, referenciada bajo el CVE id: CVE-2022-42889.
Text4Shell es una vulnerabilidad crítica que afecta a una amplia gama de sistemas. La vulnerabilidad reside en la forma en que estos sistemas analizan cadenas de texto y permite la ejecución de código arbitrario o ataques SSRF. La vulnerabilidad se explota mediante cadenas manipuladas, donde se ejecuta código JavaScript (lo que conduce a la Ejecución Remota de Código (RCE)) o se obtienen URLs (lo que conduce a la Falsificación de Solicitudes del Lado del Servidor (SSRF)).
De Tarlogic:
Requisitos de explotación:
La aplicación acepta entrada controlada por el usuario que posteriormente es procesada por uno de los siguientes métodos del componente afectado:
Las versiones de Java iguales o superiores a Java 15 no serían susceptibles a la ejecución remota de código, ya que el motor Nashorn está deshabilitado y el prefijo "script" no estaría disponible. Sin embargo, otros ataques a través de los prefijos "url" y "dns" serían posibles.
Este script de Python ayuda a probar la presencia de la vulnerabilidad Text4Shell en un sistema. El alcance de este script incluye: prueba de los prefijos script y url.
El script tiene dos modos de operación: RCE y SSRF, controlados por el argumento de línea de comandos -m o --mode. Construye una URL que incorpora una cadena manipulada según el modo seleccionado y realiza una solicitud GET a la URL.
En el modo RCE, el script crea una cadena manipulada que intenta ejecutar un comando JavaScript. El comando a ejecutar se pasa como argumento de línea de comandos usando -c o --command.
python text4shell.py -u 'http://example.com/search?query=' -c 'your_command' -m 'rce'
En el modo SSRF, el script crea una cadena manipulada que incluye un comando de obtención de URL.
python text4shell.py -u 'http://example.com/search?query=' -m 'ssrf' -s 'http://example.com/resource'
El script realiza una solicitud GET a la URL construida e imprime el código de estado y el cuerpo de la respuesta HTTP.