Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
c-sentinel — Observabilidad Semántica para Sistemas UNIX - Una sonda de sistema ligera basada en C con análisis impulsado por IA | Kitploit
Herramientas/GitHubGitHub/speytech/c-sentinel
Análisis de VulnerabilidadesSeguridad de RedesSeguridad en la NubeDevSecOpsInteligencia de AmenazasAutenticaciónDetección de IntrusionesRespuesta a IncidentesSeguridad de IADetección de AnomalíasAnálisis de Registros
728hace 4 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
GitHub
speytech/c-sentinel

c-sentinel

Observabilidad Semántica para Sistemas UNIX - Una sonda de sistema ligera basada en C con análisis impulsado por IA

Ver RepositorioSitio web

C-Sentinel

Observabilidad Semántica para Sistemas UNIX

Un probe de sistema ligero y portátil escrito en C que captura "huellas del sistema" para análisis asistido por IA de riesgos no obvios. Incluye integración con auditd, puntuación de riesgos explicable y un panel web en vivo con autenticación multiusuario de nivel empresarial.

License: MIT Version

Demo en vivo: sentinel.speytech.com

Capturas de pantalla

Panel de Seguridad

Security Dashboard

Vista General de Múltiples Hosts

Hosts Dashboard

Perfil de Usuario y Configuración de Seguridad

Profile Page

Autenticación de Dos Factores

ConfiguraciónInicio de sesión
2FA Setup2FA Login

Claves API Personales

API Keys

Funciones de Administrador

Gestión de Sesiones

Sessions

Registro de Auditoría

Audit Log

Inicio de Sesión Seguro

Login Page

Novedades en v0.6.0

  • 👥 Autenticación Multiusuario - Control de acceso basado en roles (Administrador/Operador/Visualizador)
  • 🔐 Autenticación de Dos Factores - Soporte TOTP con Google Authenticator, Authy, etc.
  • 🔑 Claves API Personales - Claves API por usuario para automatización y CI/CD
  • 📋 Registro de Auditoría de Administrador - Seguimiento de todas las acciones de usuario con filtrado
  • 💻 Gestión de Sesiones - Ver sesiones activas, revocar acceso, forzar cierre de sesión
  • 📧 Alertas por Correo Electrónico y Slack - Notificaciones proactivas con formato enriquecido
  • 🎨 Notificaciones Toast Modernas - ¡No más alertas JavaScript de los años 90!
  • 👁️ Modo Demo Público - Acceso de solo lectura para mostrar tu panel
  • 📱 Responsive Móvil - Funcionalidad completa en teléfonos y tabletas

Versiones Anteriores

v0.5.x: Resumen de postura de seguridad, minigráfico de tendencia de riesgos, indicador de aprendizaje, factores de riesgo explicables, alertas por correo electrónico, historial de eventos

v0.4.0: Integración con auditd, detección de fuerza bruta, hash de nombres de usuario que preserva la privacidad, atribución de procesos, puntuación de riesgos

v0.3.0: Panel web, sumas de verificación SHA256, servicio systemd, aprendizaje de línea base, sonda de red, modo de vigilancia

El Problema

Las herramientas modernas de observabilidad como Dynatrace, Datadog y Prometheus son excelentes para la recolección de métricas y alertas basadas en umbrales. Pero responden una pregunta limitada: "¿Está esta métrica fuera de su rango esperado?"

Tienen dificultades con:

  • Razonamiento causal: ¿Por qué falló algo?
  • Síntesis de contexto: Conectar un cambio de configuración de la semana pasada con el pico de latencia de hoy
  • Degradación no obvia: Cosas que no están "rotas" pero que se están desviando hacia el fallo
  • Contexto de seguridad: Entender quién accedió a qué y por qué es importante

C-Sentinel adopta un enfoque diferente: capturar una huella completa del sistema, incluidos los eventos de seguridad, y utilizar el razonamiento de LLM para identificar los "fantasmas en la máquina".

