
Kit de detección a nivel de organización de AWS para CVE-2025-55182 y CVE-2025-66478 (vulnerabilidades RCE de React Server Components / Next.js)
Kit de detección en toda la organización de AWS para CVE-2025-55182 y CVE-2025-66478
⚠️ DESCARGO DE RESPONSABILIDAD IMPORTANTE: LEA ANTES DE USAR
Este kit NO ha sido probado en un entorno AWS de producción.
Debido a limitaciones de infraestructura, este proyecto se desarrolló y validó únicamente mediante revisión de código, análisis estático y verificación de documentación. No se ha desplegado ni probado en un entorno AWS real con servicios activos de GuardDuty, WAF, EventBridge o CloudTrail.
Qué significa esto para usted:
Componente Estado Lógica del escáner Python ✅ Código revisado, validado con Snyk Sintaxis de Terraform ✅ Validada, no aplicada Políticas de IAM ⚠️ Pueden requerir ajustes para su entorno Reglas de EventBridge ⚠️ Patrones de hallazgos basados en la documentación de AWS Reglas de WAF ⚠️ Patrones regex no probados contra tráfico real Consultas de Athena ⚠️ Los supuestos de esquema pueden requerir modificaciones Recomendaciones:
- Despliegue primero en una cuenta que no sea de producción - Pruebe todos los componentes en un entorno sandbox
- Revise cuidadosamente las políticas de IAM - Ajuste los permisos para que coincidan con los requisitos de su organización
- Valide los planes de Terraform - Ejecute
terraform plany revíselo antes de aplicarlo- Pruebe los patrones de EventBridge - Verifique que las cadenas de tipo de hallazgo coincidan con la salida de su GuardDuty
- Supervise los registros de CloudWatch - Compruebe si hay errores después del despliegue
Responsabilidad:
Este software se proporciona "TAL CUAL", sin garantía de ningún tipo. Los autores no asumen ninguna responsabilidad por daños, incidentes de seguridad o costos de AWS derivados del uso de este kit. Úselo bajo su propio riesgo.
Si logra desplegar y probar este kit, considere aportar sus hallazgos para mejorarlo para la comunidad.
Un kit de seguridad integral para detectar intentos de explotación de React2Shell en entornos AWS. Este kit proporciona detección en tiempo real, capacidades de búsqueda de amenazas y respuesta automatizada para la vulnerabilidad crítica de ejecución remota de código (RCE) en React Server Components.
__proto__:then permite la ejecución arbitraria de código a través de process.mainModule.require('child_process').execSync()---
## Requisitos previos
### Permisos requeridos```
# Minimum IAM permissions for the detection script
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"cloudtrail:LookupEvents",
"logs:StartQuery",
"logs:GetQueryResults",
"guardduty:ListDetectors",
"guardduty:ListFindings",
"guardduty:GetFindings",
"guardduty:CreateThreatIntelSet",
"guardduty:UpdateThreatIntelSet",
"guardduty:ListThreatIntelSets",
"guardduty:GetThreatIntelSet",
"s3:PutObject",
"s3:GetObject",
"sts:GetCallerIdentity",
"sts:AssumeRole"
],
"Resource": "*"
}
]
}
# For Security Hub integration, add:
"securityhub:BatchImportFindings"
# For SNS alerting, add:
"sns:Publish"
# For organization-wide scanning, add:
"organizations:ListAccounts"
| Software | Versión | Propósito |
|---|---|---|
| Python | 3.9+ | Entorno de ejecución del script de detección |
| Terraform | 1.0+ | Despliegue de infraestructura |
| AWS CLI | 2.x | Autenticación de AWS |
| boto3 | 1.34+ | SDK de AWS para Python |
cd React2Shell_Hunter
python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
pip install -r requirements.txt
### Paso 2: Configurar las credenciales de AWS```bash
# Option A: Use AWS CLI profile
aws configure --profile security-scanner
# Option B: Export environment variables
export AWS_ACCESS_KEY_ID="your-access-key"
export AWS_SECRET_ACCESS_KEY="your-secret-key"
export AWS_DEFAULT_REGION="us-east-1"
# Option C: Use IAM role (recommended for EC2/Lambda)
# Attach appropriate IAM role to your compute resource
aws sts get-caller-identity
python -c "import boto3, yaml; print('Dependencies OK')"
python -c " import yaml with open('config/iocs.yaml') as f: iocs = yaml.safe_load(f) print(f'Loaded {len(iocs["network_iocs"]["malicious_ips"])} malicious IPs') "
---
## Inicio Rápido
### Escanear Cuenta Actual (Últimas 24 Horas)```bash
python src/react2shell_detector.py --hours 24
Salida esperada:``` 2025-12-06 10:00:00 - React2ShellDetector - INFO - ============================================================ 2025-12-06 10:00:00 - React2ShellDetector - INFO - React2Shell IOC Detection Script 2025-12-06 10:00:00 - React2ShellDetector - INFO - CVE-2025-55182 & CVE-2025-66478 2025-12-06 10:00:00 - React2ShellDetector - INFO - ============================================================ 2025-12-06 10:00:00 - React2ShellDetector - INFO - Starting single account scan... 2025-12-06 10:00:00 - React2ShellDetector - INFO - Analyzing CloudTrail logs... 2025-12-06 10:00:05 - React2ShellDetector - INFO - Checking GuardDuty findings...
Total findings: 0 CRITICAL: 0 HIGH: 0 MEDIUM: 0
### Escaneo completo de producción```bash
python src/react2shell_detector.py \
--organization \
--role-name SecurityAuditRole \
--security-hub \
--guardduty-bucket my-threat-intel-bucket-12345 \
--vpc-log-group /aws/vpc/flowlogs \
--waf-log-group aws-waf-logs-react2shell \
--sns-topic arn:aws:sns:us-east-1:123456789012:security-alerts \
--output json \
--output-file findings-$(date +%Y%m%d).json \
--hours 72
NO PUEDES CREAR REGLAS DE DETECCIÓN PERSONALIZADAS EN GUARDDUTY.
GuardDuty utiliza modelos de ML e inteligencia de amenazas para generar hallazgos. Para detectar React2Shell: