viernes, 21 de agosto de 2009

Virus de pendrive... en pendrives, donde va a ser!

Hace algunos años, los tecnicos de pc tuvimos que empezar a lidiar con los virus. En un principio se trataba de cadenas de código autoreplicante, que se anexaban a los ejecutables y los "infectaban". En esa época los antivirus se encargaban de escanear y limpiar los ejecutables y, cuando las rutinas de deteccion descubrían el virus antes de que estuviera lista la rutina de desinfección, colocar el archivo en cuarentena esperando la cura.

Los mecanismos de infeccion eran azarosos para los que no andabamos por BBSs: el único modo era contagiarnos mediante algun diskette con archivos infectados, o un virus del sector de arranque. Cuando se popularizaron las grabadoras, quizas alguno haya llegado por un cd. Después vinieron los virus de macros en documentos de office, y luego la fauna de troyanos que conocemos ahora.

A mi siempre me interesaron los aspectos de ingeniería social en la distribución, es decir, aquellos que en vez de explotar vulnerabilidades del sistema se encargaban de explotar debilidades del usuario. Para nombrar un par, los archivos de extensión doble del tipo "miramisfotosentopless.jpg.scr" en el msn, y las páginas de falsos escaneos de disco como la que vimos aca me parecen ideas geniales.

Hace algún tiempo (dos o tres años aca en argentina, o desde que empece el blog) se popularizaron los discos extraibles en cualquiera de sus formas: pendrives, mp3, tarjetas de memoria etc, y los hacedores de virus observaron ese crecimiento con los ojitos brillantes por la emoción. Entonces se dedicaron a crear virus de pendrive.

Desafortunadamente para ellos, los diseñadores de pendrives y sistemas operativos ya no son como entonces: los discos extraibles no tienen autorun automático como los cds, y no se puede infectar el bootsector como en los diskettes. Es decir, que no hay manera de que el pendrive con virus infecte a la máquina sin intervención del usuario. Con solo enchufarlo no basta.

Y como cualquiera sospecharía de un archivo llamado "miraestevideocachondo.wmv.exe" en la raíz del disco (bueno, no cualquiera, seguro que algunos le harían doble click si se encontraran el pendrive tirado, pero digo cualquiera con dos dedos de frente, se entiende...), nuestros amigos tuvieron que buscar otras formas, principalmente de ingeniería social, para que el usuario ejecute el virus por si mismo en el uso normal del pen.

Detallo aqui los dos métodos que vi "in the field", con la esperanza de que mis lectores-técnicos de campo agreguen las joyas que hayan encontrado:

1) El viejo autorun.inf: Como ya vimos en este blog, es posible crear un autorun para asignar resultados específicos a las acciones sobre el pendrive. Así, un doble click al disco extraible desde Mi PC ejecuta sin preguntar el archivo que se indique en la linea open= o shellexecute= , mientras que si hacemos boton derecho sobre la unidad tendremos un menú que podemos personalizar a gusto. También se ejecuta la linea open= si aceptamos la accion predeterminada en el cuadro de dialogo de reproduccion automágica.

Usando este mecanismo, muchos virus de pendrive (la mayoría) se copian a la raiz del disco, y crean un autorun.inf oculto, que ejecuta el virus ante cualquier acción del desprevenido usuario. De estos vi también algunos que crearon una carpeta (oculta también) que pretendía pasar como una de sistema (recycler, por ejemplo) para dormir tranquilos ahi dentro.

El especimen mas raro que encontré de este tipo es uno que consistía en un autorun.inf solitario (sin ejecutable a la vista) ,de 140k. Al abrirlo, aparecía la maraña de caracteres especiales que uno ve cuando abre un binario con un editor de texto, con alguna cadena legible a lo largo del archivo. Me imagino que sería un combo autorun/virus, lo cual sería interesante para tratar de descubrir como corno ejecutas un .inf, o algún método para evitar el borrado del autorun, lo cual sería inteligente, o algun truco para hacerme creer eso, lo cual sería humillante. Elijan la que quieran.

2) La nunca bien ponderada falsa carpeta: Esta la vi ayer, y me parece genial. Una compañera de laburo/cliente le compro un Mp5 a la hija, y me lo trajo porque no podía cargarle música, ni sacar las fotos de adentro, y el antivirus saltaba cada vez que quería abrir una carpeta. A pesar de eso, el aparato funcaba. Cuando lo conecté encontré algo como esto:


El fucking virus había ocultado las carpetas reales, y había creado sendos ejecutables con el mismo nombre e icono! También había un ejecutable suelto y un autorun, para no dejar vector de ataque sin usar. El usuario entraba al aparato, y solo podía ver los ejecutables, por supuesto, sin las extensiones… lo cual es un excelente modo de hacer que cualquiera haga doble click sobre tu virus.

