|
| viZard |
whoo, ok,
mi charla ! |
| viZard |
Estaba planeando
algo como: |
| viZard |
voy a cubrir
dos o tres problemas de seguridad desde una perspectiva tecnica |
| viZard |
y entonces
hablar un poco acerca de politica/ingenieria/yadayada y como esta relacionado
con todo esto |
| viZard |
asi que para
comenzar con un poco de seguridad |
| viZard |
Todo es relativo,
proactivo, reactivo, listas blancas, listas negras, etc. |
| viZard |
a lo que añadimos
que todo el mundo tiene diferentes requerimientos, y diferente cantidad
de dinero/habilidades/etc que gastar en resolver un problema |
| viZard |
Y desafortunadamente
tambien tenemos una limitada cantidad de tecnologia para resolver estos
problemas. |
| viZard |
asi que lo
primero que quiero cubrir son los virus y otros codigos maliciosos |
| viZard |
algo con lo
que hemos estado tratando como industria desde hace un tiempo atras |
| viZard |
es casi imposible
ver un binario y darse cuenta de lo que es capaz de hacer |
| viZard |
aun con el
codigo fuente no es siempre posible saber exactamente lo que hara |
| viZard |
asi que tenemos
una variedad de personas tomando diferentes caminos de aproximacion |
| viZard |
un grupo,
el OpenBSD team, tomado como mejor ejemplo, pero tambien openwall :), busca
la correccion del codigo |
| viZard |
si el codigo
es corregido, es mucho mas dificil abusar de esa manera para hacer algo
hostil como escribir un archivo arbitrario, y sobrefluir un stack |
| viZard |
asi que por
un lado, tenemos algo como openbsd, con casi ninguna vulnerabilidad de
archivos en /tmp |
| viZard |
en el SO por
defecto |
| viZard |
y por otro
lado tenemos varias distros uisando arrreglos de seguridad /tmp |
| viZard |
pero openbsd
aun tiene agujeros y fallos, porque la correccion de codigo no solo recae
en la apropiada semantica y el uso de funciones "seguras" como mkstemp() |
| viZard |
sino tambien
en la apropiada logica |
| viZard |
el otro problema
es que la correccion de codigo, requiera una gran cantidad de habilidades
y paciencia |
| viZard |
El openbsd
team tiene algunas personas muy inteligentes que pasan años auditando
codigo. |
| viZard |
entonces,
algunas personas pensaron "bueno, la correccion de codigo es buena, pero
enfrentemoslo, con cosas como SuSE Linxu vendiendose en DVD, no hay
manera de auditar todo ese codigo" |
| viZard |
esto nos deja
otras opciones alternativas, como el stackguard de immunix, o el
parche openwall de Solar |
| viZard |
todos sabemos
que en algun punto, tendremos un codigo con buffer overflow, asi que en
vez de tratar de reparar cdad buffer overflow, , hagamoslo menos peligroso/efectivo |
| viZard |
de alguna
manera, esto es seguridad proactiva, porque se esta previniendo potenciales
problemas de los que desconocemos. |
| viZard |
OTOH es un
buffer reactivo muy bueno, porque los buffer overflows son un problema
conocido |
| viZard |
desafortunadamente
hacer cosas como stackguard and openwall patch son dificiles de hacer |
| viZard |
y requieren
una gran cantidad de esfuerzo, y accesar a niveles muy bajos del SO |
| viZard |
PERO puede
protegernos contra amenazas desconocidad, como el nuevo buffer exploit |
| viZard |
afortunadamente
ahora el stack protection esta disponible es casi cualquier SO |
| viZard |
en Solaris
hay un sysctl switch, en openbsd tenemos stackghost |
| viZard |
sin embargo
esto es algo limitado al aspecto de codigo malicioso |
| viZard |
otra tecnica
comunmente empleada is la de buscar codigo malicioso, con patrones, y luego
prevenir su ejecucion |
| viZard |
en esto es
lo que se basa la industria del antivirus |
| viZard |
y no funciona
muy bien, |
| viZard |
he recibido
6 virus via correo-e hoy |
| viZard |
y aun nos
dicen que AV software es la respuesta al problema de virus |
| viZard |
porque AV
software is una defensa reactiva enorme, aun con los "heuristicos", seguira
fallando en la deteccion de muchos virus y mas |
| viZard |
ademas, nosotros
terminamos con esa constante batalla para prevenir el codigo malicioso
durante la ejecucion, y de largo estamos perdiendo esto. |
| viZard |
En cualquier
evento no creo que esto se podra ganar, por ejemplo es buscar una entrada
dns y cachear |
| viZard |
<raul>
asi es si tu software automatizado hace una actualizacion cvs desde www.vendor.com,
pero es enviada a una IP equivocada porque una respuesta ha siedo puesta
en la cache de nombres por un atacante. |
| viZard |
<raul>
como estos ejemplos hay montones |
| viZard |
<raul>
el siguiente problema es muy simple, pero tambien nunca es tratado correctamente |
| viZard |
<raul>
borrado de datos |
| viZard |
cuantos de
uds han borrado data que realmente se queria fuera, probablemente todos |
| viZard |
los datos
aun estan ahi? probablemente si |
| viZard |
aun si ha
editado un archivo de manera segura cuando se quiere borrar aun quedan
remanetes: |
| viZard |
si alguna
vez ha desfragmentado, copiado o mover el archivo, una copia parcial o
completa puede estar en alguna parte |
| viZard |
Existe una
enorme industria |
| viZard |
y no solo
uno de estos productos que he probado wipea la data efectivemente |
| viZard |
y muchos de
ellos saben de esto |
| viZard |
asi que podemos
confiar en que los archivos a wipear, |
| viZard |
vole ! |
| viZard |
Los ordenadores
son para muchas personas una herramienta que complementa algunas funciones |
| viZard |
eso es en
lo principal |
| viZard |
no si es segura
o no |
| viZard |
cuanto cuesta
el software, funciona? no si es seguro |
| viZard |
esto, sin
embargo no es completamente malo. yo estoy sentado aqui con un servidor
win2k. |
| viZard |
yo _se_ que
existen xploit remotos y locales en el. |
| viZard |
estoy corriendo
AV software? no |
| viZard |
con el juicioso
uso de un cortafuegos, restriccionees, y algo mas, soy capaz de asegurar
el sistema |
| viZard |
aun algo que
suena tan simple como wipear un archivo |
| viZard |
es increiblemente
dificil, aun para un sistema local |
| viZard |
cada solucion
conlleva nuevos problemas |
| viZard |
pero esto
esta bien, porque ultimadamente es riesgo de manejo, y no absoluto |
| viZard |
asi que esperemos,
si podemos ofrecerle algo hoy, es que la seguridad no sera completa, |
| viZard |
nunca se alcanzara
el estado "seguro" |
| viZard |
pero podemos
alcanzar un estado que mitigue los riesgos moderadamente |
| viZard |
para hacer
mas aceptables lo costos de seguridad |
| viZard |
y aun dejar
el sistema usable para trabajar |