En el pasado,
los ordenadores eran entidades aisladas, ubicados en habitaciones
cerradas
protegidas por mecanismos de seguridad física. Pero la
interconexión masiva de
equipos informáticos a través de Internet
y otras redes, ha traído consigo
serios problemas de seguridad.
En efecto, en
Internet proliferan los crackers,
piratas informáticos que buscan atacar un sistema para
obtener beneficios de
forma ilegal; los hackers, que son
aquellos que lo hacen como mero pasatiempo o reto técnico; y
los sniffers, que rastrean y
observan todos
los mensajes que hay en la red. La seguridad era antes un problema
principalmente asociado a las grandes y pequeñas empresas,
pero con la
proliferación de las conexiones permanentes a Internet
mediante el ADSL y el
cable, esta preocupación ha llegado también a los
hogares.
En cuanto
tenga sospechas o le haya sido notificado que su sistema ha sido
atacado, o lo
está siendo, deberá determinar:
- Si
está
realmente siendo atacado o lo fue.
- Si
el ataque
tuvo éxito.
- En
que grado el
ataque ha resultado comprometedor.
El
procedimiento a seguir puede ser rutinario o extremadamente complejo.
Éste
artículo contiene instrucciones para seguir, paso a paso, si
se investiga un
incidente de seguridad en
una máquina Unix. El lector podrá
encontrar
información detallada sobre los siguientes temas:
- Determinar los
usuarios conectados a su sistema.
- Determinar los
procesos activos.
- Encontrar las
huellas dejadas por un intruso.
- Detectar un sniffer.
Es
recomendable
obtener previamente al proceso de búsqueda de intrusos, un
perfil del estado de
su sistema operativo en condiciones normales, para lo cual
deberá ejecutar los
comandos descritos en este artículo. Grabe los resultados y
familiarícese con
la salida de todas las órdenes.
.
Determinar los
usuarios conectados a su sistema

Si
sospecha que un intruso está conectado a su sistema en un
determinado momento, primero debe descubrir dónde se
encuentra y qué está haciendo.
Esta
sección le enseñará a cómo
utilizar estos comandos para descubrir quién está
en su sistema:
Comando
"w"
El
comando “w”
ofrece una visión general de todos los usuarios y sus
programas activos en el
sistema. Un ejemplo de su salida es el siguiente:
9:24am
up 51 day(s), 20:25,
7 users,
load average: 0.10, 0.05, 0.04
User
tty
login@ idle
JCPU
PCPU
what
rmt
console 28Jun99
93days
4091:16 703:58
/usr/dt/bin/dtexec -open 0 -ttpr
ramon
pts/21
Wed11am
16
/bin/ksh
rmt
pts/5
28Jun99
52days
-ksh
ramon
pts/1
9:22am
1
-ksh
ramon
pts/22
9:23am
w
…
La primera
línea mostrada, la de estado, da información
general: la hora actual, cuánto
tiempo lleva arrancado el sistema, y la carga del sistema para varios
períodos
de tiempo. El resto de la salida del comando “w”,
muestra quién está en estos
momentos conectado al sistema, qué terminales
están utilizando, y qué están
haciendo.
Deberá
verificar que:
- Todos
los
usuarios son válidos.
- Los
usuarios
llevan conectados un espacio de tiempo normal.
- Los
usuarios no
están ejecutando programas sospechosos.
El
problema es
que la salida del comando “w” puede ser
fácilmente modificada para ocultar la
existencia de un intruso en el sistema.
Comando
"finger"
Otro comando
que permite descubrir intrusos conectados actualmente a su sistema, es
“finger”. Un ejemplo de su salida es el siguiente:
Login
Name
TTY
Idle When
Where
rmt
???
console
8
Mon 13:29
:0
ramon
???
pts/21
16
Wed 11:26
caballero
ramon
???
pts/1
1
Thu 09:22
suntiago
ramon
???
pts/22
Thu
09:23
suntiago
…
El comando
“finger” muestra quién está
conectado al sistema, qué terminales está
utilizando, cuándo se conectaron y desde dónde
están operando.
Debe
comprobar
que:
- Todos
los
usuarios son válidos.
- Los
usuarios
llevan conectados un intervalo de tiempo normal.
- El
sitio desde
dónde se conecta el usuario es válido.
El
problema
que presenta el comando “finger” es que puede ser
fácilmente modificado para
ocultar la existencia de un intruso. Este comando, además,
no sólo muestra
información útil para el administrador, sino
también para el posible intruso.
Por ejemplo, éste podría utilizar finger para
encontrar el momento oportuno
para atacar el sistema, utilizando “finger” para
determinar la actividad de
usuarios como root, manager, bin, etc.
Comando
"who"
Con el comando
“who” se obtiene información sobre los
usuarios conectados al sistema en el
momento de su ejecución. Ésta
información es mantenida en el fichero
“/etc/utmp”. Un ejemplo de su salida es presentado
continuación:
rmt
console
Jun 28 13:29
(:0)
ramon
pts/21
Aug 18 11:26
(caballero)
rmt
pts/5
Jun 28 13:30
(:0.0)
ramon
pts/1
Aug 19 09:22
(suntiago)
ramon
pts/22
Aug 19 09:23
(suntiago)
…
El comando
devuelve una lista con los usuarios conectados actualmente al sistema,
qué
terminal están utilizando, cuándo se conectaron,
y desde donde están operando.
Deberá
verificar que:
- Los
usuarios
son válidos.
- Los
usuarios
llevan conectados un intervalo de tiempo normal.
- El
sitio desde
donde se conecta el usuario es válido.
De
nuevo éste
comando es vulnerable. Su salida puede ser fácilmente
modificada para ocultar
la existencia de un intruso, puesto que el comando obtiene la
información del
fichero “/etc/utmp”.