Inicio Rápido```bash

Clone and build

git clone https://github.com/williamofai/c-sentinel.git cd c-sentinel make

Quick analysis

./bin/sentinel --quick --network

Quick analysis with security events (requires root for audit logs)

sudo ./bin/sentinel --quick --network --audit

Learn baselines (automatic with --audit flag)

./bin/sentinel --learn --network

Continuous monitoring with full context

sudo ./bin/sentinel --watch --interval 300 --network --audit

root@kitploit:~
## Características del Panel

El panel web proporciona monitoreo de seguridad en tiempo real en toda su infraestructura.

### Autenticación Multiusuario

Control de acceso de nivel empresarial con tres roles:

| Rol | Permisos |
|------|-------------|
| **Administrador** | Acceso completo: gestionar usuarios, ver registros de auditoría, todas las operaciones |
| **Operador** | Reconocer eventos, restablecer contadores, ver todos los datos |
| **Espectador** | Acceso de solo lectura a paneles y datos |

### Autenticación de Dos Factores (TOTP)

Asegure su cuenta con TOTP estándar de la industria:
- Funciona con Google Authenticator, Authy, Microsoft Authenticator
- Configuración mediante código QR para fácil configuración
- Requerido en cada inicio de sesión cuando está habilitado
- Notificaciones por correo electrónico al habilitar/deshabilitar

### Claves API Personales

Cada usuario puede crear sus propias claves API para automatización:
- Claves con nombre (p. ej., "CI/CD Pipeline", "Script de Monitoreo")
- Fechas de vencimiento opcionales
- Habilitar/deshabilitar sin eliminar
- Seguimiento de último uso
- Las claves heredan los permisos del rol del usuario```bash
# Use your personal API key
curl -X POST https://sentinel.example.com/api/ingest \
  -H "Content-Type: application/json" \
  -H "X-API-Key: sk_your_personal_key" \
  -d @fingerprint.json

Registro de Auditoría de Administración

Rastrea todas las acciones de los usuarios para cumplimiento y seguridad:

  • Eventos de inicio/cierre de sesión con direcciones IP
  • Acciones de gestión de usuarios (crear, actualizar, eliminar)
  • Cambios de contraseña
  • Revocaciones de sesión
  • Filtrable por usuario, tipo de acción y rango de tiempo

Gestión de Sesiones

Visibilidad completa de las sesiones activas:

  • Ver quién ha iniciado sesión y desde dónde
  • Detección de dispositivo y navegador
  • Revocar sesiones individuales
  • "Cerrar sesión de todos los demás" para incidentes de seguridad
  • Limpieza automática de sesiones caducadas

Resumen de Postura de Seguridad

Explicación en lenguaje sencillo del estado de seguridad de tu sistema:

"Este sistema no muestra problemas de seguridad. Los patrones de autenticación son normales sin fallos detectados. No se ha detectado actividad de escalada de privilegios. Postura general: SALUDABLE."

Puntuación de Riesgo Explicable

Cada puntuación de riesgo incluye factores que explican por qué:

FactorPeso
10 fallos de autenticación (200% por encima de la línea base - alto)+30
Patrón de ataque de fuerza bruta detectado+10
2 archivo(s) sensible(s) accedido(s)+4
Total44

Indicador de Aprendizaje/Calibración

El sistema aprende lo que es "normal" para tu entorno:

MuestrasEstadoSignificado
< 10🧠 AprendiendoConstruyendo línea base inicial
10-50🧠 CalibrandoRefinando patrones normales
> 50(oculto)

Minigráfico de Tendencia de Riesgo

Un minigráfico que muestra el historial de puntuación de riesgo de 24 horas: ve al instante si las cosas están mejorando o empeorando.

Alertas por Correo Electrónico y Slack

Notificaciones automáticas por correo electrónico y/o Slack cuando:

  • Puntuación de riesgo ≥ 16 (alto/crítico)
  • Ataque de fuerza bruta detectado
  • Ejecuciones desde /tmp o /dev/shm
  • Inicio de sesión de usuario desde una nueva IP
  • Cambios de contraseña o 2FA

