Blogia

ASI

No, no he desaparecido (todavia)

Pues aqui estoy, despues de haber dejado un poco (un bastante, diria yo) de lado mi weblog.

Dando asi una especie de "overview" sobre toda esta temporada, pues la verdad, no me han sucedido grandes cosas (como era de esperar).

Al final parece que he podido con todo, publique el "ultimo" articulo para DisidentS Hack Journal #5 (digo ultimo porque fue lo ultimo que escribi para esa e-zine, los lectores no se libraran de mi, -risa maligna-), y desde luego, no me ha quedado muy mal :-)

Estoy bastante contento conmigo mismo, envie otro articulo a una revista de seguridad informatica y nuevas tecnologias (de la cual no dare el nombre aqui) y parece ser que les ha gustado mucho, tanto por contenidos tecnicos, como por redaccion del mismo, tanto que quieren una "segunda parte" completando el tema, para llevarla a portada en el proximo numero, realmente las cosas no me van tan mal. ¿Quien me hubiera dicho que iba a encontrar un trabajo asi? La verdad, si alguien me lo hubiese tan siquiera insinuado hace no demasiado tiempo, la carcajada que habria soltado en sus narices hubiera sido tremenda...

Todavia sigo teniendo pendiente el tema de la charla para el canal #ayuda_internet de la "archi conocida" red de IRC, IRC-Hispano.org. Como se ha aplazado el tema por cuestiones de dificultad de asistencia (exámenes y demás) pues me lo voy tomando con bastante calma :-)

Referente al tema de estudios la verdad es que sigo muy relajado (demasiado), veremos como repercute en los resultados (seguro que negativamente). Ultimamente me he llevado alguna que otra desilusion con la gente y su metodo, pero ... ¿quien es un estudiante para protestar? Pues supongo que nadie, asique mejor sera que guarde mis idealismos en un rincon apartado donde nadie pueda encontrarlos.

Analisis Forense (introduccion)

/* Bueno, pues aqui dejo un pequeño "paper" que redacte hace no mucho sobre el tema del analisis forense, espero que a alguien le sirva para algo :-) */

Antes de nada, concretemos que es un analisis forense.

Bien, conocemos como analisis forense una serie de estudios llevados a cabo sobre un host determinado despues de que este haya sido atacado, es decir, despues de que alguien haya conseguido romper la seguridad del mismo.

-- ( Objetivos );

Los objetivos del analisis forense son:

1- Determinar o ayudar a determinar el origen e identidad del atacante (en la mayoria de los casos el determinar quien ha atacado el host corre por parte de la policia, aunque un buen analisis forense puede ser de gran ayuda, nos puede dar datos como por ejemplo el nivel de conocimientos del atacante, sus metodos, etc, aunque esto siempre serian puras especulaciones).

2- Securizar el host afectado de modo que tal intruso no vuelva a poder penetrar (con esto me refiero a localizacion de sniffers, backdoors,binarios del sistema troyanizados, etc) y en la mayoria de los casos,que ningun otro intruso pueda volver a entrar (en principio, mediante la vulnerabilidad explotada por el primer intruso).

3- Esclarecer el metodo utilizado por el atacante para penetrar en el host, las acciones llevadas a cabo por el atacante dentro del host una vez realizada la intrusion, y evaluacion detallada de daños.

Podemos incluir un cuarto proposito en el analisis forense, mas bien, llevado a cabo a raiz de tal analisis, que seria la recuperacion de datos en el caso de que el atacante los hubiese intentado eliminar, pero creo que seria algo que se saldria del propio analisis.

-- ( Metodo );

Evidentemente, necesitamos un metodo claro y ordenado para llevar a cabo el analisis forense y no dejar pasar cosas por alto.

He establecido un pequeño metodo "general" a seguir en casi cualquier sistema, no voy a profundizar en ello, pero creo que es una buena referencia:

1- Desconectar la maquina de internet y de cualquier otra red publica:

Elemental, ¿verdad? No sabemos si el intruso ha dejado algun tipo de backdoor en el sistema, y puede ser un riesgo comenzar un analisis mientras el atacante puede estar dentro de la maquina.

2- Auditado del host afectado:

Me parece un buen comienzo realizar una pequeña "auditoria" sobre el host, con el objetivo de detectar fallos de seguridad en el mismo, y hacernos una idea de por donde ha podido penetrar el intruso. Esto nos puede ser de gran ayuda, puesto que podremos delimitar enormemente el marco de posibles metodos llevados a cabo por el intruso, y por supuesto, una de las cosas mas fundamentales, saber por donde diablos ha podido entrar. Hay que decir que no siempre esto es efectivo, el atacante podria haber utilizado un 0day, y si no estamos al corriente del mismo, se nos haria dificil, tambien se las podria haber arreglado de infinidad de modos, haciendo que una auditoria sirviese de poco (al menos nos sirve para concretar que el metodo se escapa de la auditoria, algo es algo ;-).

