mar 10 2011

Qué hacer con la seguridad de Android

Gabolonte Blasfemus

Owneame el droide

image¿Qué mes polémico para Android, no? No es que antes no se supiera de la existencia de malware capaz de infectar un androide, pero 50 aplicaciones infectadas disponibles para instalar desde el mismo Android Market que tomaban el control de tu teléfono es algo que no se puede pasar por alto, tanto que Google se vio obligada a tomar medidas drásticas que fueron más allá de bloquear a estas aplicaciones y las cuentas a las que pertenecían, sino también a borrarlas remotamente en todas las terminales donde se instalaron, así como también instalar un parche de seguridad que busca y elimina el malware que estas aplicaciones maliciosas hayan metido en el sistema por su propia cuenta; y todo automáticamente y sin intervención del usuario. Justo ahora que la NASA quiere hacer satélites usando smartphones.

Pero lo que este mediano escándalo también produjo fue principalmente toda una serie de argumentos, polarizados por supuesto de acuerdo a su fuente. Los sitios pro-Apple automáticamente tuvieron el regalo perfecto para, a costa de hacer leña del árbol caído, defender y vender nuevamente el modelo tirano-dictatorial de aprobación de aplicaciones en la Steve Apple Store bajo la falacia argumentativa de la falsa dicotomía. Traer agua para su molino es que le dicen, una frase con la que parece que están familiarizados muchos blogstars que viven en contante miedo de que se lo hagan mientras al mismo tiempo ellos se lo pasan haciéndolo a los demás.

Y mientras muchos están reclamando por más control y seguridad en el Android Market casi con la misma insistencia que se le pidió a USA que de vuelta medio oriente cuanto le tumbaron las gemelas, hasta una compañía de antivirus de la talla de Kaspersky salió a criticar la forma en la que Google se encargó de manejar el asunto, y no por acusarla de haber hecho poco, sino por afirmar que la forma de remover las aplicaciones maliciosas e instalar la herramienta de seguridad sin consultar ni notificar al usuario es un comportamiento idéntico al del malware. Y es entendible que digan esto los muchachos de Kaspersky, no quieren competencia. Todo antivirus encierra comportamientos digno del más dañino de los virus en pos de intentar frenar y ganarles a estos, y es evidente que acá lo que molesta es el precedente de que Google se haya metido a resolver su problema sin pedir ayuda a los expertos en seguridad, como ellos.

imageMuchos ya están dibujando paralelismos entre lo que fue la historia de Windows en la PC y lo que ahora sucede con Android ahora, y tal vez es hora de hacer un par de reflexiones al respecto.

Android no es intrínsecamente inferior en seguridad a otras plataformas de smartphones que existentes y pasadas. De hecho, comparado con sistemas como Windows Mobile por ejemplo, posee una seguridad mejorada, ya que por cada aplicación que se quiere instalar, ya sea del Android Market o de cualquier otra fuente, siempre muestra los niveles de acceso que se solicitan, los cuales deben ser aprobados por el usuario. Esto quiere decir básicamente que por cada vez que se instaló una aplicación maliciosa en un teléfono Android existió un usuario de la generación del siguiente que aprobó los exagerados permisos solicitados sin mirarlos, bajándose ciegamente los pantalones sólo por el placer compulsivo de instalar algo gratis. La diferencia que hace a Android más peligroso en materia de seguridad con respecto a otros sistemas no es entonces su diseño, sino el hecho de que, como le pasó a Windows, es demasiado exitoso, y es obvio entonces que todos los cybercriminales van a apuntarle.

Querido Google, por favor implementa esto