Las alertas de Slack incluyen formato enriquecido con gravedad codificada por colores, enlaces de panel de control en los que se puede hacer clic y detalles estructurados de factores de riesgo.

Integración con Auditd

C-Sentinel resume los registros de auditd para un análisis semántico de seguridad.

Ejemplo de Salida```

C-Sentinel Quick Analysis

Hostname: axioma-validator Uptime: 14.5 days Load: 0.02 0.04 0.00 Memory: 49.2% used Processes: 120 total

Potential Issues: Zombie processes: 0 High FD processes: 1 Long-running (>7d): 95 Config permission issues: 0

Network: Listening ports: 26 Established connections: 14 Unusual ports: 12 ⚠

Security (audit): Auth failures: 6 ⚠ BRUTE FORCE PATTERN DETECTED Sudo commands: 81 Sensitive file access: 2 - /etc/passwd by touch - /etc/shadow by touch ⚠

Risk: high (score: 25)

root@kitploit:~
### Salida JSON```json
{
  "audit_summary": {
    "enabled": true,
    "period_seconds": 300,
    "authentication": {
      "failures": 6,
      "failure_users_hashed": ["user_c4c5", "user_b91b"],
      "brute_force_detected": true
    },
    "privilege_escalation": {
      "sudo_count": 81,
      "sudo_baseline_avg": 12.5,
      "sudo_deviation_pct": 548.0,
      "su_count": 5
    },
    "file_integrity": {
      "sensitive_file_access": [
        {
          "path": "/etc/shadow",
          "access": "write",
          "count": 2,
          "process": "touch",
          "process_chain": ["touch", "bash", "sshd"],
          "suspicious": true
        }
      ]
    },
    "learning": {
      "sample_count": 42,
      "confidence": "medium"
    },
    "risk_factors": [
      {"reason": "6 auth failures (200% above baseline - high)", "weight": 18},
      {"reason": "Brute force attack pattern detected", "weight": 10}
    ],
    "risk_score": 25,
    "risk_level": "high"
  }
}

Configurar Reglas de Auditoría

Para obtener mejores resultados, agregue reglas de auditoría para archivos sensibles:```bash

Add audit rules

sudo auditctl -w /etc/passwd -p wa -k identity sudo auditctl -w /etc/shadow -p wa -k identity sudo auditctl -w /etc/sudoers -p wa -k priv_esc sudo auditctl -w /var/log/lastlog -p wa -k auth

Make permanent (add to /etc/audit/rules.d/sentinel.rules)

root@kitploit:~
### Funciones de Privacidad

- **Hash de nombres de usuario**: Los nombres de usuario de inicios de sesión fallidos se hashean (por ejemplo, `user_c4c5`) preservando la detección de patrones sin exponer identidades
- **Sin contraseñas**: Los argumentos de comandos y datos sensibles nunca se capturan
- **Solo nombres de procesos**: Rutas completas sanitizadas por privacidad

## Panel Web

C-Sentinel incluye un panel web para monitorear múltiples hosts en tiempo real.

### Características

- **Autenticación Multi-Usuario** - Control de acceso basado en roles
- **Autenticación de Dos Factores** - Configuración TOTP con código QR
- **Claves API Personales** - Claves de automatización por usuario
- **Registro de Auditoría de Administrador** - Historial completo de acciones
- **Gestión de Sesiones** - Control de sesiones activas
- **Resumen de Postura de Seguridad** - Estado del sistema en lenguaje sencillo
- **Gráfico de Tendencia de Riesgo** - Historial visual de 24 horas
- **Factores de Riesgo Explicables** - Sepa *por qué* la puntuación es lo que es
- **Indicador de Aprendizaje** - Progreso de calibración de línea base
- **Historial de Eventos** - Línea de tiempo con confirmación
- **Alertas por Correo Electrónico** - Notificaciones proactivas
- **Monitoreo en Tiempo Real** - Todos los hosts de un vistazo
- **Gráficos Históricos** - Memoria y carga durante 24 horas
- **Vista de Red** - Todos los puertos y conexiones en escucha
- **Seguimiento de Configuración** - Sumas SHA256 de archivos monitoreados

### Configuración Rápida```bash
# Install dashboard
cd dashboard
sudo ./install-dashboard.sh

