|
¿Solucionará Windows Vista el problema de los virus?
|
|
VSantivirus No. 2200 Año 10, miércoles 26 de julio de 2006
¿Solucionará Windows Vista el problema de los virus?
http://www.vsantivirus.com/windows-vista-virus.htm
Por Andrew Lee (*) (Eset Reino Unido)
Recientemente me preguntaron: "¿Solucionarán, las nuevas medidas de seguridad en Windows Vista, el problema de los virus?"
Después de reincorporarme, tras la sorpresa que me provocó esta pregunta, traté de brindar lo que espero haya sido una respuesta razonable. Sin embargo, después de reflexionar sobre el tema un tiempo más, decidí que la pregunta realmente merece algo más que la simple, y bastante obvia, respuesta "No".
Una segunda respuesta, también obvia, podría ser que Microsoft realmente no cree que los nuevos controles de seguridad resolverán el problema, dado que ha invertido grandes sumas de dinero en el desarrollo de sus propias soluciones contra el código malicioso (tanto programas antivirus como aplicaciones contra aplicaciones espía).
Estas soluciones se encuentran unidas con una serie de otras herramientas como Microsoft One Care y serán lanzadas junto con Windows Vista.
Existen dos partes diferentes de la pregunta que requieren una mayor investigación:
La primera sería: ¿Qué significa "el problema de los virus"?
Y la segunda: ¿Cuáles son las implicancias de las nuevas medidas de seguridad en Windows Vista?
De ahí surge una tercera pregunta: ¿Tiene la respuesta a la segunda parte, un impacto sobre el problema de los virus, tal como se lo definió en la primera?"
* ¿Qué significa el problema de los virus?
"El problema de los virus" se define en el lenguaje común, como ese grupo de "cosas" que "causan problemas en (mi) ordenador".
Ocasionalmente, se puede escuchar acerca del "problema de los virus" en diferentes medios de comunicación. E incluye (por lo menos en la percepción general) todas las categorías de código malicioso, entre otras cosas.
Dejando de lado esta definición confusa y amplia, y aceptando que no siempre será posible dividir satisfactoriamente las diferentes categorías de los programas no deseados de manera precisa y formal (por lo menos, no en público), existe un malentendido más profundo y fundamental aquí.
No solamente el público en general, incluso muchas de las personas de seguridad que no son especialistas, no comprende lo que es un código malicioso y las innumerables posibilidades en que pueden afectar los sistemas, sino que tampoco entienden la aplicación de diversos controles de seguridad.
Parece que, en las mentes de muchos, las medidas de seguridad que existen, principalmente debido a, y para resolver "el problema de los virus", no lo hacen y no lo harán.
Los controles de acceso, la autenticación de usuarios, los controles de integridad de datos, la criptografía, la denegación, detección de intercepción, endurecimiento de servicios, y otras medidas de seguridad, han estado activas durante mucho más tiempo que "el problema de los virus", y hacen muy poco para tratarlo de alguna manera significativa debido a una muy buena razón: no fueron diseñados para eso.
Cualquier sistema operativo lo suficientemente avanzado que sea capaz de "ejecutar" programas desarrollados de manera independiente, es susceptible al accionar de los virus y a la explotación maliciosa, independientemente de los otros tipos de controles (aunque, hasta qué punto y hasta qué nivel de "utilidad", es otra cuestión).
Si un programa puede ejecutarse y, por ejemplo, reunir información personal para acceder en una base de datos, otro puede ejecutarse con la misma funcionalidad.
El hecho de que en un caso esa base de datos sea utilizada por un agresor no tiene ningún efecto sobre la función en sí misma.
El problema de los virus no tiene que ver con los programas, tampoco necesariamente con la seguridad, ni siquiera con la tecnología.
El problema de los virus es, primero y principal, un problema social.
La mayoría de los códigos maliciosos modernos ni siquiera forman parte de la categoría de lo que podría definirse generalmente como "virus".
En realidad, la proporción es algo menor del 20%, incluso si se incluyen los gusanos de correo electrónico.
Entonces, ¿qué quiere el agresor?. Pregúntese lo siguiente:
¿Es posible ejecutar servicios y abrir puertos en el sistema?
Si la respuesta es "sí" (aunque tampoco sería de mucha utilidad si fuera "no") entonces sería capaz de controlar el sistema de manera remota con un programa de puerta trasera o, socavar un programa existente que esté escuchando (recibiendo) y brindando (enviando) información.
¿Se utiliza el teclado del equipo para la introducción de texto, incluyendo material personal confidencial?
Una vez más, sí. Entonces los programas capturadores de texto seguirán siendo una amenaza.
¿Es posible instalar archivos en el sistema? ¿Sí? Entonces, todavía tiene "el problema de los virus".
Cualquier sistema operativo, que se implante (instale distribuidamente) o se utilice de una manera no segura, está sujeto a la explotación maliciosa, ya sea directamente por personas o por programas maliciosos, incluyendo virus y gusanos.
* ¿Cuáles son las nuevas prestaciones de seguridad en Windows Vista?
La lista de las "nuevas" prestaciones de seguridad más importantes en Windows Vista, incluye: control de cuentas de usuarios, consentimiento y credenciales, integridad de código, encriptación de datos, aislamiento de aplicaciones, redireccionamiento de datos, criptografía, proveedores de credenciales, endurecimiento de servicios, Windows Defender, y servicios de administración de derechos.
Más información: http://www.microsoft.com/technet/technetmag/issues/2006/05/FirstLook/default.aspx
Podemos descartar algunas de ellas, dado que no tienen que ver con "el problema de los virus", y podemos concentrarnos en las que sí pueden tener un impacto: control de cuentas de usuarios, consentimiento y credenciales, integridad de código, aislamiento de aplicaciones, endurecimiento de servicios y Windows Defender.
* Controles de cuentas de usuarios (UAC, User account controls)
Esta característica (durante mucho tiempo un elemento básico de los sistemas operativos *nix y Mac OS) no es realmente nueva. Ha estado presente durante mucho tiempo en la familia NT de sistemas operativos.
La diferencia radica en que ahora los usuarios tienen más conciencia de ella y, lo que antes era la función "ejecutar como", se encuentra ahora mucho más integrada, porque no necesita que el usuario la utilice explícitamente (asumiendo que no se estaban ejecutando como administrador de todas formas).
Los usuarios podrán igualmente realizar acciones importantes, como introducir claves WEP, instalar impresoras y ejecutar programas que hayan sido descargados desde Internet.
La única diferencia estará en que Windows les pedirá permiso primero.
El hecho de no permitirle privilegios administrativos completos a un usuario común (por lo menos no de manera predeterminada) finalmente lleva al sistema operativo Windows de Microsoft, a un punto donde, su configuración, puede alertar al usuario más cauteloso de los problemas que son comunes a los programas no deseados.
No obstante, no lo lleva más allá de eso, y no resuelve el problema real que es que los usuarios simplemente no saben cómo distinguir entre acciones legítimas y las que probablemente causen un problema.
Las herramientas que tratan de hacerlo ya existen, y son creadas y comercializadas por profesionales de la seguridad, que ya saben que los controles de cuentas de usuarios no solucionan el problema.
* Consentimiento y credenciales
Dada la nueva forma en que se implementan los UAC, se necesitará el consentimiento para ciertas operaciones en la forma del acceso, por parte del usuario, de una contraseña administrativa solicitada por el sistema para completar la acción.
Una característica definitoria de muchos programas no deseados es que, para poder instalarse, dependen de usuarios con privilegios para completar una acción.
Aquí, "una acción" puede incluir también "algo que el usuario realizó porque un programa le preguntó si se lo permitía y el mismo no sabía que hacer, pulsando entonces en "Aceptar" y, de esa forma, se lo permitió".
El usuario es a menudo también el administrador (especialmente en un gran porcentaje de sistemas hogareños) y obligarlo a introducir una contraseña cuando el sistema operativo le pregunta si puede realizar una función, no va a resolver el problema.
Este es un inconveniente común con algunos programas cortafuegos y seguirá siendo un problema con Windows Vista por la misma razón: primero pulse, después piense.
La implementación de UAC y consentimiento de credenciales pueden alertar a los usuarios sobre que algo inesperado ha sucedido.
Por ejemplo, si un programa intentó instalarse durante el inicio, le habilitará a permitir o evitar dicha acción.
Sin embargo, esto coloca la responsabilidad en el usuario y es necesario que sepa lo que está haciendo.
A menudo, en los supuestos acerca del control de cuentas de usuarios, se encuentra inherente la idea que un usuario administrativo no hará una tontería.
Hace mucho tiempo, en su libro "A short course on computer viruses" (Un curso breve sobre virus de ordenadores), Fred Cohen demostró que controlar el privilegio del usuario no es una defensa, porque eso por sí sólo, no puede evitar que los usuarios con mayores privilegios ejecuten código que no deban lanzar los usuarios con menores privilegios.
El hecho de que el usuario sea una parte esencial, no quiere decir que entienda de código malicioso.
* Integridad del código
La integridad del código en Windows Vista implica que los controladores que no hayan sido firmados serán advertidos antes de ejecutarse en modo kernel y, verifica, que los binarios del sistema no han sido modificados.
Esto, por lo menos, debería tratar en cierta forma de garantizar que los archivos del sistema no se infecten con virus y, que a los rootkits en modo kernel se les haga difícil funcionar.
Si bien esto puede mejorar la estabilidad en un sistema que está siendo atacado, no evita que otros archivos se infecten, ni tampoco a los rootkits en modo usuario, los objetos de programas espía, gusanos o troyanos que afectan al sistema.
* Aislamiento de aplicaciones
El aislamiento de aplicaciones garantiza que cada proceso se ejecutará en su propio nivel de privilegios y, un sistema denominado Control obligatorio de integridad (MIC, Mandatory Integrity Control) definirá los "niveles de integridad", de forma tal que las aplicaciones que se ejecuten como, por ejemplo, un usuario común, se lanzarían en un nivel de autenticación menor que un programa en actividad con derechos administrativos completos y, por lo tanto, debería evitar el escalamiento de privilegios.
Los programas muy expuestos, como Internet Explorer, se ejecutarán en un nivel de autenticación menor y no podrán modificar los datos de los usuarios o cualquier otro binario de Windows (aunque esto pueda personalizarse para permitirlo).
Más importante aún, es que una aplicación que se esté ejecutando a bajo nivel solamente puede escribir en áreas del sistema que se encuentren marcadas como de bajo nivel.
En el caso de Internet Explorer, esta ubicación sería la carpeta de archivos temporales de Internet. Si (tal como es popular ahora con algunos programas espía) un archivo se está ejecutando desde Archivos temporales de Internet, no debería poder modificar los datos de los usuarios.
No obstante, si el archivo se transfiere desde ese lugar deliberadamente (no muchos usuarios almacenan archivos descargados en esa ubicación), se ejecutará en el nivel en el que el usuario esté autorizado, (que probablemente será el de administrador, si es que lo tiene permitido, tal como se comentó anteriormente).
El aislamiento de aplicaciones es esencialmente "algo bueno" y puede cerrar algunas de las vulnerabilidades que se encuentran actualmente asociadas con el uso de Internet Explorer. Sin embargo, es posible ajustar el nivel de integridad con el que los encargados de buscar lugares para explotar, se concentrarían en determinar una forma de realizar este ajuste de forma encubierta.
Aunque reduce un cierto tipo de riesgo, no resuelve "el problema de los virus". Principalmente porque, una vez más, no está diseñado para eso.
Algo que ha sido evidente durante toda la vida de Internet Explorer es que las vulnerabilidades, cuando se explotan aquí, tienen un gran impacto.
Cualquier opción para hacer que Internet Explorer sea más seguro, es buena.
Aunque me parece que deshacerse de ActiveX hubiera sido mucho más efectivo.
* Endurecimiento de servicios
El endurecimiento de servicios en el contexto de Windows Vista significa que los servicios del sistema no se ejecutarán más con el último privilegio utilizado (me pregunto quién más que el mismo Windows ha ejecutado frecuentemente taskmgr.exe desde un comando "at" para obtener control sobre los servicios descarriados del sistema o para poder detener forzadamente cualquier otro servicio).
Obviamente, una tarea programada no necesita estar ejecutándose al mayor nivel de privilegios y, el endurecimiento de servicios permite a los desarrolladores asignarle a estos, diferentes niveles de privilegio según su función.
Además, los desarrolladores deben poder "restringir la escritura" de servicios, de forma tal que solamente puedan tener dicho acceso aquellos objetos que lo permitan.
El problema más grande aquí, está en que si bien es posible endurecer un servicio, y así reducir el impacto de las vulnerabilidades, la efectividad de este endurecimiento dependerá del desarrollador que haya planificado y esté utilizando esta funcionalidad correctamente.
* Windows Defender
Windows Defender es una aplicación de Microsoft, contra programas espía, adquirida a Giant y a la que se la ha cambiado el nombre.
Realizar un examen de la efectividad de este producto está fuera del alcance de este artículo. No obstante, una característica excelente es que Windows Defender (¿quién no hubiera deseado que se hubiese llamado Windows Malware Defender, WMD?) le indica al usuario, con detalles, cada vez que un programa (incluso uno legítimo) realiza ciertas acciones, como por ejemplo, escribir en el registro.
Para el usuario informado este dato es muy útil.
Sin embargo, lo más interesante es que, a pesar de todas las otras medidas tomadas en Windows Vista, para conservar la integridad del sistema y reducir el contexto de ataque para explotadores maliciosos, se necesita todavía una aplicación independiente (aunque combinada) que esté dedicada exclusivamente a tratar con programas indeseables.
Esto, más que cualquier otra indicación, equivale a admitir que Microsoft no cree que los nuevos controles de seguridad en Windows Vista han de resolver "el problema de los virus".
El hecho de que Microsoft también esté firme en el juego de los programas antivirus con su versión re-empaquetada de RAV, es otro reconocimiento tácito de este hecho.
* Hasta aquí todo bien... ¿Entonces qué?
¿Entonces cuál es el impacto de las nuevas prestaciones de seguridad sobre "el problemas de los virus"?
Windows Defender claramente tendrá algún tipo de repercusión, así como también el control de acceso a las cuentas.
Así mismo puede ser el caso (como sucedió con Windows 9x y Windows NT) que inicialmente una gran parte del código malicioso anterior se convertirá en inútil en la plataforma de Windows Vista.
Por supuesto que esto es algo bueno, pero la historia nos muestra que frecuentemente los malos se ponen al día y pronto, será un negocio habitual en el mundo de creación de código malicioso.
Recientemente ha habido una tendencia masiva hacia la explotación delictiva del código malicioso. Esto ha representado la inversión de grandes sumas de dinero en el desarrollo de este tipo de código.
Al igual que, en los laboratorios de cada proveedor de aplicaciones contra programas espía, en el planeta existen muchas personas yendo de acá para allá tratando de obtener un producto que funcione en Windows Vista, y tal vez, la misma cantidad de gente (quizás más) que tiene el dinero para crear su propia infraestructura, y contratar desarrolladores de código malicioso, con el propósito expreso de derrotar a Windows Vista.
Últimamente, hemos visto explotaciones maliciosas derivadas directamente de vulnerabilidades de día cero en MS Word y MS Excel, y no existe una reducción de la cantidad de vulnerabilidades que están siendo encontradas.
Es casi un hecho que en Windows Vista (como en cualquier código lo suficientemente grande) existan vulnerabilidades esperando ser encontradas o, tal vez, que ya han sido encontradas y ahora están esperando ansiosamente algunos bytes de código de explotación.
Si el resultado final de las nuevas medidas loables de Windows Vista será que el usuario se sienta, como tantos usuarios mal informados de GNU/Linux y Mac OS, invulnerable a ataques, ya sean de virus o de la plétora de otros programas no deseables, particularmente los que utilizan técnicas de ingeniería social, entonces habremos retrocedido en lugar de haber avanzado.
Los usuarios de cualquier sistema operativo tienen la responsabilidad de informarse acerca de los peligros de la utilización de sus sistemas, y de la posibilidad real que, de no hacerlo, en algún momento serán presa de un ataque.
(*) Andrew J. Lee, es el CTO (director de tecnología) de ESET y NOD32.
* Información publicada con autorización de Virus Bulletin.
* Traducción y adaptación al español: Ontinet.com, S.L.
Publicado originalmente en:
http://www.nod32-es.com/news/documentos/about_windows_vista.htm
(c) Video Soft - http://www.videosoft.net.uy
(c) VSAntivirus - http://www.vsantivirus.com
|
|
|