UNHIDE(8) | UNHIDE(8) |
unhide — Herramienta forense para descubrir procesos ocultos
unhide-linux [OPTIONS] TEST_LIST
unhide-posix proc | sys
unhide es una herramienta forense para detectar procesos ocultos en sistemas Unix que hayan sido ocultados mediante rookits / módulos en el Kernel o cualquier otra técnica de ocultación. Implementa seis técnicas de detección
Opciones sólo están disponibles para unhide-linux no para unhide-posix.
Los checks consisten en uno o mas de los siguientes tests
Los tests estandar son en realidad agrupaciones de varios tests
elementales
Tests estandar :
El test brute consiste en hacer fuerza bruta sobre todo el
espacio de identificadores de procesos (PIDS)
Esta técnica solo está disponible con la versión
unhide-linux.
El test proc consiste en comparar el directorio /proc con la salida del comando /bin/ps
El test procall combina los tests proc y procfs
Esta técnica solo está disponible con la versión
unhide-linux.
El test procfs consiste en comparar la información
obtenida por /bin/ps con los datos obtenidos al recorrer procfs
Con la opción -m este test realiza tests adicionales, para mas
información consultar checkchdir
Esta técnica solo está disponible con la versión
unhide-linux.
El test quick combina los tests proc, procfs y sys en una
forma 'rápida' de ejecución, es hasta 20 veces mas
rápido que otros test pero también puede ofrecer mas falsos
positivos
Esta técnica solo está disponible con la versión
unhide-linux.
El test reverse consiste en verificar que todos los
procesos e hilos que son vistos por /bin/ps existen realmente buscandolos en
procfs y por system calls. El objetivo es averiguar si se ha modificado
/bin/ps para hacer creer que existen en ejecución algunos programas
que realmente no lo están
Esta técnica solo está disponible con la versión
unhide-linux.
El test sys consiste en comparar la información obtenida de /bin/ps contra algunas system calls
Tests elementales :
El test checkbrute consiste en hacer fuerza bruta contra
todo el espacio de procesos (PIDS) del sistema
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkchdir consiste en comparar la
información obtenida por /bin/ps y compararla haciendo chdir() en
procfs
Con la opción -m también se comprueba que el hilo aparece
en la lista "leader process"
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkgetaffinity consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
sched_getaffinity()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkgetparam consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
sched_getparam()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkgetpgid consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
getpgid()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkgetprio consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
getpriority()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkRRgetinterval consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
sched_rr_get_interval()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkgetsched consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
sched_getscheduler()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkgetsid consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
getsid()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkkill consiste en comparar la
información obtenida por /bin/ps con el resultado de la system call
kill()
Nota: ningún proceso es 'matado' con este test
Esta técnica solo está disponible con la versión
unhide-linux.
El test checknoprocps consiste en comparar el resultado de
la información obtenida usando cada una de las system calls buscando
diferencias entre si. No se emplea /bin/ps o /proc
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkopendir consiste en comparar la
información obtenida por /bin/ps con el resultado de hacer opendir()
sobre procfs
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkproc consiste en comparar la
información obtenida por /bin/ps con los datos de /proc
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkquick combina los tests proc, procfs y sys en
una forma 'rápida' de ejecución, es hasta 20 veces mas
rápido que otros test pero también puede ofrecer mas falsos
positivos
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkreaddir consiste en comparar la
información obtenida por /bin/ps con el resultado de hacer readdir()
en /proc y /proc/pid/task
Esta técnica solo está disponible con la versión
unhide-linux.
El test checkreverse consiste en verificar que todos los
procesos e hilos que son vistos por /bin/ps existen realmente buscandolos en
procfs y por system calls. El objetivo es averiguar si se ha modificado
/bin/ps para hacer creer que existen en ejecución algunos programas
que realmente no lo están
Esta técnica solo está disponible con la versión
unhide-linux.
El test checksysinfo consiste en comparar el número
de procesos contabilizados por /bin/ps contra el número de procesos
que indica la syscall sysinfo()
Esta técnica solo está disponible con la versión
unhide-linux.
El test checksysinfo2 es una versión alternativa de
checksysinfo, se presupone que funciona mejor en kernels parcheados para RT,
preempt o latency y también con kernels que no usen el planificador
estandar
Este test está implicito cuando se ejecuta con la opción
-r
Esta técnica solo está disponible con la versión
unhide-linux.
Puedes reportar fallos de unhide en el 'bug tracker' de
GitHub (https://github.com/YJesus/Unhide/issues)
Con las últimas versiones de kernel de Linux (> 2.6.33), el test
sysinfo puede reportar falsos positivos. Puede ser debido a la
optimización en el scheduler, el uso de cgroup o incluso el uso de
systemd. El uso del patch PREEMPT-RT amplifica la probabilidad de que se de
ese problema. Esto es actualmente objeto de investigación.
unhide-tcp (8).
Este manual ha sido creado por Francois Marier
(francois@debian.org) y Patrick Gouin (patrickg.github@free.fr).
Se concede permiso para ser copiado, distribuido y modificado bajo los
términos de la licencia GNU, versión 3 o versiones posteriores
publicadas por la Free Software Foundation
License GPLv3+: GNU GPL version 3 o posterior
<http://gnu.org/licenses/gpl.html>.
Este es software libre, vd es libre de modificar y redistribuir las
modificaciones. Este software no provee ninguna garantía .
Junio 2022 | Comandos de administración |