# Run database migration
sudo -u postgres psql -d sentinel -f migrate.sql

# Install 2FA dependencies (optional)
sudo /opt/sentinel-dashboard/venv/bin/pip install pyotp qrcode pillow

# Configure agent to report (with audit)
*/5 * * * * sudo /usr/local/bin/sentinel --json --network --audit | curl -s -X POST \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_KEY" \
  -d @- https://your-dashboard.com/api/ingest

Configuración de alertas por correo electrónico

Añade a tu servicio systemd o entorno:```bash ALERT_EMAIL_ENABLED=true ALERT_SMTP_HOST=smtp.gmail.com ALERT_SMTP_PORT=587 ALERT_SMTP_USER=[email protected] ALERT_SMTP_PASS=your-app-password ALERT_FROM=[email protected] ALERT_TO=[email protected] ALERT_COOLDOWN_MINS=60

root@kitploit:~
### Configuración del Webhook de Slack```bash
ALERT_SLACK_ENABLED=true
ALERT_SLACK_WEBHOOK=https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX
ALERT_SLACK_CHANNEL=#security-alerts    # Optional - override default webhook channel
ALERT_SLACK_USERNAME=C-Sentinel         # Optional - bot display name

Para obtener una URL de webhook:

  1. Ve a api.slack.com/apps
  2. Crea una nueva app → "Desde cero"
  3. Habilita "Incoming Webhooks"
  4. Haz clic en "Add New Webhook to Workspace"
  5. Selecciona un canal y copia la URL del webhook

Consulta dashboard/README.md para obtener instrucciones completas de configuración.

Modo de Demostración Pública

Habilita el acceso público de solo lectura para mostrar tu panel:```bash Environment="DEMO_MODE=true"

root@kitploit:~
En modo demo:
- No se requiere inicio de sesión: los visitantes van directamente al panel
- Acceso de solo lectura (rol de visor)
- Funciones de administración ocultas
- Enlaces de perfil/cierre de sesión reemplazados por enlace a GitHub
- Banner amarillo indica modo demo

Ideal para publicaciones de LinkedIn, artículos de blog o para que los prospectos exploren antes de implementar.

## Systemd Service

Para implementación en producción:```bash
# Install
sudo ./install.sh

# Enable and start
sudo systemctl enable sentinel
sudo systemctl start sentinel

# Check status
sudo journalctl -u sentinel -f

Todas las características

La salida de color se detecta automáticamente (TTY) y respeta el estándar NO_COLOR.

Códigos de salida (para CI/CD)

CódigoSignificado
0Sin problemas detectados
1Advertencias (problemas menores)
2Crítico (zombies, problemas de permisos, puertos inusuales, eventos de seguridad de alto riesgo)
3

Lo que captura

Lo que señala

Problemas del sistema

  • 🧟 Procesos zombies: Siempre un problema
  • 📂 Recuentos altos de FD: Posibles fugas de descriptores (>100 abiertos)
  • ⏰ Procesos de larga duración: >7 días sin reinicio
  • 🔓 Problemas de permisos: Configuraciones escribibles por cualquiera

Problemas de red

  • 🌐 Puertos inusuales: Servicios no en la lista de puertos comunes
  • 📡 Nuevos oyentes: Puertos que no estaban en la línea base
  • ❌ Servicios faltantes: Puertos esperados que dejaron de escuchar

Problemas de seguridad (con --audit)

  • 🔐 Fuerza bruta: Picos de fallos de autenticación (>5 en ventana)
  • 📊 Desviación de la línea base: Actividad significativamente por encima de lo normal
  • 📝 Acceso a archivos sensibles: Modificaciones a /etc/shadow, /etc/sudoers
  • ⚠️ Procesos sospechosos: Proceso inusual accediendo a archivos sensibles
  • 💀 Indicadores de malware: Ejecuciones desde /tmp o /dev/shm

Arquitectura```

┌─────────────────────────────────────────────────────────────────┐ │ Web Dashboard │ │ • Multi-user auth (RBAC) • Two-factor authentication │ │ • Personal API keys • Session management │ │ • Admin audit log • Email & Slack alerts │ │ • Security posture summary • Risk trend sparkline │ │ • Explainable risk factors • Event history timeline │ │ • Multi-host view • Historical charts │ └─────────────────────────────────────────────────────────────────┘ ▲ │ JSON via HTTP POST │ ┌─────────────────────────────────────────────────────────────────┐ │ C Foundation (99KB) │ │ • /proc parsing • SHA256 checksums │ │ • Process analysis • Drift detection │ │ • Network probing • Baseline learning │ │ • Auditd parsing • Risk scoring │ │ • Process chains • Anomaly detection │ └─────────────────────────────────────────────────────────────────┘

root@kitploit:~
### ¿Por qué C?

| Factor | Python | C |
|---------|--------|---|
| **Dependencias** | Requiere el intérprete de Python (~100MB) | Binario estático (~99KB) |
| **Tiempo de inicio** | ~500ms de inicio del intérprete | ~1ms |
| **Memoria** | ~30MB de base | <2MB |
| **Portabilidad** | Requiere una versión de Python compatible | Se ejecuta en cualquier sistema POSIX |

## Construcción```bash
make              # Release build
make DEBUG=1      # Debug build with symbols
make test         # Run all tests (unit + integration)
make install      # Install to /usr/local/bin

Pruebas

C-Sentinel incluye un conjunto completo de pruebas con más de 128 pruebas unitarias que utilizan el marco de pruebas cmocka.

Instalación de cmocka

Debian/Ubuntu:```bash sudo apt-get install libcmocka-dev

root@kitploit:~
**Fedora/RHEL/CentOS:**```bash
sudo dnf install libcmocka-devel

macOS (Homebrew):```bash brew install cmocka

root@kitploit:~
**FreeBSD:**```bash
sudo pkg install cmocka

OpenBSD:```bash doas pkg_add cmocka

root@kitploit:~
### Ejecución de pruebas```bash
make test              # Run all tests (unit + integration)
make unit-test         # Run unit tests only (requires cmocka)
make integration-test  # Run integration/smoke tests only
make coverage          # Run tests with gcov coverage report
make check-cmocka      # Verify cmocka is installed correctly

Cobertura de Pruebas

Las pruebas unitarias cubren:

Escribiendo Nuevas Pruebas

Las pruebas se encuentran en tests/src/ y utilizan las convenciones de cmocka:```c #include <stdarg.h> #include <stddef.h> #include <setjmp.h> #include <cmocka.h> #include "test_helpers.h"

static void test_example(void **state) { (void)state; assert_int_equal(1 + 1, 2); }

int main(void) { const struct CMUnitTest tests[] = { cmocka_unit_test(test_example), }; return cmocka_run_group_tests(tests, NULL, NULL); }

root@kitploit:~
Agregar nuevos archivos de prueba a la variable `TEST_SOURCES` del Makefile.

## Soporte de Plataforma

| Plataforma | Compilación | Sonda de Procesos | Sonda de Red | Auditoría |
|----------|-------|---------------|---------------|-------|
| Linux | ✅ | ✅ /proc | ✅ /proc/net | ✅ auditd |
| macOS | ✅ | ✅ libproc | ✅ netstat | ❌ N/A |
| FreeBSD | ✅ | ✅ libkvm | ✅ netstat | ❌ N/A |
| OpenBSD | ✅ | ✅ libkvm | ✅ netstat | ❌ N/A |
| NetBSD | ✅ | ✅ libkvm | ✅ netstat | ❌ N/A |
| DragonFlyBSD | ✅ | ✅ libkvm | ✅ netstat | ❌ N/A |

### Requisitos

- GCC o Clang con soporte C99
- GNU Make (gmake en BSD)
- Plataformas compatibles:
  - Linux (kernel 3.x+)
  - macOS (10.12+)
  - FreeBSD (12+)
  - OpenBSD (7.x)
  - NetBSD (9.x)
  - DragonFlyBSD (6.x)
- auditd (opcional, solo Linux para la opción `--audit`)

## Estructura del Proyecto```
c-sentinel/
├── include/
│   ├── sentinel.h        # Core data structures
│   └── audit.h           # Audit integration types
├── src/
│   ├── main.c            # CLI entry point
│   ├── prober.c          # System probing (/proc)
│   ├── net_probe.c       # Network probing
│   ├── audit.c           # Auditd log parsing
│   ├── audit_json.c      # Audit JSON serialisation
│   ├── process_chain.c   # Process ancestry walking
│   ├── baseline.c        # Baseline learning
│   ├── sha256.c          # Pure C SHA256
│   └── ...
├── dashboard/            # Flask web dashboard
├── deploy/               # Systemd service files
└── docs/
    ├── AUDIT_SPEC.md     # Audit integration design
    └── DESIGN_DECISIONS.md

