Computo Forense
Dr. Roberto Gómez
Computo forense en ambientes Unix
Roberto Gómez Cárdenas
ITESM CEM
ITESM-CEM
[email protected]
Lámina 1
Dr. Roberto Gómez Cárdenas
Sistemas Unix y Linux
• Sabores de Unix
– System V variants, Sun Solaris, IBM AIX, and HP-UX
– BSD, FreeBSD, OpenBSD, and NetBSD
• Distribuciones Linux
– Red Hat, Fedora, Ubuntu, and Debian
– Most consistent UNIX-like OSs
• El núcleo de Linux es regulado bajo la licencia GPL
• Licencia BSD es similar a la de GPL
Lámina 2
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
1
Computo Forense
Dr. Roberto Gómez
Evolución Unix
Descendiente directo
Fuerte Influencia
Versión 6
(1975)
Laboratorios Bell AT&T
(c. 1969-1970)
BSD
(1977)
4.2 BSD
(1984)
4.3 BSD
(1985)
4.3 BSD
(1993)
Versión 7
(1977)
Sistema III
(1982)
Sistema V.2
(1984)
Sistema V.3
(1987)
Sistema V.4
(1988)
Xenix
(1979 y después)
OSF/1
(c.1992)
Lámina 3
Dr. Roberto Gómez Cárdenas
Unix y Bill Gates
• Microsoft Corporation y Santa Cruz Operation
(SCO) colaboran para llevar Unix a Intel 8086
(SCO) colaboran para llevar Unix a Intel 8086
• Resultado: XENIX
• Ultima variante comercial de Unix
• Su primera versión, 2.3, fue liberada en 1980 y
vendida para IBMs PC y compatibles
• Ultima versión 5.0 fue liberada en 1985
lib
l i
i
f
d
Lámina 4
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
2
Computo Forense
Dr. Roberto Gómez
Tipos de Unix
BSD
System V.3
OSF/1
System V.4
SunOS
Linux
DEC
OSF/1
Solaris
AIX
HP-UX
10
SCO
UNIX
IRIX
IRIX
definición
implementación
Lámina 5
Dr. Roberto Gómez Cárdenas
¿Y Linux ???
• Sistema orientado Unix para diferentes plataformas
• Creado por Linus Torvalds
• Creado por Linus Torvalds
• Inspirado del sistema operativo Minix desarrollado por
A. Tanenbaum para fines académicos
• Bajo licencia GPL (GNU Public Licence)
• Algunas compañías y asociaciones han desarrollado su
d
i
propia distribución de Linux
ib i
i di
• Las distribuciones se diferencian por:
– la versión del núcleo del sistema operativo (kernel)
– la combinación de utilerías que la acompaña
Lámina 6
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
3
Computo Forense
Dr. Roberto Gómez
El origen de Linux
From:
[email protected] (Linus Benedict Torvalds)
Newsgroup: comp.os.minix
Subject: Free minix-like kernel sources for 386-AT
Subject: Free minix like kernel sources for 386 AT
Messahe-ID: <1991Oct5.054106.4647@ klavaa.Helsinki.FI>
Date: 5 Oct 91 05:41:06 GMT
Organization: University of Helsinki
Do you pine for the nice days of minix-1.1, when men were men and wrote their own
device drivers? Are you without a nice project and just dying to cut your teeth on a
OS you can try to modify for your neeeds? Are you finding it frustating when
everything works on minix? No more all-nigthers to get a nifty program working? then
this post might be just for you :-)
As I mentioned a month(?) ago, I’m working on a free version of a minix-lookalike for
AT-386 computers. It has finally reached the stage where it’s even usable (though
may depending on what you want), and I am willing to put out the sources for wider
distribution. It is just version 0.02 (+1 very samll) partch already), but I’ve succesfully
run bash/gcc/gnu-make/gnu-sed/compress etc. under it
Lámina 7
Dr. Roberto Gómez Cárdenas
Opinión Tanenbaum sobre Linux
What do you think of Linux?
I have never used it. People tell me that if you like lots of bells and
whistles, it is a nice system. I would like to take this opportunity to
thank Linus for producing it. Before there was Linux there was MINIX,
which had a 40,000-person newsgroup, most of whom were sending me
email every day. I was going crazy with the endless stream of new
features people were sending me. I kept refusing them all because I
wanted to keep MINIX small enough for my students to understand in
one semester. My consistent refusal to add all these new features is
what inspired Linus to write Linux.
p p
g
p
g
Fuente: http://www.cs.vu.nl/~ast/ast_home_page/faq.html
Lámina 8
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
4
Computo Forense
Dr. Roberto Gómez
Otros núcleos linux libres
• Free BSD ( http://www.freebsd.org )
– Derivado de Unix BSD
– Desarrollo por voluntarios
– Disponible por ftp o CD’s
– Ultima versión: 4.5
– Plataformas: Intel ia32 compatible, DEC Alpha, y PC-98 architectures
• Open BSD ( http://www.openbsd.org )
– disponible gratis via ftp o a bajo precio en 3 CD’s
– versión actual: 3.0 (diciembre 2001)
versión actual: 3.0 (diciembre 2001)
– desarrollado por voluntarios
– esfuerzos dirigidos a portabilidad, estandarizacion, correctness,
seguridad proactiva y criptografia integrada
– Plataformas: i386 - CD bootable, sparc - CD bootable, hp300, amiga,
mac68k, macppc - CD bootable, sun3, mvme68k, alpha, vax
Lámina 9
Dr. Roberto Gómez Cárdenas
Línea tiempo Unix
Lámina 10
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
5
Computo Forense
Dr. Roberto Gómez
Historia Unix
Lámina 11
Dr. Roberto Gómez Cárdenas
El ambiente Unix
• Cuando uno entra al sistema UNIX, el sistema
proporciona un ambiente propio.
• El ambiente del usuario contiene
la
información necesaria, así como ciertas variables.
• Ambiente definido por variables locales y externas.
• Las variables locales sólo son conocidas por el
toda
shell que las creó o modificó.
shell que las creó o modificó.
• Las variables exportadas pueden ser vistas por
todos los sub-shells.
• Usuario puede definir
externas
las variables locales y
Lámina 12
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
6
Computo Forense
Dr. Roberto Gómez
Las variables de entorno/ambiente
• Valor dinámico cargado en la memoria, que puede ser
utilizado por varios procesos que funcionan
i
simultáneamente.
ltá
t
• En la mayoría de los sistemas operativos, la ubicación
de algunas bibliotecas o de los archivos ejecutables del
sistema más importantes puede variar según la
instalación.
L
i
configuraciones que ayudan a su ejecución.
• Las aplicaciones utilizan estas variables para encontrar
i bl
tili
li
t
t
• En sistemas UNIX, las variables del entorno están
precedidas por el carácter "$“.
– Se puede usar el comando echo para conocer su contenido.
Lámina 13
Dr. Roberto Gómez Cárdenas
Ejemplos variables
• Ejemplos variables
Descripción
Contiene la descripción de la arquitectura del equipo.
Variable
$ARCH
$DISPLAY Contiene la identificación de la terminal de visualización que se
$HOME
$HOST
$LANG
utilizará en el administrador de ventanas (x11).
Muestra la ruta de acceso al directorio actual del usuario.
Muestra el nombre del equipo.
Muestra el código del idioma predeterminado.
Muestra una lista de rutas de acceso a los directorios que
Muestra una lista de rutas de acceso a los directorios que
contienen archivos ejecutables, separadas por punto y coma.
Indica la ruta del intérprete de comandos utilizado.
Muestra la identificación del usuario actual.
$PATH
$PATH
$SHELL
$USER
• Se puede usar los comandos set, env, printenv para desplegar
todas las variables y su valor.
Lámina 14
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
7
Computo Forense
Dr. Roberto Gómez
Ejemplo salida comando printenv
emata@francia:17>printenv
MANPATH=/usr/dt/man:/usr/man:/usr/openwin/share/man
LANG=en_US
OPENWINHOME=/usr/openwin
EDITOR=asedit
LOGNAME=rogomez
MAIL=/var/mail/emata
PS1=$PWD $
USER=rogomez
LC_MESSAGES=C
LC_CTYPE=en_US
DISPLAY :0 0
DISPLAY=:0.0
SHELL=/bin/ksh
TERM=sun-cmd
PWD=/home/emata
HOME=/home/emata
:
:
:
:
LC_COLLATE=en_US
LC_NUMERIC=en_US
TZ=US/Central
HOST=francia.ccm.itesm.mx
HOSTTYPE=sun4
ENV=/home/emata/.kshrc
VENDOR=sun
OSTYPE=solaris
MACHTYPE=sparc
SHLVL=1
GROUP=unknown
emata@francia:18>
Lámina 15
Dr. Roberto Gómez Cárdenas
Principales comandos y utilerías
•
•
•
•
•
• more
•
•
•
•
•
•
•
• mkdir
•
cat
strings
od
tar
gzip
gunzip
ln
pwd
cd
ls
touch
file
rm
rmdir
•
chmod
•
•
cp
• mv
• which
• whereis
chown
•
•
chgrp
find
•
umask
•
ps
•
•
pgrep
top
•
nice
•
•
nohup
time
jobs
kill
pkill
id
passwd
•
•
•
•
•
•
• who
• whoami
•
•
•
•
•
•
•
ulimit
su
sudo
useradd
userdel
usermod
chfh
chsh
•
chage
•
groupadd
•
groupdel
•
groupmod
•
groups
•
date
•
cal
•
grep
•
•
sort
• wc
•
tail
head
•
cut
•
•
paste
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
uniq
tr
comm
cmp
diff
telnet
ftp
rlogin
rsh
rcp
ssh
scp
lpr
a2ps
lpq
lprm
•
df
•
•
f
fdisk
• mkfs
fsck
•
dump
•
•
restore
• mount
umont
•
showmount
•
quota
•
•
edquota
•
quotacheck
• makedbm
•
ypbind
ypserv
ypcat
ypmatch
•
•
•
• man
•
•
•
•
•
•
•
•
•
•
•
history
alias
tee
tty
uname
echo
clear
catman
xterm
awk
sed
Lámina 16
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
8
Computo Forense
Dr. Roberto Gómez
Clasificando comandos Unix
• Comandos manejo archivos
• Comandos manejo procesos
Comandos manejo procesos
• Comandos administración usuarios
• Comandos relacionados con el tiempo
• Comandos tipo filtro
• Comandos comparación archivos
• Comandos de red
• Comandos de red
• Comandos impresora
• Comandos disco
• Comandos varios
Lámina 17
Dr. Roberto Gómez Cárdenas
Comandos manejo de archivos
Comando Descripción
pwd
cd
ls
touch
file
more
cat
strings
od
tar
gzip
gunzip
ln
mkdir
rm
rmdir
chmod
despliega el directorio de trabajo (¿ontoy?)
cambiar de directorio
listado de archivos
crear archivo (vacío) y actualiza fecha modificación
tipo de archivo
desplegar contenido archivo texto por pantalla
concatenar archivos
desplegar secuencias caracteres imprimibles dentro archivos
desplegar representacion octal del contenido de un archivo no texto
almacenar y extraer archivos de un solo archivo
comprimir archivos a formato .gz
descomprimir archivos .gz
ligas simbolicas y duras
crear directorio
borrar archivo
borrar directorio (solo directorios vacios)
cambiar permisos archivos
Lámina 18
Dr. Roberto Gómez Cárdenas
Forensia en Sistemas Unix
9
Computo Forense
Dr. Roberto Gómez
Comandos manejo
Comentarios de: Computo forense en ambientes Unix (0)
No hay comentarios