27 feb 2010

Recuperar (Recover) ficheros .klq en cuarentena (quarantine) de Kaspersky Rescue Disk

Ayer tuve un cliente con un problema de virus... si, en Windows, claro.

Era un rootkit no demasiado malo y en una horita estaba mas que limpio. Pero, oh sorpresa, para evitar gastarse los duros, un "amigo" o "empleado" resabidillo, de los que dicen que "controlan" de ordenadores, habia intentado limpiarlo antes. Con lo que cree que conoce y sabe hacer mejor... "meto un CD de Kaspersky y le digo que borre todo". Eso lo supe luego, claro.

Resumiendo, se "calzo" un par de ficheros PST de 1.5GB cada uno, con todo el correo del que, para variar, no hay copia en ningun sitio. Y el cliente (el "amigo" habia desaparecido oportunamente antes de mi llegada) me exige "amablemente" que recupere su correo, que es basico, que tenia mil carpetas, y blablabla, sospechando que YO lo habia borrado al hacer mi trabajo.

Tras busquedas infructuosas de PSTs, ocultos o no, de DBXs (por si el tio usa Express y ni se acuerda, que eso pasa mucho), buscando en el puesto y en el servidor de ficheros (que algunos tienen los PSTs alli, con un trafico infernal en red, pero hey! se ahorran el Exchange), hasta buscando ficheros borrados con herramientas para ello... nada de nada. Ni rastro del correo.

Los virus no lo hacen, los antivirus no lo hacen... ni las abejas lo hacen! Nada que yo recuerde (sobre el tema infeccioso) se molesta en borrar ficheros y no dejar ABSOLUTAMENTE ningun vestigio en el disco/MFT/etc...

A la desesperada, busco ficheros modificados "hoy" y "grandes" (>100MB p.ej.) y aparece algo sospechoso. Un par de "C:\files_kl\....\*.klq" enormes. Buscando el San Google me quedo con la boca abierta. Son de la cuarentena de Kaspersky. Y me quedo flipado por el hecho de que, aunque detecte correos infectados (siempre hay alguno) mueva el PST entero! a cuarentena.

Me cabreo, me calmo, pregunto, y si, me confirman que si, que un "amigo" la ha pasado el Kaspersky Rescue Disk y que ha tardado horas, etc.

Y lo peor es que, tras media hora de Googleo, no parece haber manera de recuperar esos ficheros una vez "reiniciado" el equipo y sin el KRD recien pasado. Es decir, cuando los mueve a cuarentena puedes recuperarlos, pero si reinicias el PC, ya no se "acuerda" de lo que limpio en la ejecucion anterior... Cojonudo. Y como los cifra/encripta/ensobra etc. no es "copiar y cantar".

Incansable en mi desaliento, me llevo una copia de los pseudo-PSTs a casa para posteriores investigaciones. No sin antes hacer evangelio de "para la proxima dime ANTES que habeis hecho", "El amigo fontanero/abogado/alfarero/"dejame_que_yo_se_mucho_de_esto" te ha salido caro. En vez de media hora han sido cuatro y aun no tengo ninguna seguridad de recuperarlo. "Haz copias de seguridad" (esto es una batalla perdida). etc. Siempre etc.

Bueno, vamos alla. Tachaaannn. PARA RECUPERAR FICHEROS .klq:
===================================================

Descargar "Kaspersky Rescue Disk" (en adelante KRD) desde
http://devbuilds.kaspersky-labs.com/devbuilds/RescueDisk/kav_rescue_2008.iso

Si ya no funcionase en enlace deberas conseguir una image ISO por tu cuenta. Quizas la version "trial" de kaspersky te permita generarlo. No lo se.

Nos proveemos de una maquina virtual (en adelante MV) con TRIPLE espacio libre de lo que ocupan los ficheros .klq y DEBE estar como disco C, ya que es donde Kaspersky mete su directorio de backup/cuarentena en "C:\Documents and Settings\All Users\Datos de Programa\Kaspersky Lab\avp8\qb" (en adelante QB). En la version española, claro, pero no deberia ser muy diferente en otras. No he probado Vista/7, supongo que estara en "C:\Users\..." etc.

Arrancar la MV y copiar DOS veces con distintos nombres dichos ficheros. P.ej. si queremos recuperar "b92c57696cc2276c.klq" lo copiamos p.ej. en el raiz tal cual y como C:\b92c57696cc2276c.cop

Este fichero luego lo meteremos en cuarentena, cifrandolo *otra vez*, luego lo sustituiremos por el .klq original, que solo tiene UN paso de cifrado (o firma, o desensobrado, o llamalo como gustes), con lo que al "sacarlo" de la cuarentena lo desencripta dejando el fichero que buscamos, el que se elimino originalmente, en mi caso un PST de 1.5GB.