imageLa única solución más o menos viable de momento para mantener mayormente segura una plataforma muy popular es el método restrictivo de Apple, el que ya parece que muchos usuarios le sugieren a Google que implemente en su Market. Pero antes de pedir enceguecidos que se le entregue el poder total al emperador Palpatine para que nos cuide de los malos malosos, deberíamos analizar muy bien lo que queremos. A mi juicio, el abordaje de Apple tiene una alta eficacia para frenar el malware, pero a un costo demasiado alto: La libertad de elegir lo que queremos hacer con nuestro equipo. Porque nosotros pagamos por el, es nuestro, ¿se acuerdan? De hecho cualquier análisis apenas por encima de la superficie concluye que la mejor seguridad obtenida gracias a las políticas del Apple Store no son el objetivo, sino más bien un agradable efecto colateral de las mismas; el verdadero objetivo es tener todo el control, decidir qué puede y qué no puede estar en los dispositivos que Apple fabricó y que sigue viendo como de su propiedad a pesar de que los vende y no los regala. Sobran los casos de injusticias para determinar que el principal objetivo de las restricciones son defender los desmedidos y posesivos intereses de una compañía y no la seguridad de los usuarios en primer lugar.

Ahora bien, ¿pero qué se puede hacer con el problema real que tiene Google en su Android Market? Sabemos de siempre que no podemos confiar la seguridad en los propios usuarios, otro argumento que justamente gana adeptos al iPhone ya que libera en teoría a su usuario de cualquier preocupación al respecto, ya que papi Steve los cuida. Tal vez es un sueño loco, pero pienso que la mejor solución sería tener lo mejor de ambos mundos en simultáneo: Un modo Google me cuida, en el cual el gigante se encargaría, en lo posible sin que le afloren los mismos abusivos intereses que a su competidor, de no aprobar ninguna aplicación que se vea potencialmente maliciosa. Google es el dios de los algoritmos, no dudo que si se pone a eso en en serio puede hacer uno que detecte con una buena taza de aciertos aplicaciones maliciosas de manera heurística y bloquearlas incluso antes de que lleguen a publicarse. El otro modo sería algo así como el modo macho o soy geek y quiero hacer lo que quiera, el cual sería bastante parecido a lo que es ahora, con el agregado de que se debería permitir el acceso root para que sea como realmente se debe; básicamente similar a lo que es hoy el GeeksPhone, un smartphone con Android que ya viene pre-rooteado y que tiene todas las facilidades para flashear con el mod que se nos plazca.

imageLas terminales vendrían de fábrica por defecto en el primer modo restrictivo, presumiendo acertadamente que en la mayoría de los casos acabarían en las manos de usuarios que quieren simplemente usarlo sin preocuparse de ningún detalle técnico. El cambio al otro modo se realizaría ingresando en un apartado específico de la configuración del sistema, no sin antes hacerle aprobar el mismo al usuario escribiendo en un campo de texto algo como “entendí todo y me hago responsable si meto la pata”, aunque este modo no debería invalidar de ninguna forma la garantía del equipo, al menos en lo que a hardware se refiere. Este segundo modo debería estar disponible en toda terminal, y Google debería asegurarse de que ningún Motorola fabricante caprichoso la quite o anule para ahorrarse obligaciones de soporte o por pura guachada.

Así Android podría tener contentos a dos tipos de usuarios importantísimos para el éxito de cualquier plataforma: Los que son importantes por su cantidad, y los que lo son por su poder de evangelización y desarrollo de aplicaciones.

¿Qué ideas propondrían ustedes?


dic 9 2009

Microsoft Security Essentials y la detección heurística

Gabolonte Blasfemus

image Cuando no hace mucho comentaba mis buenas impresiones sobre el Microsoft Security Essentials y cómo podría amenazar a la industria de la seguridad en el post Adiós al negocio de los antivirus, existió una afirmación que generó cierto revuelo y produjo comentarios concernientes, tanto bien intencionados como de los otros: La carencia de un motor de detección heurística en el reciente producto antimalware de Microsoft.

El dato fue tomado por mí del artículo de LifeHacker que enlazaba en el mismo post, al cual en su momento, aunque me resultase algo extraño, tomé por válido. Luego de varios comentarios atacándome por recomendar e insinuar que un antivirus de estas características podría hacer sombra a los grandes de la industria, y a pesar de que en el resto de la competencia no parece ayudar de mucho, me seguía preguntando si realmente podía ser que Microsoft haya lanzado su nuevo software de seguridad sin una función que hoy en día es casi común en el resto (dejando de lado las limitadas versiones gratuitas de algunos fabricantes).

