Por qué Linux es más seguro que Windows

Hace unos días Google anunció que sus empleados dejarían de utilizar
Windows, alegando que Windows tenía algunos huecos de seguridad
importantes. Como ya vimos, si bien esto es cierto, puede
tratarse de una estrategia comercial
.

Sin embargo, esta
decisión me dejó pensando: ¿qué hace más seguro a Linux? Cualquier
usuario de Linux se da cuenta que es mucho más seguro… se siente más
seguro que Windows. Pero, ¿cómo explicar esa «sensación»?

Este
post es el fruto de varias horas de reflexión y búsqueda en internet. Si
todavía usás Windows y querés saber por qué Linux es más seguro o si
sos un usuario de Linux que disfruta de sus mieles y querés saber qué
hace de Linux un mejor sistema en materia de seguridad, te recomiendo
que leas este post detenidamente. Es largo pero vale la pena. Introducción: ¿qué es la seguridad? Mucha gente cree
que es correcto decir que un producto es seguro, así por ejemplo,
Windows es más seguro que Linux, Firefox más seguro que IE, etc. Esto es
parcialmente cierto. En realidad, la seguridad no es un producto,
algo que viene ya armadito y para llevar. Se trata, más bien, de un
proceso en la que el usuario juega un rol central
. En otras
palabras, la seguridad es un estado que debe ser mantenido activamente a
través de una interacción adecuada y responsable entre el usuario y el
software y/o sistema operativo instalado.

Ningún software o
sistema operativo es capaz de aportar ningún tipo de seguridad si el
administrador pone claves tontas como «123», o si no toma los recaudos
del caso. Dicho esto, sí es cierto que hay programas y SO más seguros
que otros en tanto tienen menos «agujeros» o vulnerabilidades, se
actualizan más rápido y, en términos generales, le hacen la vida más
difícil a los atacantes.

Es en este sentido que podemos decir,
por ejemplo, que Linux es más seguro que Windows. Ahora bien, ¿qué es lo
que hace que Linux sea más difícil de vulnerar? Bueno, una respuesta
que he leído y escuchado hasta el artazgo tiene que ver con el «security
through obscurity
» o «seguridad por oscuridad». Básicamente, lo que
argumentan muchos supuestos «expertos en seguridad» cuando se les
pregunta por qué Linux es más seguro es que como la mayor parte del
mercado de SO está en manos de Microsoft Windows, y los hackers malos
quieren hacer el mayor daño posible, entonces apuntan a Windows. La
mayor parte de los hackers quieren robar la mayor cantidad de
información posible o realizar alguna acción que los destaque por sobre
los demás y les dé «prestigio» dentro de su círculo. En la medida en que
Windows es el SO más usado, realizan todos los esfuerzos para crear
hacks y virus que afecten ese SO, dejando de lado los demás.

Me
parece muy importante destacar que hoy prácticamente nadie cuestiona
que efectivamente Linux sea más seguro que Windows
. En lo que se
equivocan los supuestos «expertos» es en la fundamentación
.

Los
«expertos», como decía, sólo se basan en un mero dato estadístico para
explicar por qué Linux es más seguro: existen menos virus y malwares
para Linux en comparación con la enorme cantidad que hay para Windows.
Ergo, Linux es más seguro… por ahora. Claro, al basar toda su
argumentación en este mero dato, en la medida en que más usuarios se
pasen a Linux, los hackers malos van a concentrarse cada vez más en
crear utilidades y herramientas malignas para explotar todas y cada una
de las vulnerabilidades de Linux. Se trata simplemente de un sistema de
incentivos, que haría más atractivo para los hackers desarrollar virus y
malware para Linux en la medida en que se vaya haciendo cada vez más
popular. La supuesta seguridad de Linux, si acordamos con el análisis
de los «expertos», sería una gran mentira. Linux no sería seguro sino
utilizado por poca gente
. Nada más… Yo creo, en cambio, que la
mayor seguridad que aporta Linux se basa en algunos aspectos
fundamentales de su diseño y estructura
.

Otro dato
estadístico alcanza para empezar a darnos cuenta de que los «expertos»
no saben nada. El servidor web Apache (un servidor web es un programa
que se encuentra alojado en una computadora remota que aloja y envía las
páginas a tu explorador web cuando vos, visitante, pedís acceso a esas
páginas), que es software libre y corre generalmente bajo Linux, tiene
la cuota de mercado más grande (mucho mayor que la del servidor IIS de
Microsoft) y a pesar de ello sufre muchos menos ataques y tiene menos
vulnerabilidades que la contraparte de Microsoft. En otras palabras, en
el mundo de los servidores donde la historia es al revés (Linux +
Apache poseen la mayor cuota del mercado), Linux ha demostrado ser más
seguro que Windows
. Las empresas
de software más grandes del mundo
, los proyectos
científicos más ambiciosos
, incluso los gobiernos más importantes,
todos eligen Linux para almacenar y proteger la información de sus
servidores y cada vez más son aquellos que lo están empezando a elegir
como sistema de escritorio. ¿Vos que vas a elegir?

Las 10
características que hacen a Linux muy seguro En contraste con el endeble
papelucho de cartón en el que, con suerte, te puede llegar el CD de
Linux (estoy pensando en un Ubuntu, por ejemplo), el CD de Windows
típicamente viene en una cajita de plástico que está cerrada
herméticamente y que tiene una etiqueta bien visible que te pide con
ansias que prestes conformidad con los términos de la licencia que
acompaña al CD y que probablemente encuentres en la prolija caja de
cartón en la que todo venía empaquetado. Este sello de seguridad está
diseñado para prevenir que los gusanos vulneren la cajita de plástico de
tu CD e infecten tu copia de Windows antes de que sea efectivamente
instalada, lo cual constituye un recaudo importante y un activo de
seguridad invaluable.

Claramente Windows le saca ventaja a Linux
en lo que respecta a la seguridad física de sus copias (jaja), pero
¿qué sucede una vez que ya lo instalamos? ¿Cuáles son las 10
características que hacen a Linux
más seguro que Windows
?

1. Es un sistema multiusuario
avanzado
.

En la medida en que Linux se basa en Unix,
originalmente pensado para su utilización en redes, se explican algunas
de sus importantes ventajas en relación a la seguridad respecto de
Windows. El usuario con más privilegios en Linux es el administrador;
puede hacer cualquier cosa en el SO. Todos los otros usuarios no
obtienen tantos permisos como el root o administrador. Por esta razón,
en caso de ser infectado por un virus mientras un usuario común está
sesionado, sólo se infectarán aquellas porciones del SO a las que ese
usuario tenga acceso. En consecuencia, el daño máximo que ese virus
podría causar es alterar o robar archivos y configuraciones del usuario
sin afectar seriamente el funcionamiento del SO como un todo. El
administrador, además, estaría habilitado para eliminar el virus
fácilmente.

Una vez que concluye la instalación de cualquier
distro Linux, se nos solicita que creemos un root y un usuario común.
Esta falta total de seguridad que involucra la creación de más de un
usuario por computadora es la causante de su poca popularidad. ¡Ja! No,
hablando en serio, esta es una de las razones por las que Linux es más
seguro.

En comparación, por ejemplo en Windows XP, las
aplicaciones de usuario, como Internet Explorer, tienen acceso a todo el
sistema operativo. Es decir, supongamos que IE se vuelve loco y quiere
borrar archivos críticos del sistema… bueno, podría hacerlo sin
problemas y sin que el usuario se entere de nada. En Linux, en cambio,
el usuario tendría que configurar explícitamente la aplicación para que
corriese como root para introducir el mismo nivel de vulnerabilidad. Lo
mismo sucede con los propios usuarios. Supongamos que una persona se
sienta en mi compu con WinXP. Va a C:Windows y borra todo. No pasa
naranja. Lo puede hacer sin problemas. Claro, los problemas vendrán la
próxima vez que intente iniciar el sistema. En Windows el usuario y
cualquier programa que él instale tienen acceso para hacer prácticamente
cualquier cosa en el SO. En Linux esto no sucede. Linux utiliza una
administración de privilegios inteligente por el cual siempre que el
usuario quiera hacer algo que sobrepase sus privilegios se pedirá la
contraseña del root.

