
Una extensión de Chrome para detectar vulnerabilidades React2Shell (CVE-2025-55182 y CVE-2025-66478) en aplicaciones web.
Una extensión de Chrome para detectar vulnerabilidades React2Shell (CVE-2025-55182 y CVE-2025-66478) en aplicaciones web.
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.
La extensión estará disponible próximamente en Chrome Web Store.
Clonar el repositorio
git clone https://github.com/xiaopeng-ye/react2shell-detector.git
cd react2shell-detector
Instalar dependencias
pnpm install
Compilar la extensión
Para desarrollo (con recarga en caliente):
pnpm dev
Para producción:
pnpm build
Cargar la extensión en Chrome
chrome://extensions/build/chrome-mv3-devbuild/chrome-mv3-prodFijar la extensión (opcional)
Abrir la extensión
Escanear una URL
Revisar resultados
Ver detalles
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
# Development mode with hot-reload
pnpm dev
# Production build
pnpm build
# Package for distribution
pnpm package
# Format code
pnpm prettier --write .
Este proyecto utiliza Prettier con las siguientes convenciones:
Formatea siempre tu código antes de hacer commit:
pnpm prettier --write .
IMPORTANTE: Esta herramienta está diseñada para:
NO para:
Obtén siempre la autorización adecuada antes de escanear cualquier aplicación web.
¡Las contribuciones son bienvenidas! No dudes en enviar una Pull Request.
git checkout -b feature/amazing-feature)git commit -m 'Add some amazing feature')git push origin feature/amazing-feature)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.
Este proyecto está licenciado bajo la Licencia MIT - consulta el archivo LICENSE para más detalles.
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.
Si encuentras algún problema o tienes preguntas: