fix: prevent division by zero in intHandler when no events received
@MarioHewardt ya está trabajando en esto.
Desde el 4/4/2026.
Evaluación
Este issue todavía no se ha evaluado.
Descripción
Summary
Fix a potential division by zero crash in the intHandler signal
handler when Sysmon is stopped before processing any events
(totalEvents == 0).
Problem
In intHandler(), the following line:
printf("Total events: %ld, bad events: %ld, ratio = %f\n",
totalEvents, badEvents, (double)badEvents / totalEvents);
...will produce a division by zero (resulting in NaN or crash) if
Sysmon is interrupted immediately after startup before any eBPF
events are received.
Fix
Guard the division with a ternary check:
(double)badEvents / totalEvents
→
totalEvents > 0 ? (double)badEvents / totalEvents : 0.0
Testing
- Start Sysmon and immediately send SIGINT (Ctrl+C)
- Confirm clean output showing ratio = 0.000000 instead of crash/NaN
Notes
- No functional change to normal operation
- Zero risk of regression
- Fixes undefined behavior per C standard (integer division by zero)
- Lenguaje dominante
- C
- Estrellas
- 2.2k
- Forks
- 220
- Merge medio
- 11 d 22 h
- PR fusionados (30 d)
- 2
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de microsoft/SysmonForLinux
-
microsoft/SysmonForLinux#238 · 1 asignado ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
microsoft/SysmonForLinux#233 ·
-
microsoft/SysmonForLinux#226 · 1 asignado ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
microsoft/SysmonForLinux#220 · 2 reacciones ·
-
microsoft/SysmonForLinux#219 · 1 comentario · 1 asignado ·
Todos los issues de microsoft/SysmonForLinux
Issues similares
-
bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 60/100
-
Nmap
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
-
flang:fir-hlfir
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
llvm/llvm-project#225935 ·