Revisando un poco esta cuestión, todo parece indicar que se trata de uno de esos tantos mitos negativos sobre MS que basta con que cualquiera los enuncie para que sean eternamente regurgitados por todos los que odian al extremo a la compañía o simplemente por los que saben que hablar mal de Microsoft rinde frutos. En el caso de MSE y su falta de análisis heurístico todo apunta a uno que se esparció por varios blogs, sitios de noticias y comentarios a causa de un test comparativo patrocinado por Symantec entre MSE y sus productos, a raíz del cual afirmó que el nuevo antivirus de Microsoft es básicamente “una versión mutilada de OneCare que sólo busca malware basándose en su base de firmas, sin incluir tecnologías actuales como las basadas en reputación o bloqueo por comportamiento”. Estas aseveraciones fueron rápidamente desmentidas por Microsoft, desde donde aseguran que MSE utiliza dentro de su motor de detección estos mecanismos en conjunto con la clásica detección por firmas. Otros artículos, como este de ZDNet UK, también hacen referencia a afirmaciones por parte de Microsoft en las que se asegura que MSE “utiliza una alta cantidad de técnicas de detección heurísticas comparado con OneCare”. También en varios tópicos dentro del foro oficial de Microsoft se planteó esta duda y fue varias veces respondida por los MVPs moderadores del mismo.

Y es muy fácil deducir de donde puede venir la confusión: Como la minimalista interfaz de configuración de MSE no posee un control específico para habilitar/deshabilitar las rutinas detección heurísticas específicamente, es posible pensar que no posee estas funciones en un primer lugar.

Por supuesto, está en nosotros creerle a Microsoft o a Symantec, o hacer nuestras propias pruebas.


sep 2 2009

Process Hacker, completo analizador de procesos para Windows

Gabolonte Blasfemus

Tengo que reconocer que cada vez que veo una captura de pantalla de algo que tenga una remembranza visual al portentoso Process Explorer de Sysinternals se me endulzan los ojos, y eso fue lo que pasó cuando vi la de Process Hacker, el cual es bastante similar al primero, pero con algunas vueltas de tuerca más, siendo la más interesante su capacidad de detectar y matar procesos ocultos en el sistema, eso que suelen hacer esos bichos que los paisanos les llaman rootkits.

image

Process Hacker interactúa on Windows a través de un driver propio, lo cual le provee suficiente poder como para matar cualquier proceso. También puede ser instalado para ejecutarse como un servicio, obteniendo de esta forma derechos irrestrictos sobre el sistema. Además de todo esto es gratuito, y si tenemos algún miedo de lo que pueda esconder es bueno saber que es un software open source, con lo que esas posibilidades se minimizan bastante. La única contra actual de esta excelente herramienta es que sólo funciona en Windows XP o superior de 32 bits y requiere del .NET Framework 2.0. En las versiones de 64 bits su funcionalidad se ve enormemente reducida a causa de que sólo son permitidos drivers firmados con un certificado digital válido emitido por una entidad de confianza, por lo que si deseamos poder cargar el driver de Process Hacker deberemos deshabilitar esta característica que viene por defecto en los sistemas de 64 bits.

Vía Windows Reference.


ago 7 2009

Notebooks con malware de fábrica en el BIOS

Gabolonte Blasfemus

¿Qué pasaría si repentinamente descubrieras que más de la mitad de las notebooks y laptops actuales se venden infectadas con un rootkit? ¿Y que se aloja en el BIOS del sistema, los antivirus lo permiten, y que no importa cuántas veces reinstales y formatees nunca te lo vas a poder sacar de encima? ¿Te parece un argumento para una película de cyberespionaje o algún delirio conspiranóico? A continuación vas a poder sacar tus propias conclusiones.

image En primer lugar presentemos un producto que algunos ya deben conocer: El servicio anti-robo de rastreo y control de notebooks Computrace LoJack for Laptops, el cual está también disponible en países como el nuestro, y está pensado para que, en caso de robo o pérdida, sea posible ubicar a la máquina ni bien se conecte a Internet, así como también optar por borrar remotamente todos sus datos. La misma compañía asegura que su sistema es imposible de eliminar del equipo con un formateo o cambio de disco ya que se aloja en la BIOS del mismo, aseveración que siempre me sembró dudas, ya que solía preguntarme cómo harían para instalarte algo en el BIOS que fuera compatible a nivel hardware con tu equipo en particular (existen miles de configuraciones de hardware), y de donde sacan espacio en un BIOS que ya está ocupado por el firmware original.