Hoja de ruta

Completado ✅

  • Sonda principal del sistema
  • Serialización JSON
  • Sondeo de red
  • Modo de observación y aprendizaje de línea base
  • Sumas de verificación SHA256
  • Servicio systemd
  • Panel web
  • Integración con auditd
  • Puntuación de riesgo con análisis de desviación
  • Atribución de procesos
  • Autenticación del panel
  • Línea de tiempo del historial de eventos
  • Factores de riesgo explicables
  • Resumen de la postura de seguridad
  • Gráfico de tendencia de riesgo
  • Indicador de aprendizaje/calibración

Planificado 📋

  • Alertas de webhook de Microsoft Teams
  • Reglas de alerta personalizadas
  • Informes de seguridad en PDF
  • Permisos a nivel de host

Licencia

Licencia MIT - consulte LICENSE para más detalles.

Autor

William Murray - 30 años de ingeniería de sistemas UNIX

  • GitHub: @williamofai
  • LinkedIn: William Murray
  • Sitio web: speytech.com

"El objetivo no es reemplazar las herramientas de monitoreo, sino agregar sabiduría a sus datos."

Descargar herramienta
Totalmente calibrado
CaracterísticaComandoDescripción
Análisis rápido--quickResumen legible
Sonda de red--networkPuertos y conexiones en escucha
Sonda de auditoría--auditEventos de seguridad (requiere root)
Modo vigilancia--watch --interval 60Monitoreo continuo
Aprendizaje de línea base--learnGuardar estado actual como "normal"
Línea base de auditoría--audit-learnAprender patrones de seguridad normales
Comparar línea base--baselineDetectar desviaciones
Salida JSON--jsonHuella completa para LLM/panel
Salida de color--colorSalida de terminal coloreada
Config--configMostrar configuración actual
Error (falló la sonda)
CategoríaDatosPropósito
SistemaNombre de host, kernel, tiempo de actividad, carga, memoriaContexto básico de salud
ProcesosProcesos notables con metadatosDetección de zombies, fugas, atascados
ConfiguracionesMetadatos de archivo + sumas de verificación SHA256Detección de deriva criptográfica
RedEscuchas, conexiones, puertosMonitoreo de servicios
SeguridadFallos de autenticación, uso de sudo, acceso a archivosDetección de amenazas
MóduloPruebasCobertura
SHA25610Vectores de prueba NIST, casos límite
Sanitize30Validación de entrada, prevención de inyección
Policy36Reglas de permitir/denegar comandos/rutas
JSON Serialize11Formateo de salida, escape
Baseline11Modo de aprendizaje, detección de desviaciones
Config9Análisis de configuración
Audit21Puntuación de riesgo, análisis de eventos
  • Alertas por correo electrónico
  • Soporte para macOS
  • Soporte para FreeBSD (FreeBSD, OpenBSD, NetBSD, DragonFlyBSD)
  • Panel multiusuario con roles
  • Autenticación de dos factores (TOTP)
  • Claves API personales
  • Registro de auditoría del administrador
  • Gestión de sesiones
  • Alertas de webhook de Slack
  • Modo de demostración pública
  • Salida de terminal a color