¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!
react2shell-detector — Una extensión de Chrome para detectar vulnerabilidades React2Shell (CVE-2025-55182 y CVE-2025-66478) en aplicaciones web. | Kitploit
Una extensión de Chrome para detectar vulnerabilidades React2Shell (CVE-2025-55182 y CVE-2025-66478) en aplicaciones web.
Descripción general
React2Shell Detector es una extensión de navegador que ayuda a investigadores de seguridad y desarrolladores web a identificar posibles vulnerabilidades React2Shell en aplicaciones web. La extensión envía cargas de detección seguras a las URLs objetivo y analiza las respuestas para determinar si la aplicación es vulnerable.
Este proyecto está inspirado en el script de Python react2shell-scanner de Assetnote y se basa en él, reimplementado como una extensión de Chrome para facilitar el escaneo desde el navegador.
Características
Escaneo con un clic: Escanea la pestaña actual o cualquier URL con un solo clic
Detección segura: Utiliza cargas no destructivas para la detección de vulnerabilidades
Resultados detallados: Ver cabeceras HTTP, cuerpos de respuesta y detalles de la solicitud
Modo oscuro: Alternancia de tema integrada para una visualización cómoda
Interfaz moderna: Interfaz limpia y responsiva construida con React y Tailwind CSS
Enfoque en la privacidad: Todo el escaneo ocurre localmente - no se envían datos a servidores externos
Capturas de pantalla
Instalación
Opción 1: Instalar desde Chrome Web Store (Próximamente)
La extensión estará disponible próximamente en Chrome Web Store.
Opción 2: Instalar desde el código fuente (Modo desarrollador)
git clone https://github.com/xiaopeng-ye/react2shell-detector.git
cd react2shell-detector
Instalar dependencias
root@kitploit:~
pnpm install
Compilar la extensión
Para desarrollo (con recarga en caliente):
root@kitploit:~
pnpm dev
Para producción:
root@kitploit:~
pnpm build
Cargar la extensión en Chrome
Abrir Chrome y navegar a chrome://extensions/
Activar Modo desarrollador (interruptor en la esquina superior derecha)
Hacer clic en Cargar descomprimida
Seleccionar el directorio de compilación:
Para compilación de desarrollo: build/chrome-mv3-dev
Para compilación de producción: build/chrome-mv3-prod
La extensión React2Shell Detector debería aparecer ahora en tu lista de extensiones
Fijar la extensión (opcional)
Hacer clic en el icono de rompecabezas en la barra de herramientas de Chrome
Buscar "React2Shell Detector" y hacer clic en el icono de fijar
El icono de la extensión aparecerá ahora en tu barra de herramientas
Uso
Abrir la extensión
Hacer clic en el icono de React2Shell Detector en la barra de herramientas de Chrome
O usar el atajo de teclado (si está configurado)
Escanear una URL
La URL de la pestaña actual se cargará automáticamente
Puedes editar la URL o ingresar una diferente
Hacer clic en el botón Escanear
Revisar resultados
Vulnerable: La aplicación podría ser vulnerable a ataques React2Shell
Seguro: No se detectó vulnerabilidad
Error: El escaneo encontró un error (problema de red, tiempo de espera agotado, etc.)
Ver detalles
Hacer clic en las pestañas Solicitud o Respuesta para ver información detallada
Revisar cabeceras HTTP, códigos de estado y cuerpos de respuesta
Stack Tecnológico
Framework: Plasmo - Framework moderno para extensiones de navegador
UI: React 18 con TypeScript
Estilado: Tailwind CSS 4
Componentes: Primitivas de Radix UI
Iconos: Lucide React
Tema: next-themes para soporte de modo oscuro
Desarrollo
Estructura del proyecto
root@kitploit:~
react2shell-detector/
├── components/ # Componentes React
│ ├── ui/ # Componentes de UI reutilizables
│ ├── ScanForm.tsx # Entrada de URL y botón de escaneo
│ ├── ScanResult.tsx # Visualización de resultados
│ └── ...
├── lib/ # Lógica principal
│ ├── detector.ts # Lógica de detección de vulnerabilidades
│ ├── payload.ts # Generación de cargas
│ ├── types.ts # Definiciones de tipos TypeScript
│ └── utils.ts # Funciones auxiliares
├── styles/ # Estilos globales
├── popup.tsx # Punto de entrada del popup de la extensión
├── background.ts # Service worker de fondo
└── package.json # Configuración del proyecto
Comandos disponibles
root@kitploit:~
# Development mode with hot-reload
pnpm dev
# Production build
pnpm build
# Package for distribution
pnpm package
# Format code
pnpm prettier --write .
Estilo de código
Este proyecto utiliza Prettier con las siguientes convenciones:
Investigación de seguridad y pruebas de penetración autorizadas
Evaluación de vulnerabilidades con la debida autorización
Fines educativos
Medidas de seguridad defensivas
NO para:
Pruebas o escaneos no autorizados de sistemas que no poseas o no tengas permiso para probar
Actividades maliciosas o explotación
Cualquier actividad ilegal
Obtén siempre la autorización adecuada antes de escanear cualquier aplicación web.
Contribuciones
¡Las contribuciones son bienvenidas! No dudes en enviar una Pull Request.
Haz un fork del repositorio
Crea tu rama de características (git checkout -b feature/amazing-feature)
Haz commit de tus cambios (git commit -m 'Add some amazing feature')
Sube a la rama (git push origin feature/amazing-feature)
Abre una Pull Request
Referencias
React2Shell Scanner - Script original en Python de Assetnote (este proyecto se basa en su trabajo)
CVE-2025-55182
CVE-2025-66478
Agradecimientos
Este proyecto se basa en la excelente investigación y trabajo de Assetnote. La lógica de detección central está adaptada de su script de Python react2shell-scanner.
Licencia
Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.
Descargo de responsabilidad
Esta herramienta se proporciona únicamente con fines educativos y de pruebas de seguridad autorizadas. Los autores y contribuyentes no son responsables de ningún uso indebido o daño causado por esta herramienta. Asegúrate siempre de tener la autorización adecuada antes de escanear cualquier aplicación web.