El software, los virus y las ropas del Emperador

publicado 23/04/2007, Última modificación 26/06/2013

Hace muy poco, un oficial del equipo de seguridad de Microsoft comentó que "el problema del phishing (engaño informático) es que no existe un parche para la estupidez humana".

Dicho de otra forma, este oficial tuvo la desfachatez de comentar que "los computadores de los usuarios se infectan con malware porque los usuarios son estúpidos".

¿Te consideras tú, estimado lector, estúpido como para caer en el engaño del virus y el e-mail tramposo? ¿Eres tú, atento lector, lo suficientemente estúpido para instalar un virus en tu ordenador? ¿Eres tú, querido lector, lo bastante estúpido para ser inconsciente de que el último salvapantallas que has descargado contiene spyware?

Pues no. Nadie es suficientemente estúpido como para contagiar su computador de virus. Hoy te voy a explicar la razón por la cual los virus "aparecen por arte de magia" en tu computador, y tú te quedas rascándote la cabeza, preguntándote "¿qué hice mal?" y sintiéndote ignorante.

Lo siguiente que voy a relatar es una cadena completamente compuesta -- no de "opiniones de expertos", sino -- de hechos de ingeniería de software:

  • Para aquellos que no saben de ingeniería del software: un bug (defecto) es una condición en un programa de ordenador, resultado de un error humano en la etapa de creación del software.
  • Normalmente, los bugs sólo disminuyen tu productividad. Sin embargo, algunos bugs pueden -- por su naturaleza -- acabar dando a software malicioso e indeseable (virus y demás) acceso completo a tu computador.
  • Los ordenadores modernos, y sus sistemas operativos, utilizan distintas técnicas para mantener separados los programas. Los bugs modernos son las puertas por las que los virus y otros programas llegan a donde no deberían.

Esa es la verdad -- en la ingeniería de software no existe el "por arte de magia". El malware llega a tu computadora cuando el software que ésta tiene está lleno de bugs, ni más, ni menos. Sin bugs no es posible la actividad maliciosa. En otras palabras: con un sistema adecuadamente construido, sin bugs, ningún ataque de virus es posible, y (como en el triste caso de Microsoft Windows) no es posible obtener el control del ordenador o de la información que éste tiene. Es más: la única misión de los virus (programas maliciosos automáticos) y de los crackers (hackers malintencionados) es usar esos bugs para provecho propio. Sin bugs, no hay virus. Sin bugs, no hay hackers.

Lograr software 100% libre de bugs es muy difícil (algunos dicen que imposible), pero construir un sistema seguro es posible. Tan posible es, que ya ha sido logrado. Esto no es solo mi opinión o un deseo utópico. Esto es algo real, derivado directamente de las más vanguardistas técnicas científicas y de ingeniería de software.

El malware (software malicioso) continúa siendo un problema hoy en día. El único vehículo para que el malware continúe siéndolo es la poca calidad y las actitudes irresponsables de las empresas de software propietario (con su buque insignia: el sistema operativo Microsoft Windows).

Hoy, el Emperador está desnudo. Le han "fabricado un atuendo" totalmente transparente -- y nadie se atreve a decirlo en voz alta. ¿Será que nadie lo quiere aceptar?

Las casas fabricantes de software propietario han logrado convencer al planeta entero de que la difusión del malware es responsabilidad de todos los usuarios de computadoras, a través de un esfuerzo concertado de relaciones públicas en los medios de comunicación principales, con actos como la corta cita del oficial de seguridad de Microsoft que mencioné antes.

Ellos han llevado al mundo a creer que los bugs de su software no solo son una inconveniencia inevitable, sino que además, tienes que pagar extra para protegerte con antivirus y antispyware. Y encima de todo, es “tu culpa” cuando un virus entra en tu ordenador.

Por supuesto, la extensión de una vulgar mentira como esta es sólo posible porque una microscópica parte de la población entiende la ingeniería del software. No tiene nada de malo no saber computación. Yo no sé nada sobre reparación de motores. ¿Y por qué debería saber?

Pero el argumento es simple: los ordenadores (como los hornos microondas) son la “magia negra” postmoderna -- hocus pocus -- y la gente, en ausencia de conocimiento, siempre tiende a creer lo que dice el "mago experto". No hace mucho, la gente creía que una piedra de diez libras caía diez veces más rápido que una de una libra. Por supuesto, hoy, los "magos modernos" de la computación han logrado convencer a los demás de que los fallos de sus programas son "inevitables" y un "mal necesario".

Por dentro, Microsoft Windows y programas afines tienen decenas de miles de bugs conocidos y (juzgando por las estadísticas disponibles) muchos más aún que permanecen desconocidos. Son pocos los días que pasan entre entre descubrimientos de bugs anteriormente desconocidos, bugs que los programas maliciosos usan continuamente para destruir tu trabajo y poner en peligro tu vida personal.

Querido lector: ¿tienes esperanza de estar sobre aviso ante el siguiente bug de Microsoft Windows? Lo siento, pero jamás lo sabrás porque ellos no te dejarán que mires por dentro. Jamás. Después de todo, no les conviene que sepas -- iría en contra de sus intereses: romperte las piernas para luego venderte muletas, cada par más "efectivo" que el anterior.

¿Cómo ha podido Microsoft y las otras compañías de software propietario popularizar semejante patraña? Muy simple. Porque no has tenido otra opción que creer a los "expertos". Jamás podrás probar que ellos están equivocados, porque ellos tienen el código fuente, y tú no.

Afortunadamente, tienes opciones. Usa software libre (open source). Usa Linux (te recomiendo Ubuntu, es completo, gratis y fácil de instalar y usar), Firefox, OpenOffice.org (a estos últimos dos los puedes probar en Windows también). Las auténticas innovaciones de seguridad y los avances más vanguardistas de la tecnología están ocurriendo en nuestro campo, no en el del software propietario.

El software libre es, simplemente, mejor. No quiero hacer de gurú ni de mago moderno. Por favor no me creas -- compruébalo por ti mismo.