3- Revisado de logs:

Bien, es cierto que existen muchos y efectivos metodos de borrar las huellas en un sistema, pero nadie nos asegura que el intruso los haya utilizado, y tampoco el exito de los mismos en nuestro caso concreto. Es importante recalcar que se han de revisar los logs tanto del sistema operativo, como de aplicaciones que puedan resultar interesantes: servicios del host, tales como servidor web, servidor ftp, etc. Y evidentemente, de herramientas de monitoreado (si el host contaba con ellas). Si conseguimos encontrar algo en los log's, tendremos mucha ventaja. Para revisar los log's, lo mejor es emplear herramientas como analizadores de log's, las cuales nos facilitaran enormemente la tarea. En el caso de que los log's hubieran sido "limpiados" por el atacante, podriamos recurrir a intentar recuperar esos datos (todos sabemos que un rm -rf no siempre hace que los datos sean irrecuperables), para eso, evidentemente utilizariamos herramientas y medios adecuados.

4- Busqueda de backdoors:

Otra posibilidad, que el intruso haya dejado backdoors a fin de poder volver a ingresar en el sistema cuando le apeteciera, y aunque la vulnerabilidad que uso para penetrar la primera vez, hubiese sido parcheada. Para buscar backdoors, nos tendremos que remitir a herramientas que hagan ese trabajo por nosotros. De todos modos, las backdoors suelen presentarse en forma de:
- Aplicaciones desconocidas, esto es poco usual y chapucero, pero sigue siendo una posibilidad a tener en cuenta.
- Binarios del sistema: estos suelen ser troyanizados mediante aplicaciones, a modo de "camuflaje" dentro del host.
Existen otras formas de camuflaje, hay que recordar que aqui en gran parte lo que cuenta es la imaginacion del atacante para camuflar el
backdoor. De todas formas, en el caso de que ninguna herramienta hubiese localizado nada, una posibilidad (sin recurrir al formateo) seria poner la maquina en red de nuevo, y esperar a que el intruso intentase acceder por esa backdoor, en ese momento, tendriamos que tener loggeado al milimetro todo el sistema, y la red, lo cual nos daria bastantes pistas sobre la localizacion del backdoor para su posterior eliminado. Otra alternativa, como decia antes, es salvar en copias de seguridad los datos necesarios (una vez acabado el analisis) y formatear el sistema.

5- Pre-evaluacion:

Aqui tocaria evaluar todo lo demas, principalmente el tipo de host al que nos enfrentamos, todo el contexto en el cual se produjo el asalto al host (hay que recordar que el contexto es muy importante, nos puede decir si el atacante ha sido un empresario descontento o un kiddie en busca de maquinas para asaltar). Tambien tocaria poner en comun todos los datos anteriormente recogidos, para ir reconstruyendo lo que hizo nuestro amiguito intruso dentro del host. Aqui tambien entraria un poco la evaluacion de los daños causados al sistema.

6- Parcheo:

Ahora tocaria parchear la vulnerabilidad explotada por el intruso, para, logicamente, impedir que una intrusion asi se vuelva a repetir.
Si nuestra auditoria ha dado sus frutos, tambien podemos aprovechar y parchear todos los fallos de seguridad que en principio hubiesemos encontrado, aunque eso, seria algo accesorio. A mi modo de ver, en principio el analisis forense implicaria un poco eso, evitar que futuros intrusos pudieran aprovechar las vulnerabilidades aprovechadas por el primero.

7- Evaluacion final:

Por ultimo, hacer una evaluacion final de todo el ataque, recogiendo todos los detalles e informacion necesaria. La evaluacion final seria el "informe" (dicho asi formalmente) presentado al final. En el recogeriamos:
- Metodos usados por el intruso para la penetracion en el host.
- Condiciones (contexto) en el que fue realizada la intrusion.
- Datos del intruso (si hemos podido obtener alguno, el que sea, todo ayuda).
- Actuacion del intruso una vez dentro del host.
- Evaluacion de daños y perdidas en el sistema.
Principalmente eso, aunque evidentemente podemos recoger mas cosas que nos hayan parecido relevantes.

-- ( Links );

Bueno, quiero aclarar que esto no pretende ser un "HOW-TO" de analisis forense ni nada parecido, simplemente una referencia al tema para orientarnos un poquillo.

A continuacion dejo una serie de URL's que me han parecido bastante interesantes al respecto, donde si se explica detalladamente como llevar a cabo un analisis forense, las herramientas adecuadas, etc etc.