A pesar de la inventiva de los muchachos, hay que decir que cualquiera de estos métodos queda al descubierto cuando tenemos acceso al pendrive con vista de extensiones, archivos ocultos y de sistema; y que es posible (por ahora, al menos) explorar cualquier pendrive sin riesgo abriendo el explorador de windows a mano, y simplemente eligiendo la unidad con un click en el arbol de directorios. Por supuesto, en una máquina limpia! Porque teniendo control sobre la maquina host, cualquiera puede ocultarte lo que no quiera que veas.

Para terminar, les dejo una segunda recomendación: inmunicen su pendrive, y los de sus usuarios. No es necesario instalar nada, ni llevar un antivirus. Basta con seguir el método de CoskiBukowski, creando una carpeta en la raiz con el nombre autorun.inf, asi cuando ponemos el pendrive en una maquina con virus el maldito no puede crear su autoarranque, y el pendrive colecciona los ejecutables sin contagiar. Esto nos deja sin el bonito autoarranque, pero nos libera de revisar el pendrive cada vez que pasamos por una maquina sospechosa.

Fin. Enjoy!

jueves, 6 de agosto de 2009

Uno de herramientas

En nuestro laburo diario como técnicos, hay ocasiones en las que tenemos que poner a prueba nuestra inteligencia, inventar soluciones, hacer uso de nuestra experiencia en el manejo del usuario o simplemente aprender algo nuevo "on the fly". Estos son los trabajos que mas nos gustan y mas nos desafían. También son aquellos por los que cobramos siempre menos de lo que valen. Y son los mas escasos.

Asi, que, en general, los trabajos que tenemos que hacer son rutinarios y aburridos: reinstalar un sistema, cambiar una fuente, instalar un router wifi, compartir una impresora ,cambiar un antivirus o armar un equipo nuevo. Por eso está bueno disponer de herramientas y técnicas que nos permitan hacer esas cosas de un modo simple y rápido, mientras jugamos al Call of Duty o leemos a Feinmann en pdf (se nota que no tengo internet en casa todavía).

Como ejemplo, les presento tres herramientas que uso en casi cualquier trabajo sobre un sistema en uso: reinstalaciones, limpieza de virus, restauración de imágenes de ghost y otras.


1) Windows XP live USB Angelina edition: creo que su nombre lo dice todo. Lo baje de Taringa! hace un tiempo, antes de que saliera el hirens 9.7, y lo sigo prefiriendo sobre el mini xp que viene ahi, aunque es mas limitado. No tiene soporte para red, y algunas aplicaciones no arrancan por falta de librerías, pero el wallpaper lo vale!

Llámenme baboso...

Lo pueden conseguir acá, y buscando "XP Angelina" salen varios más.
En el rar esta la imagen, y el PeToUsb configurado para ponerlo en el pendrive. Por supuesto, yo lo tengo arrancando desde el Grub4Dos del hirens con las lineas:

title Angelina
find --set-root /minint/setupldr.BIN
chainloader /minint/setupldr.BIN

Lo uso principalmente para examinar el disco en máquinas en las que el windows no aranca, para hacer limpieza de documentos antes de reinstalar y para jugar al solitario (portable, claro) mientras se hace o se restaura una imagen de ghost. En tareas de limpieza es ideal con la próxima herramienta...

2) Scanner: Una joya que encontré en la Lupo Pensuite. Es uno de los muchos programitas que nos muestran el disco de alguna forma mas o menos gráfica. En este caso, en forma de anillos. Una muestra recursiva: el pendrive que tiene el programa:

Gasto casi 19Mb en la iso del geexbox... porque lo vale!

Es asi de simple: sirve para ver porqué un XP que parece limpio y se usa "solo para navegar" pesa mas de 20Gb; para encontrar las carpetas de descarga (por ejemplo, viejos temporales del emule, o carpetas de música y películas), y desde el Angelina sirve para borrar sin problemas el archivo de intercambio, la informacion de restaurar sistema, los temporales de internet y todo lo que no nos parezca innecesario antes de hacer el backup de un sistema usado. La verdad, creo que son pocas las maquinas en las que no termino corriéndolo para ver que onda. Lo pueden bajar desde acá.


El otro infaltable a la hora de rescatar documentos de una maquina con virus (o de una que no arranca) es el archiconocido Total Commander. Para los perdidos que no lo conocen, es un clon del viejo Norton Commander pero para windows. Es muy útil para mover grandes cantidades de información a golpe de F5, y tiene una ventaja importante con respecto al explorador de windows: cuando falla la copia de un archivo por cualquier motivo, nos permite continuar con el siguiente item. Además nos permite sincronizar directorios, puede leer y copiar desde archivos comprimidos y tiene funciones para partir y combinar archivos (split/join). Una belleza!
Para los que no lo tengan, pueden bajar una versión shareware funcional de la página oficial, o una versión portable y trucha desde acá.


Y ahora que particionamos, limpiamos, backapeamos y estamos reinstalando un desatendido en la maquina del cliente, ya podemos bajarnos la iso del último puppy para poner en el pendrive. Y para probarla de inmediato, podemos usar Mobalivecd!

Trabajen... y disfruten!