Sistema completo de escaneo de vulnerabilidades on-premise para despliegue en Intel NUC. Detecta vulnerabilidades en redes corporativas usando múltiples engines de escaneo (Nmap, OpenVAS, OWASP ZAP, Nuclei) con correlación automática de CVEs y generación de reportes.
- ✅ Escaneo Multi-Engine: Nmap, OpenVAS, OWASP ZAP, Nuclei
- ✅ Correlación CVE Automática: Integración con NVD API
- ✅ Dashboard Interactivo: React + TypeScript con visualizaciones
- ✅ Reportes Automáticos: PDF, HTML, Excel con branding personalizable
- ✅ Sistema de Alertas: Email, Slack, Webhooks
- ✅ 100% On-Premise: Data never leaves your network
- ✅ Deployment Rápido: Docker Compose, listo en <30 minutos
Backend:
- Python 3.11+ con FastAPI
- PostgreSQL 15 + TimescaleDB
- Celery + Redis (task queue)
- SQLAlchemy (ORM)
Frontend:
- React 18 + TypeScript
- Tailwind CSS + shadcn/ui
- TanStack Query
- Recharts (visualizaciones)
DevOps:
- Docker + Docker Compose
- Nginx (reverse proxy)
- GitHub Actions (CI/CD)
nestsecure/
├── backend/ # API REST con FastAPI
├── frontend/ # Aplicación React
├── docker/ # Configuraciones Docker
├── docs/ # Documentación
├── scripts/ # Scripts de utilidad
└── docker-compose.yml
- Docker 24.0+
- Docker Compose 2.23+
- Intel NUC (mínimo i5, 16GB RAM) o servidor Linux
# 1. Clonar el repositorio
git clone https://github.com/tu-usuario/nestsecure.git
cd nestsecure
# 2. Configurar variables de entorno
cp .env.example .env
# Editar .env con tus configuraciones
# 3. Iniciar servicios
make docker-up
# 4. Ejecutar migraciones (ya incluidas en docker-up)
# Se ejecutan automáticamente al iniciar
# 5. Crear usuario demo
docker exec nestsecure_backend_dev python3 /app/scripts/create_demo.py
# Credenciales: demo@nestsecure.com / Demo123!
# 6. Probar autenticación
./backend/scripts/test_auth_manual.shAccede a:
- API:
http://localhost:8000 - Docs:
http://localhost:8000/docs - Frontend:
https://localhost(próximamente)
- Arquitectura del Sistema
- API Documentation (Swagger automático)
- Guía de Instalación
- Testing Guide
cd backend
python -m venv venv
source venv/bin/activate # En Windows: venv\Scripts\activate
pip install -r requirements.txt
uvicorn app.main:app --reloadcd frontend
npm install
npm run dev# Backend - Todos los tests (259)
cd backend
pytest -v
# Backend - Tests específicos
pytest app/tests/test_api/test_auth.py -v
pytest app/tests/test_api/test_assets.py -v
pytest app/tests/test_api/test_vulnerabilities.py -v
pytest app/tests/test_api/test_scans.py -v
pytest app/tests/test_api/test_cve.py -v
pytest app/tests/test_workers/test_nmap_worker.py -v
# Testing manual de API
./backend/scripts/test_auth_manual.sh
# Frontend (próximamente)
cd frontend
npm test- Fase 1: Backend Core + Autenticación ✅ COMPLETADA
- FastAPI con Docker
- PostgreSQL + SQLAlchemy async
- JWT authentication
- Users & Organizations CRUD
- Assets & Services CRUD
- Vulnerabilities & Scans CRUD
- CVE Integration (NVD API)
- Dashboard Stats API
- Integración API ↔ Celery Workers
- 259 tests pasando
- Fase 2: Motor de escaneo 🟡 EN PROGRESO
- Nmap Worker implementado
- Integración Nmap-API ✅
- OpenVAS Integration
- Celery workers activos en producción
- Fase 3: Frontend Dashboard
- Login & Layout
- Dashboard con métricas
- Gestión de Assets
- Vista de Vulnerabilidades
- Fase 4: Reportes y Alertas
- Generación PDF/HTML
- Email notifications
- Webhooks
- Fase 5: Integración ZAP y Nuclei
- Fase 6: Compliance templates (PCI-DSS, ISO 27001)
- Fase 7: API pública para integraciones
- Fase 8: Agent-based scanning
¡Las contribuciones son bienvenidas! Este es un proyecto open source y cualquier ayuda es apreciada.
- Fork el proyecto
- Crea tu Feature Branch (
git checkout -b feature/AmazingFeature) - Commit tus cambios (
git commit -m 'feat: Add some AmazingFeature') - Push al Branch (
git push origin feature/AmazingFeature) - Abre un Pull Request
Lee nuestra Guía de Contribución para más detalles.
Si encuentras un bug, por favor abre un Issue con:
- Descripción clara del problema
- Pasos para reproducirlo
- Comportamiento esperado vs actual
- Tu entorno (OS, Python version, Docker version)
Este proyecto está bajo la Licencia MIT - ver el archivo LICENSE para más detalles.
Fabián Ramos - @ramjavii
- A todos los contribuidores que ayudan a mejorar este proyecto
- Comunidad open source de herramientas de seguridad
Nota: Este sistema debe ser usado únicamente con autorización explícita para escanear las redes objetivo. El uso no autorizado puede ser ilegal.