Sí, es molesto… pero es lo que lo hace
seguro. Hay que escribir la bendita contraseña cada vez que se quiera
hacer algo que potencialmente pueda afectar la seguridad del sistema.
Esto es más seguro porque los usuarios «comunes» no tienen acceso para
instalar programas, ejecutar llamadas del sistema, editar archivos del
sistema, cambiar configuraciones críticas del sistema, etc.

Desde el principio, Linux fue diseñado como un sistema multiusuario.
Incluso ahora, las debilidades más importantes de Windows están
vinculadas a sus orígenes como sistema independiente para 1 sólo
usuario. Lo malo del modo de hacer las cosas en Windows es que no hay
capas de seguridad. Es decir, una aplicación de alto nivel, como un
explorador de internet o un procesador de textos, están unidos y pueden
acceder a las capas más bajas del sistema operativo, con lo cual la más
pequeña vulnerabilidad puede dejar expuesto a todo el sistema operativo.

Desde Windows Vista, se introdujo en Windows el Control de Cuentas de
Usuario (UAC por sus siglas en inglés) que hace que cada vez que quiera
ejecutarse un programa o realizarse alguna tarea potencialmente
peligrosa se requiera la contraseña del administrador. Sin embargo, sin
contar el hecho de que  casi todos siguen
usando WinXP por su comodidad y facilidad, la mayor parte de los
usuarios de Win7 o Win Vista se loguean siempre como administradores o
le otorgan derechos de administrador a sus usuarios. Al hacerlo, cada
vez que quieran realizar alguna de estas tareas «peligrosas» el sistema
simplemente mostrará un cuadro de diálogo que el usuario debe aceptar o
rechazar. Cualquier persona que se siente en tu escritorio y/o se
apodere de tu máquina automáticamente tiene privilegios de administrador
para hacer lo que se le cante. Para una comparación completa entre UAC y
su, sudo, gksudo, etc. les recomiendo leer este
artículo de Wikipedia
.

2. Mejor configuración por
defecto
.

Por su parte, la configuración por defecto en todas
las distros Linux es mucho más segura que la configuración por defecto
de Windows. Este punto está íntimamente vinculado con el anterior: en
todas las distros Linux el usuario tiene privilegios limitados, mientras
que en Windows casi siempre el usuario tiene privilegios de
administrador. Cambiar estas configuraciones es muy fácil en Linux y un
poco complicado en Windows.

Claro que cualquiera de éstos puede
ser configurado de tal modo de convertirlo en un sistema inseguro (al
correr todo como root en Linux, por ejemplo) y Windows Vista o Windows 7
(que, por cierto, copiaron algunas de estas características de Linux y
Unix) podrían configurarse de mejor modo para hacerlos más seguros y
ejecutarse bajo una cuenta más restringida que la del administrador. Sin
embargo, en la realidad esto no sucede. La mayor parte de los usuarios
de Windows tiene privilegios de administrador… es lo más cómodo.

3. Linux es mucho más «asegurable»

En la medida en que
la seguridad, como vimos al comienzo, no es un estado sino un proceso,
aún más importante que venir «desde fábrica» con una mejor configuración
por defecto es poder brindarle al usuario la libertad suficiente como
para adaptar los niveles de seguridad a sus necesidades. A esto es a lo
que yo llamo «asegurabilidad». En este sentido, Linux no sólo es
reconocido por su enorme flexibilidad sino por permitir ajustes de
seguridad que serían imposibles de conseguir en Windows. Esta es la
razón, precisamente, por la que las grandes empresas eligen Linux para
administrar sus servidores web.

Podrá sonar muy «zen», pero esta
situación me recuerda a una anécdota que alguien me contó alguna vez.
No sé si todavía sigue sucediendo pero me dijeron que en China la gente
le pagaba al médico cuando estaba bien y dejaba de hacerlo cuando estaba
mal. Es decir, al revés de lo que hacemos nosotros en la «sociedad
occidental». Aquí sucede algo parecido. En Windows existe un enorme
mercado en torno a la seguridad pero que se basa esencialmente en
controlar o disminuir los efectos y no las causas que hacen de Windows
un sistema inseguro. En Linux, en cambio, un usuario intermedio o
avanzado puede configurar el sistema de tal modo que sea prácticamente
impenetrable sin que ello implique la instalación de un antivirus,
antispyware, etc. En otras palabras, en Linux el foco está puesto en las
causas, o sea en las configuraciones que hacen a un sistema más seguro;
mientras que en Windows el acento (y el negocio) está puesto en las
consecuencias de una posible infección.