Mis dudas se revelaron al enterarme de la demostración que hicieron Alfredo Ortega y Anibal Sacco en la conferencia Black Hat 2009, donde justamente exponen el peligro de este código: El agente de software que permite la conexión con este servicio ya viene incorporado de fábrica en el 60% de las notebooks nuevas, más precisamente en las fabricadas por HP, Dell, Lenovo, Toshiba, Gateway, Asus, Fujitsu, Panasonic e incluso Apple, así como también de otros ensambladores OEM. De esta forma es perfectamente explicable el soporte a nivel hardware, ya que cada fabricante se ocupa del mismo para cada uno de sus modelos. Este módulo viene incorporado al sistema como una Option ROM, su activación de realiza supuestamente por medio de una API secreta en el SMBIOS o por strings de DMI, y su funcionamiento básico consiste en escribir en el disco, al encender el sistema, un nuevo servicio en la instalación de Windows que se encuentre instalada. Para eso por supuesto, este agente ya incluye controladores capaces de acceder al disco rígido del sistema en cuestión e interactuar con particiones FAT y NTFS, soportando incluso sistemas cifrados bajo BitLocker. Este servicio luego será el que se comunicará con los servidores de la compañía cada vez que Windows se conecte a Internet, el cual pasa inadvertido en el sistema ya que figura con un nombre (tanto el servicio como el ejecutable) muy similar al de un servicio propio del sistema operativo, estando además, gracias a cientos de alianzas llevadas a cabo por la empresa que lo fabrica, en la lista blanca de todos los antivirus, lo cual lo hace virtualmente indetectable.

image

Pero lo que Alfredo y Anibal expusieron de forma más alarmante fue la carencia de seguridad y autenticación en las acciones que este “rootkit legalizado”, tanto en los datos que extrae/escribe del disco, como en las comunicaciones con los servidores centrales. Esta última es llevada a cabo vía HTTP y sin ningún tipo de cifrado contra una URL cuya dirección es almacenada en el Registro de Windows por el mismo agente residente en el BIOS. Esto significa que ya por lo pronto, ya sea con un ataque de envenenamiento DNS o ARP, o con sólo alterar dicha entrada en el Registro, es posible lograr que cualquier notebook se conecte a un servidor en control de un atacante, pasando también entonces a tener control sobre este equipo. Por supuesto, imaginen esto multiplicado por los miles de notebooks que incorporan esta funcionalidad, es lo más parecido al sueño húmedo de un administrador de botnets.

image

Todo esto haría posible que nuestra notebook, así como miles más, pudieran ser remotamente controladas con la sola ejecución de un malware que en primer lugar active el agente Computrace residente en el BIOS en caso de no lo estuviese ya, y luego altere las entradas del Registro de Windows pertinentes para que en lugar de reportarse a los servidores originales, lo haga a otros bajo el control de los atacantes; y todo esto sin mencionar también que, sin llegar a alterar la comunicación entre los servidores de Computrace y el agente que reside en cada notebook, al viajar en plano el tráfico es totalmente visible en la red, especialmente cuando se usan redes inalámbricas desprotegidas, dando lugar a una alarmante amenaza a la privacidad. Como ven, las implicancias de este descubrimiento son enormes.

Los métodos para librarse de esta desagradable sorpresa escondida en nuestra notebook son variados, y su eficacia dependerá del equipo y versión del agente en sí, siendo una de las más fáciles redireccionar mediante el archivo hosts la URL a la que éste intenta conectarse una vez activo, search.namequery.com. También se menciona una herramienta de detección especialmente creada por  Ortega y Sacco, aunque no me fue posible encontrar ningún link de descarga a la misma.

Absolute, la compañía detrás de este agente que reside oculto en los BIOS de más de la mitad de las laptops del mundo, rápidamente salió a refutar las aseveraciones realizadas por estos expertos en seguridad, discutiendo algunas de las afirmaciones hechas por los mismos, aunque no mencionando absolutamente nada (cuak!) sobre lo fácil que sería interceptar las comunicaciones de su software sin necesidad siquiera de alterar el BIOS de los equipos.