- http://his.sourceforge.net/trad/honeynet/papers/forensics/
Un paper sobre analisis forense en sistemas GNU/Linux muy interesante, y por supuesto en castellano, forma parte del proyecto honeynet.

- http://www.debian.org/doc/manuals/securing-debian-howto/ch10.es.html
Capitulo del manual de seguridad de debian donde habla un poco del analisis forense (muy por encima) orientado particularmente a esta distribucion de linux. Creo que puede venir bastante bien como complemento :-)

- http://www.ausejo.net/seguridad/forense.htm
Otro pequeño documento sobre analisis forense, orientado en general a todos los sistemas, pero se pueden sacar cosillas interesantes para Windows, y de paso, da una buena referencia de herramientas para el analisis forense.

- http://www.hackemate.com.ar/ezines/7a69/7a69-13/7a69_13-art8.txt
http://www.hackemate.com.ar/ezines/7a69/7a69-13/7a69_13-art9.txt
http://www.hackemate.com.ar/ezines/7a69/7a69-13/7a69_13-art10.txt
Mas traducciones sobre el tema de honeynet, por Tahum para la revista 7a69, en principio, estan mas que nada orientadas a la metodologia de un kiddie, pero traen buenas referencias a herramientas y metodos de analisis forense. Bastante interesante. (como no, decir que esta orientado a sistemas GNU/Linux).

Y bueno, con esto no hay mucho mas. Recomendar que todo el tema de los honeypot's esta muy relacionado con el tema del analisis forense, y que el conocer analisis llevados a cabo en honeypot's nos puede aportar mucha ayuda a la hora de tener que realizar nosotros un analisis forense.

-- ( Despedida );

Pues eso es todo, que la cosa no pare, ¡a investigar!

- ASI

Empezando con el tema este ...

Pues aqui esta mi primer post (esperemos que no sea el ultimo, por cierto, no pongo tildes por los tipicos problemillas de codificacion). Ayer estuve toda la tarde bastante inquieto pensando en volver a empezar, en la rutina de siempre ... desde luego estas vacaciones me han sabido realmente a poco (bueno, a quien no le saben a poco unas vacaciones? pero no van por ahi precisamente los tiros) ... el año pasado comence a notarlo, pero este año ha sido algo brutal ... alguna gente dice que el tiempo corre, pero en mi caso, el tiempo viaja a la velocidad de la luz en el vacio, otros años sentia que podia saborear cada minuto, que un año se hacia toda una vida, pero ahora parece que toda una vida se hace un segundo. Hombre, esto no creo que sea especialmente bueno, pero de todos modos, igual que se me pasan rapido las vacaciones, tambien los dias "laborables" lo hacen, aun asi, uno siempre sigue echando en falta vacaciones ... pero bueno, no solo eso, (y aqui tengo yo toda la culpa) hay que hablar del agobio que es todo lo que me queda por delante para este mes de Enero y parte de Febrero: clases (examenes...), terminar un articulo para DisidentS, escribir un borrador que tengo pendiente, preparar la segunda charla sobre Seguridad Informática para #Ayuda_Internet, etc. En fin, espero llegar a Marzo vivo :-)

- ASI

Calcula tu "nivel de nerd"

Curioseando por la red me he encontrado con un mogollón de "nerd tests" (test's para calcular "como de nerd eres"). Pero me ha hecho especial gracia este:

http://www.mcphee.com/goodies/nerdtest.html

En cuanto lo acabé (y despues de darme una altisima puntuacion, 203%), me aparece el siguiente mensajito:

Additional Scoring Information:
You got an extra 400 points because you are actually
running Linux right now. Your environment is:
Mozilla/4.0 (compatible; MSIE 6.0; X11; Linux i686) Opera 7.23 [en]
But, you already knew that.

Desde luego es simpático y original, pero refleja el estereotipo de Linux como un Sistema Operativo solo para "profesionales" y "locos de la informatica" (desde luego tito Bill esta en todas partes eh?) ... cierto es que Linux requiere unos ciertos conocimientos para sacar un buen provecho de el (y para arreglar fallos que nos pueda dar, claro), y tambien requiere unos ciertos conocimientos a la hora de configurar el sistema (si quieres una configuracion eficaz, olvidate de GUI's y demas), lo cual no quiere decir que un "domestico" no pueda realizar sus 4 tareas cotidianas (redactar un paper con su OpenOffice, enviar un email a su compañero de trabajo con Evolution, etc) sin tener unos grandes conocimientos sobre el sistema, ni mucho menos, puede apañarse bien sabiendo poco (muy poco), pero bueno, dejo la campaña "pro-Linux" de momento en el weblog :-)

- ASI