4. No hay archivos
ejecutables ni registro

En Windows, los programas maliciosos
generalmente son archivos ejecutables que, luego de engañar al usuario o
saltear su control, se ejecutan e infectan la máquina. Una vez que esto
sucedió es muy difícil removerlos ya que, en caso de que podamos
encontrarlo y eliminarlo, éste se puede replicar e incluso puede guardar
configuraciones en el registro de
Windows
que le permitan «revivir». En Linux, en cambio, no existen,
estrictamente hablando, archivos ejecutables. En realidad, la
ejecutabilidad es una propiedad de cualquier archivo (sin importar su
extensión), que el administrador o el usuario que lo creó puede
otorgarle. Por defecto, ningún archivo es ejecutable a menos que alguno
de estos usuarios así lo establezcan. Además, Linux utiliza archivos de
configuración en vez de un registro centralizado. Es conocida aquella
frase que dice que en Linux todo es un archivo. Esta descentralización,
que permite evitar la creación de una enrome base de datos hipercompleja
y enredada, facilita enormemente la eliminación y detección de los
programas maliciosos así como dificulta su reproducción teniendo en
cuenta que un usuario normal no puede editar archivos del sistema.

5. Mejores herramientas para combatir los ataques zero-day

No siempre alcanza con tener todo el software actualizado. Los ataques
zero-day (un ataque que explota vulnerabilidades que los propios
desarrolladores del software todavía desconocen) son cada vez más
comunes. Un estudio ha demostrado que lleva solamente seis días a los
crackers desarrollar software malicioso que explote estas
vulnerabilidades, mientras que le lleva meses a los desarrolladores
detectar estos agujeros y lanzar los parches necesarios. Por esta razón,
una política de seguridad sensible tiene siempre en cuenta la
posibilidad de ataques zero-day. Windows XP no cuenta con tal provisión.
Vista, en modo protegido, aunque es útil, provee solamente protección
limitada a los ataques a IE. En contraste, la protección provista por
AppArmor o SELinux es ampliamente superior, proveyendo una protección
muy «fina» contra cualquier tipo de intento de ejecución de código en
forma remota. Por esta razón, es cada vez más común que las distros
Linux vengan con AppArmor (SuSE, Ubuntu, etc.) o SELinux (Fedora,
Debian, etc.) por defecto. En otros casos, se pueden bajar fácilmente
desde los repositorios.

6. Linux es un sistema modular.

El diseño modular de Linux permite eliminar un componente cualquiera
del sistema en caso de ser necesario. En Linux, se podría decir que todo
es un programa. Hay un programita que gestiona las ventanas, otro que
gestiona los logins, otro que se encarga del sonido, otro del video,
otro de mostrar un panel de escritorio, otro que funciona como dock,
etc. Finalmente, como las piezas de un lego, todas ellas forman el
sistema de escritorio que conocemos y utilizamos diariamente. Windows,
en cambio, es un enorme bloque de cemento. Es un bodoque que es muy
difícil de desarmar. Así, por ejemplo, en caso de que tengas la sospecha
de que Windows Explorer tiene alguna falla de seguridad, no vas a poder
eliminarlo y reemplazarlo por otro.

7. Linux es software
libre
.

Sí, definitivamente esta es una de las razones más
importantes por las que Linux es un SO mucho más seguro que Windows
porque en primer lugar los usuarios pueden saber exactamente qué hacen
los programas que componen el SO y, en caso de detectar una
vulnerabilidad o irregularidad, pueden corregirla al instante sin tener
que esperar un parche, actualización o «service pack». Cualquiera puede
editar el código fuente de Linux y/o los programas que lo componen,
eliminar la brecha de seguridad y compartirla con el resto de los
usuarios. Además de ser un sistema más solidario, que incentiva la
participación y la curiosidad de los usuarios, es mucho más práctico a
la hora de resolver agujeros de seguridad. Más ojos permiten la
detección y solución más rápida de los problemas. En otras palabras, hay
menos agujeros de seguridad y los parches se lanzan más rápidamente que
en Windows.

