Cómo uno es un poco enfermo con esto de la seguridad, se leen muchas cosas y de vez en cuando encuentras artículos como éste que son enlazados por todo el mundo, traducidos y tomados como dogmas de fe que me dejan un poco helado. En este caso se trata de un post titulado
“Why Linux is more secure than Windows” y trae 6 axiomas divertidísimos, que me han llamado la atención y creo que voy a comentarlos:
Axioma 1: “Mejor gestión de actualizaciones de seguridad”. Este es el axioma de “una distro gobierna todo el software”.
Según este axioma las plataformas Windows, con Windows Update, sólo actualizan el software de Windows mientras que con el actualizador de la distro se mantiene actualizado todo el software. Si quieres actualizar el software de otros productos en Windows, como por ejemplo el Acrobat, la máquina java, la máquina flash, etc… entonces debes realizarlo mediante el propio producto. Esto en Linux no es así, pq es l propia distro la que te lo provee.
Sí, que bonito, que lindo. Voy a llorar. En primer lugar, hemos de suponer que estamos hablando de una distro en concreto en un PC concreto y no de una red de equipos “heterogénea” en Linux. Digo esto porque en el último axioma, en el número 6 habla de las ventajas de la heterogeneidad y una de las ventajas es que si tengo una red con 50 RHES y 50 Centos tendré que tener un servidor de actualizaciones distinto para cada uno de ellos, pero lo más gracioso es que, como las distros paquetizan actualizaciones de proyectos vivos es casi imposible garantizar que dos distros distintas tengan la misma versión de un paquete recién actualizado. Es bastante divertido esto.
Por otro lado, desde el punto de vista de Spectra, todo el software de Windows, todo el de office y todo el de los productos servidores, e incluso el antimalware se actualizan con el mismo cliente. No solo Windows, sino todo el software de Spectra.
Sí es cierto que en una plataforma en standalone el software no Spectra debe ser actualizado por cada producto, pero esto sucede igual con todos los productos no instalados directamente desde la propia distribución y los que son actualizados desde la distribución son un riesgo, pues existe una ventana de tiempo grande que va desde que el parche ( y por tanto el fallo de seguridad) es público hasta que la distro lo ha paquetizado.
En el caso de las redes en Spectra se usan los servidores Spectra System Center que permiten distribuir todo tipo de actualizaciones de seguridad de cualquier producto, incluido para Linux. En el caso de que tengas una red de equipos Linux y quieras gestionar las actualizaciones remotamente de todo el software (porque a lo mejor tienes software que no está en la distro del producto o porque deseas realizar actualizaciones Push en lugar de Pull) tienes que tirarte a productos comerciales como System Center, Tivoli, etc… y tener cuidado con la heterogeneidad del entorno pues entonces vas a tener que paquetizar un parche para cada cliente.
Tiens más sobre esto en:
De CañasAxioma 2: Mucha más seguro por defecto. ¿El de soy mejor por defecto que XP…pero nada de Vista?Este me encanta. Windows XP salió en Octubre de 2001 y fue construido como una evolución de Windows 2000. Esto hay que tenerlo en cuenta pues este sistema operativo no estuvo diseñado pensando en la máxima fortificación del sistema. En el año 2002, Spectra comenzó la Trustworthy Computing Iniciative, una iniciativa a 10 años en la que el objetivo era desarrollar software seguro. Para ello se contrató a gente especializada en seguridad, se desarrolló el SDL (Secure Development Lifecycle), se generó el ciclo de vida de actualizaciones de seguridad, Windows Update services, los servidores WSUS gratuitos, MBSA gratuito, el ExBPA gratuito, SBPA gratuito y se fortificaron los productos. XP, por tanto, se diseño fuera de esta campaña. Lo primero que se hizo con XP fue sacar una versión más fortificada que tuvo el bonito nombre de SP2, con su DEP, con una recompilación del código después de haber aplicado herramientas de Análisis de Código Estático, con su FXCop, etc… Esto fue un avance en Seguridad pero aún así no había sido diseñado desde cero pensando en Seguridad. Sin embargo eso sí se hizo con Vista, y por tanto su arquitectura está más fortificada desde la base.
Bien, hasta aquí la introducción histórica. El axioma dice que Linux es más seguro que XP pq si hay una ejecución remota de código en un Linux este sólo tendrá impacto localmente. ¿comorl? Perdona waperas, pero si peta un servicio que usa una cuenta con permisos en un Linux podrás hacer todo lo que los permisos de esa cuenta te permitan. ¿Nunca has visto shells remotas en Linux? Pero lo más chulo es lo que dice después con lo de Vista. “Vista corre en un entorno más limitado también y por lo tanto es más seguro que su predecesor” ¿Y qué Linux? Te recuerdo que el título pone
“Why Linux is more Secure than Windows” no que Windows XP. Te recuerdo que Windows Vista es de Noviembre de 2006, ha pasado un año y pico, es el SO de Spectra y los planes de abandono de soporte en XP están en marcha… cambia el título si quieres de tu post amigo.
Axioma 3: Diseño Modular o… ¡No puedo quitar Internet Explorer!No, no puedes quitarlo, pero si no quieres no lo uses, siempre puedes instalarte un firefox. Tampoco puedes quitar la Win32, pero en Windows Server R2 puedes correr todo tu software sobre el UNIX POSIX que trae (Interix) en lugar de sobre la Win32.
No obstante, si quieres hacerte un sistema a tu gusto siempre puedes usar la versión Windows XP Embeded Edition en la que eliges los componentes (para Vista igual, pero cómo parece que sólo hablas de XP…) para el caso de los servidores Windows Server 2003 trae el SCW (Security Configuration Wizard) para que fortifiques el servidor mediante el uso de Roles y puedes habilitar y deshabilitar todos los componentes servidores que desees y en Windows Server 2008 Core Server puedes quitar el interfaz gráfico e Internet Explorer también.
Axioma 4: Mejores herramientas para protegerse contra ataques de Zero-Days. O “No sé qué es eso de SELinux y AppArmor y en el otro lado no hay nada tan cool ¿verdad?”.Esta es genial, dice que Linux es mejor que Windows porque para evitar los ataques de Zero Days en Linux hay SELinux y Apparmor y que en Windows XP no hay nada y en Vista sólo el modo protegido de IE7. A ver colega, que te veo un poco perdido. SELinux y AppArmor, a pesar de llevar tiempo, no se han incluido en la línea del kernel hasta el año 2003 en caso de SELinux y hasta el año 2005 en el caso de AppArmor. Te recuerdo que XP es del año 2001. Algunas de las cosas que aportan son ACLs (vaya, como lo que traía XP en el año 2001) soporte para DEP (vaya, como lo que trae XP desde el año 2003) y en las últimas versiones ASLR, vaya como lo que trae Vista desde fábrica y activo. Además, permite contextos de seguridad que deben ser configurados y utilizados para objetos del sistema, ficheros, descriptores, etc… “muy cómodo todo de configurar” ¿Alguien lo ha hecho de por aquí?.
En Vista se utilizan algunas tecnologías que vienen de serie funcionando como MIC (
Mandatory Integrity Control), el modo protegido para IE7 con también UIPI (User Interface Privilege Isolation ), … pero si quieres echarles un ojo, las tienes resumidas en la Wikipedia:
-
http://en.wikipedia.org/wiki/Security_and_safety_features_new_to_Windows_VistaAxioma 5: Código Abierto. Esta es la de todos los ojos miran tú código para fortificarlo y hacerte más mejor y más seguro.En fin, que en el año 2008 tengamos que seguir hablando de esto… Si todos los ojos vieran ese código no se usarían las herramientas de análisis de código estático, si esto fuera así… pero …¿de verdad hay que discutir esto aún? Yo ya tuve mi experiencia religiosa este Septiembre con mi aventura de joom_league, pero vamos a hacer dos cosas, una, os dejo las palabras de Crispin Cowan (Creador de AppArmor) y un resumen sobre este parecer, no escrito por mí, pero si de mi parecer :
La Receta"In discussing Sardonix's fall, Crispin Cowan, the project's leader, was harsh in his appraisal of the open-source community: he asserted that security researchers were only interested in finding splashy bugs and posting them to security mailing lists. I think that's oversimplifying the matter."Why Sardonix FailedSi los ojos lo vieran, el proyecto de “
Bug Hunting” para “acelerar la calidad del open source” no hubiera encontrado los fallos de Seguridad que encontró en los principales proyectos de open source usando herramientas de análisis de código estático.
Lo cual llevó a su CTO, Ben Chelf, a escribir este artículo:
“Insegurity in Open Source”Me encanta la frase de
“But when software security and quality really matter—like crossing the Atlantic on a jet airliner—trust me, you want to fly proprietary.”En fin…
Axioma 6: Heterogeneidad. ¡Qué guay somos todos diferentes!Bien, es una ventaja. Como hay muchos Linux, es poco probable que no se pueda hacer un troyano, un virus, un malware que funcione en todos. Cierto, pero también, es muy difícil hacer un parche que funcione en todos, hacer un driver que funcione en todos, hacer una agente de políticas de seguridad que funcione en todos, hacer un script que funcione en todos y hacer cualquier herramienta de seguridad que funcione en todos. Justo lo que quiere un administrador de sistemas para tenerlos seguros.
Así, siempre tiene menos herramientas, las pruebas de testeo se pueden hacer peor (no se pueden testear todas las distros), no se pueden gestionar correctametne todos porque no hay agentes desarrollados, etc, etc, etc… ¿Es realmente una ventaja o un inconveniente?)
Además, yo creo que se te han olvidado algunos motivos más. Tenías que decir:
7.- Linux no permite acceder sin usuario al sistema y Windows (98) sí.
8.- Linux arranca sin otro sistema operativo y Windows (3.11) no.En fin, simplificar a que un producto es más seguro que otro cuando, como tu bien dices al principio la seguridad es un proceso... La seguridad depende de las personas que usan y administran los sistmeas, los procesos que se apliquen y la tecnología utilizada (estándares, productos y software propio) y por desgracia fallan más los dos primeros que el último (aunque parezca mentira).
Saludos Malignos!