Les sugiero leer cuidadosamente la documentación esta investigación, disponibles en Core Security Technologies, donde se explica con bastante detalle el funcionamiento de este invitado no deseado al BIOS de nuestras notebooks, y las opciones para neutralizarlo.


jul 31 2009

Rootkit que salta volúmenes cifrados con TrueCrypt

Gabolonte Blasfemus

El bootkit Stoned en acción contra Windows 7 + TrueCrypt Hasta ahora era bastante lógico pensar que una excelente protección para evitar que nuestros datos caigan en malas manos era cifrar el disco completo, lo que, en conjunto con las mejores medidas de seguridad online una vez levantado el sistema, evitarían casi cualquier tipo de intrusión. Pero ahora uno de los pocos pilares de la seguridad parece haberse caído, y este resulta menos hipotético que el de enfriar la memoria RAM. Incluso en un disco completamente cifrado, hay un sector del mismo donde el código permanece sin encriptación alguna, y es el MBR o Master Boot Record, la zona inicial de arranque del disco que luego inicia los cargadores de los diversos sistemas operativos que se encuentren instalados. Si se consigue colocar código malicioso en esa zona, luego será posible interceptar cifrados y cualquier seguridad del sistema operativo, ya que este código se cargara por encima de su kernel. Eso es lo que hace, más o menos, Stoned, que debuta siendo bautizado con el poco conocido calificativo de bootkit, esto es, un rootkit que se ejecuta desde el sector de booteo o arranque.  Según ya fue demostrado por Peter Kleissner, su creador, en la reciente conferencia BlackHat 2009, Stoned se ejecuta ni bien se enciende el equipo ya que está residente en el sector de arranque del disco, el cual como dijimos antes, no está cifrado ni aún en discos completamente cifrados con herramientas como TrueCrypt. Y son los desarrolladores de TrueCrypt quienes ahora deberían tratar de recoger el guante y hacer algo, ya que la demostración de Peter es un ataque directo contra la seguridad que se pensaba que tenía este conocido software de encriptación cuando se cifraba la unidad por completo. En este video podemos ver a Stoned en acción, o mejor dicho sus efectos, ya que por supuesto su ejecución es totalmente invisible a los ojos del usuario, donde cuando sale el diálogo del sector de arranque del software de TrueCrypt solicitando la contraseña para acceder y arrancar el volumen, Stoned ya se encuentra listo, escuchando lo que vamos a tipear, para luego poder acceder al sistema independientemente del kernel de Windows (un Windows 7 RC en el ejemplo del video) y escribir en esa partición supuestamente inaccesible desde fuera del SO los archivos suficientes como para instalar un malware, o como se ve en el ejemplo, un exploit para elevar los permisos del sistema.

Stoned significa todo un golpe a algunas cosas que se daban por sentadas en seguridad, y también y sobre todo por su accesibilidad, ya que no sólo es open source sino que posee una arquitectura de plugins extensible que permite la creación por parte de terceros de todo tipo de troyanos y payloads. Por el momento trae lo necesario, drivers para acceder a particiones FAT y NTFS y módulos de demostración como por ejemplo uno que permite blanquear contraseñas de cuentas de Windows. La versión actual de Stoned es efectiva desde Windows XP en adelante, llegando como se ve a funcionar incluso en el próximo a venir Windows 7, pero por su principio de funcionamiento, podría suponerse que bien se pueden crear versiones para comprometer sistemas Linux y Unix en general.

Y antes de que por esto vayamos a despreciar a TrueCrypt y dejar de usarlo a cambio de nada, hace falta tener en cuenta que para que este ataque sea efectivo se requiere un acceso físico previo al equipo que permita la instalación del bootkit, o explotar alguna vulnerabilidad del sistema operativo en ejecución que permita escribir la MBR desde el mismo, por lo que no significa que un disco cifrado con TrueCrypt ahora se volvió algo completamente crackeable. Para más información y para conseguir el código fuente de Stoned, nada mejor que visitar su sitio oficial, http://www.stoned-vienna.com/.

Vía The H Security.