Además, los usuarios de Linux estamos mucho menos
expuestos a los programas spyware y/o cualquier otro programa que
obtenga información del usuario en forma oculta o engañosa. En Windows,
no tenemos que esperar a infectarnos con algún programa malicioso para
sufrir este tipo de robo de información; existen pruebas de que el
propio Microsoft e incluso otros programas muy reconocidos realizado por
otras empresas, han adquirido información sin el consentimiento de los
usuarios. Concretamente, Microsoft
es acusado
de utilizar software con nombres confusos, como el
Windows Genuine Advantage, para inspeccionar los contenidos de los
discos rígidos de los usuarios. El acuerdo de licencia incluido en
Windows requiere que los usuarios acepten esta condición antes de usar
Windows y afirma el derecho de Microsoft para hacer este tipo de
inspecciones sin notificar a los usuarios. En definitiva, en la medida
en que la mayor parte del software para Windows es privativo y cerrado,
todos los usuarios de Windows y los desarrolladores de programas para
ese SO dependen de Microsoft para solucionar las brechas de seguridad
más graves. Lamentablemente, Microsoft tiene sus propios intereses en
materia de seguridad, que no necesariamente son los mismos que los de
los usuarios.

Existe el mito de que, al estar disponible
públicamente su código fuente, Linux y todos los programas de software
libre que corren bajo Linux son más vulnerables porque los hackers
pueden ver cómo funcionan, encontrar los huecos de seguridad más
fácilmente y sacar provecho de ellos. Esta creencia está muy vinculada
al otro mito que nos encargamos de deshacer al comienzo del artículo: la
oscuridad trae seguridad. Esto es falso. Cualquier experto en seguridad
realmente serio sabe que la «oscuridad», en este caso dada por tratarse
de software de código cerrado, dificulta la detección de las brechas de
seguridad por parte de los propios desarrolladores, así como dificultan
el informe y detección de estas brechas por parte de los usuarios.

8. Repositorios = chau cracks, seriales, etc. El hecho de que
Linux y la mayor parte de las aplicaciones que se escriben para correr
en él sean software libre ya, de por sí, es una enorme ventaja. No
obstante, si esto no estuviera combinado con el hecho de que todo ese
software se encuentra disponible para su descarga e instalación desde
una fuente centralizada y segura, probablemente su ventaja comparativa
respecto de Windows no sería tan considerable. Todos los usuarios de
Linux sabemos que al instalar Linux automáticamente nos olvidamos de
buscar seriales y cracks que, por otra parte, nos obligan a navegar por
sitios inseguros o deliberadamente diseñados para hacer caer a los
usuarios y jugar con sus necesidades. Tampoco precisamos de la
instalación de ningún crack, los cuales muchas veces tienen algún virus o
malware por ahí escondido. En cambio, sí tenemos, dependiendo de la
distro que usemos, una serie de repositorios desde los cuales bajamos e
instalamos el programa que necesitemos con un simple clic. Sí, ¡así de
fácil y seguro! Ya desde los primeros pasos de la instalación de
Windows, éste demuestra su amplia superioridad en términos de seguridad.
A medida que el proceso de instalación comienza, se insiste que el
usuario ingrese un número de serie antes de continuar. Sin esta
información vital, el usuario no puede continuar con la instalación. La
mayor parte de los usuarios de Windows por suerte todavía no saben que
una búsqueda rápida en Google puede brindarle acceso a miles de
seriales, así que esta pieza de información es la defensa más poderosa
contra los indeseados back-doors. Sí… es un chiste. 🙂 ¿Qué seguridad
brinda un sistema que puede ser crackeado y vulnerado de modo que se
pueda evitar el ingreso del serial, único medio a través del cual
Microsoft se asegura que los usuarios paguen por sus copias? Es un SO
tan malo que ni siquiera pueden (¿ni
quieren
?) hacerlo invulnerable de modo tal que todos paguen por sus
copias.