Los lectores mas avispados se imaginaran los pasos siguientes. Pero aun asi seguid leyendo porque hay alguna que otra "sorpresa" o truco que hace que funcione. Como nota, los nombres que pongamos no importan demasiado, pero mantened las extensiones. Al KRD no parece gustarle meter en cuarentena ficheros con extension .klq, y el "File Manager" especifica por defecto una mascara "*.*" que no significa lo mismo en Unix/Linux que en MSDOS^hWindows, con lo que los ficheros sin extension por defecto no los ves.

Quizas el tamaño tampoco importe demasiado, con lo que valdria crear cualquier fichero en vez de copiar el .klq como .cop, y no necesitariamos el triple de espacio sino solo el doble, pero asi a mi me funciona. Para que cambiar...

Vamos alla. Reiniciamos y arrancamos el KRD tras arrancar de la imagen ISO. Es un linux, por supuesto.

Al terminar de arrancar nos aparece directamente la ventana del KRD, probablemente con un enorme boton rojo y la leyenda "Fix it now". Eso es porque no tiene las ultimas firmas de virus actualizadas. Como no vamos a escanear el disco, en principio no lo necesitamos, pero la cuestion es que HASTA QUE NO SE ACTUALIZA y el boton cambia a un verde "Todo OK", pues el tema de la des-cuarentenizacion (oops) a mi NO me funciona. Asi que esperamos. Podemos ver el progreso en la pestaña "Update". Seran 30 minutos o asi.

Una vez actualizado, pinchamos en "Detected", Seleccionamos "Quarantined" en el desplegable (NO el "Quarantine..." de abajo) y vemos que esta vacio. Ahora si, abajo, pinchamos en "Quarantine..." para poner en cuarentena manualmente un fichero y seleccionamos nuestro fichero problematico "b92c57696cc2276c.cop". Recuerda que estara en "/discs/C:", si no sale ahi por defecto.

Tras seleccionarlo (con "Open") tardara un rato, ya que lo copia en el directorio de cuarentena (de ahi lo del triple espacio) y luego lo elimina de donde estaba (y de ahi que necesitemos el .klq original). Al acabar, habra aparecido en la lista de ficheros en cuarentena como "Added by user". Perfecto. Cerramos esa ventana dejando otra vez la inicial, la del "Scan/Update". Abrimos el "File Manager" y vamos a "/discs/C:/". Miramos en el directorio de backup/quarantine (QB, ver al principio) y deberia haber creado un fichero .klq nuevo. Ahora mismo ese tiene doble ensobrado o cifrado. No nos vale para nada, pero lo que si nos es util es su nombre de dieciseis digitos hexadecimales (pongamos por caso 123456789abcdef.klq) y la entrada que ha creado en la lista que mantiene KRD de los ficheros en cuarentena. Asi que lo sustituimos.

Copiamos nuestro fichero .klq original C:\b92c57696cc2276c.klq (el .cop habra desaparecido) y lo movemos al directorio de cuarentena SUSTITUYENDO el que hay, esto es, deberemos cambiarle el nombre por el que tiene el del QB y moverlo ahi "machacando" el que existe. Ahora volvemos a la consola de Kaspersky y repetimos los pasos para llegar a la administracion de ficheros en cuarentena. esto es, pinchamos en "Detected" y seleccionamos "Quarantined" en el desplegable. Deberemos ver otra vez el mismo fichero "Added by user", con el boton derecho seleccionamos "Restore" et voilà, "Close". Recuerda que el fichero ya correcto y descifrado estara como b92c57696cc2276c.cop, esto es, con el nombre con que lo metimos en cuarentena hace un rato, NO el nombre original.

Para comprobarlo, y si el fichero no es gigantesco y nos cabe en memoria, podemos usar "View" desde "File Manager". Los ficheros de cuarentena de Kaspersky empiezan por "KLQB44", y los recuperados correctamente pues... tu sabras. Recuerda que tambien tienes acceso a un terminal linux pulsando con el boton derecho en el escritorio, y aunque el entorno es MUY reducido, aun tienes cosas como "md5sum" (no hay "cmp") y "nano" que te pueden ser utiles.

29 dic 2009

2010

Primer post, ergo "declaración de intenciones":

Año nuevo, blog nuevo y linux nuevo.

La idea inicial es intentar ayudar, dar algo de luz, orientar o simplemente charlar sobre Unix/Linux/Windows en su vertiente técnica; aprovechando que, tras varios años de amor/odio/uso, me cambio de Fedora a Ubuntu y los problemas que me surjan me apetece "publicarlos".

Intentaré tratar sólo los aspectos técnicos, sin entrar en otras consideraciones, basándome en mis peleas con Unix/Linux (20 años +o-) y en el día a día de la resolución de los problemas más habituales de los usuarios de Windows "ComoSeLlameEsteAño", pero será difícil no soltar algún comentario sobre Redmond y todas sus $#&%eces.

Dicho esto, queda inaugurado este triste blog.