9. 1, 2, 3… Actualizando Si sos como la
mayoría de las personas que conozco, usás WinXP. El primer XP venía con el IE
6
(de agosto de 2001), el XP con el service pack 1 venía con el IE 6
SP1 (de septiembre de 2002) y el XP SP2 venía con el IE 6 SP2 (de
agosto de 2004). En otras palabras, en el mejor de los casos, estás
utilizando un explorador que fue desarrollado hace casi 6 años. No hace
falta explicar la enormidad que esto significa en términos del
desarrollo de software. En esos años no sólo se detectaron y explotaron
miles de vulnerabilidades al WinXP sino también al explorador que
utiliza por defecto.

En Linux la cuestión es bien diferente. Es
mucho más seguro que Windows porque está siendo permanentemente
actualizado. Gracias a que Linux es un sistema modular, desarrollado
como software libre y que cuenta con un sistema de repositorios de
gestión de actualizaciones e instalación de nuevos programas, estar al
día es una pavada. Desde el explorador de internet hasta el más
recóndito programita que gestiona los privilegios de usuarios o la
gestión de las ventanas, etc., pasando por el kernel y los drivers
necesarios para el funcionamiento del sistema, todo se actualiza mucho
más rápido y fácil que en Windows.

Precisamente, en Windows, las
actualizaciones se realizan una vez por mes. Claro, eso si no las
desactivaste, ya sea porque te resultaban molestas, porque consumían
parte de tu ancho de banda o simplemente por temor a que Microsoft
detectara de algún modo tu copia ilegal. Pero eso no es lo peor. La
actualización de cada una de las aplicaciones es independiente, esto
significa que Windows no se encarga de actualizarlas, cada una de ellas
tiene que encargarse de ello. Como bien sabemos, muchas no tienen la
opción de buscar las actualizaciones. Es el usuario el que se tiene que
preocupar por enterarse del lanzamiento de una nueva versión, la
descarga y la posterior actualización (siempre con el temor de no saber
si tiene que borrar la versión anterior o no).

10.
Diversidad, bendita tu eres entre todas
.

Los usuarios de
Windows están acostumbrados a que Microsoft les diga qué programa
utilizar para cada cosa. De este modo, la utilización del sistema se
supone que es más sencilla, se crean estándares comunes, se facilita la
compatibilidad, etc. En fin, todo esto ha demostrado ser falso. Por el
contrario, ha contribuido meramente a la uniformidad y el
direccionamiento desde arriba, como si se tratara de una dictadura. Esa
homogeneidad ha facilitado enormemente la tarea de los atacantes para
detectar vulnerabilidades y escribir programas maliciosos que las
exploten.

En comparación, en Linux existen una cantidad infinita
de distribuciones con diferentes configuraciones, rutas de sistema,
sistemas de gestión paquetes (unos usan .deb, otros .rpm, etc.),
programas de gestión de todas las actividades del sistema, etc. Esta
heterogeneidad dificulta enormemente el desarrollo de virus que tengan
un amplio impacto, como sí es posible en Windows.

Los
detractores de Linux dicen que más distribuciones equivalen a una mayor
propensión de error y, por consiguiente, mayores vulnerabilidades de
seguridad. Esto, en principio, podría ser cierto. Sin embargo, como
acabamos de ver, esto se ve más que compensado por el hecho de que esas
vulnerabilidades son más difíciles de explotar y terminan afectando a
menos gente. En definitiva, los incentivos de los hackers para escribir
software malicioso que afecte a estos sistemas disminuyen notablemente.

Yapa. Los programas para Linux son menos vulnerables que sus
contrapartes para Windows
. Esto es algo que, de algún modo, ya lo
mencioné al desarrollar algunos de los otros puntos pero me pareció
importante destacarlo como un punto aparte. El software para Linux es
más seguro y menos vulnerable que su contraparte para Windows por varios
de los aspectos que también caracterizan a Linux: es software libre, se
actualiza mucho más rápido, se obtiene a través de los repositorios,
existe una enorme diversidad de programas, etc. Es decir, tanto en su
diseño y desarrollo como en su distribución y ejecución, los programas
para Linux brindan mayores ventajas de seguridad.

http://usemoslinux.blogspot.com/2010/06/por-que-linux-es-mas-seguro-que-windows.html

¿Te resultó interesante? Compártelo ...



GUTL

Publicado por GUTL

Forma parte de GUTL desde el 6 diciembre, 2011.