Contextualizando el paradigma de superficie de exposición

antivirus

Estos días hubo bastante revuelo con las declaraciones (EN) de un ex-trabajador de Mozilla sobre el peligro de tener instalado algún antivirus. Algunas de las tesis defendidas en el artículo acabaron sirviendo de base para que muchos medios se hicieran eco de la sentencia:

“No compres software antivirus, y desinstálalo si ya lo tienes (a excepción del de Microsoft si usas Windows)”.

Para colmo, se ha juntado la insinuación por parte del señor O’Callahan de que “por fin podía hablar de esto” ya que ahora ya no trabajaba para la organización. Y ya sabemos lo que nos gustan las conspiraciones mundiales…

Yendo al grano, lo cierto es que al bueno de Robert no le falta razón, pero como todo en esta vida, siempre y cuando se cumplan una serie de requisitos que, como veremos, no suelen ser lo habitual.

Un servidor mismamente lo primero que hace cuando se compra un dispositivo es desinstalar el antivirus. Pero claro, de nuevo recalco que no soy un usuario básico de informática, y por ende, puedo permitirme esta licencia.

El papel de los antivirus en la actualidad

Como ya expliqué en su día, la mayoría de antivirus hacen de todo. Y ya, si eso, también protegen de los “virus”.

Esto ocurre así por la sencilla razón que los virus son el menor de nuestros problemas. Las campañas de phishing, el malvertising, el ransomware y diversas modalidades de fraudes informáticos es realmente lo que más impacta al usuario final, habida cuenta de que los virus como tal no suelen ser rentables para la industria del cibercrimen (a no ser, claro está, que el objetivo sea atacar a una organización o persona específica para hacerle daño).

Y ahí está el primer problema.

Por un lado, hablamos de herramientas que tienen que estar permanentemente ejecutadas en segundo plano, y que para colmo, además de consumir bastantes recursos (ahí entra la mucha o poca optimización de código de la que hablaba Robert, pero también criterios tan básicos como los demonios que están activos y los servicios que deben funcionar en paralelo), requieren de una serie de permisos verdaderamente altos (si quieres que algo que no es el sistema operativo nos proteja, ese algo tiene que tener acceso a cuantos más recursos mejor).

Por otro, hay que señalar que el papel de los antivirus decentes (aquellos que no son gratuitos y que por ende quiero pensar que no trafican con nuestros datos) va bastante más allá del análisis pasivo y/o activo de ficheros y carpetas, hacia derroteros como los anteriormente comentados (protección ante URLs acortadas, alertas que complementan al trabajo de seguridad que realizan los navegadores, heurística, etc).

Esto, en sistemas operativos de escritorio, puede llegar a rivalizar en calidad con las medidas de seguridad que tiene el propio sistema (Windows Defender, por ejemplo), ya que aunque estos últimos operan a menor nivel (están integrados en el propio sistema, y por ende, tienen ventaja), no protegen el perímetro de seguridad de nuestros dispositivos en tal grado como sí puede hacer un antivirus de pago.

En sistemas móviles, no obstante, la cosa cambia ligeramente debido a que estos SO operan bajo sandbox (se crean espacios de trabajo distintos para cada herramienta, y la comunicación con otros sandbox se hace mediante permisos), y esto fuerza a que el alcance de una aplicación, aún pidiendo mil y un permisos, difícilmente puede llegar al nivel que tiene algo que viene instalado de forma nativa.

Son dos principios distintos donde la arquitectura juega un papel crítico. En escritorio hay más libertad y por ende un antivirus puede tener acceso a mayores recursos que en dispositivos Android y, sobre todo, iOS.

Sobre superficie de exposición

El otro punto que quería tratar es el hecho innegable de que una herramienta con tal acceso a recursos y permisos pueda ser, en efecto, un vector de ataque más a considerar.

No es la primera vez que vemos cómo falsos antivirus son utilizados realmente para propagar malware. Incluso Project Zero, ese proyecto de Google que aspira a sacar los colores a la competencia, ya ha demostrado (EN) en más de una ocasión cómo algunas de las soluciones de seguridad más utilizadas servían precisamente a los malos para bypasear las defensas del propio sistema (EN).

O’Callahan aludía a cómo algunos AVs cambiaban el ASLR (EN) de Firefox (un sistema de protección de memoria encargado de cambiar aleatoriamente la localización de los ejecutables para que cuando un atacante quiera acceder a ellos el sistema se bloquee y el ataque, por tanto, falle) por el suyo propio, deshabilitando las DLLs de Mozilla y bloqueando las actualizaciones del navegador (EN).

Cualquier capa extra que se incluya en un sistema es, en esencia, un vector de ataque más. Y eso significa aumentar la superficie de exposición ante eventuales ataques que puedan minar la seguridad de todo el sistema.

Afortunadamente, estos días he visto que al menos en el post original Robert ha avisado que esto solo debería tenerse en cuenta para sistemas que están actualizados (hace hincapié en que en un Windows 7, por ejemplo, quizás resulte más seguro tener un antivirus a sabiendas que con ello aumentas la superficie de exposición, que depender únicamente de un Windows Defender y de un sistema operativo que no está actualizado).

Y lo mismo compete a cualquiera que esté utilizando software pirata (un Windows 10 o MacOS que no recibe actualizaciones de seguridad), o a cualquiera que esté utilizando navegadores desactualizados (es muy típico utilizar Internet Explorer en sistemas piratas o dependientes del servidor central de la empresa que, generalmente, están carentes de acceso a actualizaciones).

En todos esos casos, y en definitiva, en la mayoría de casos en los que el usuario que lo va a utilizar no tiene amplios conocimientos de informática, un antivirus puede ser la solución. Sencillamente porque al menos tenemos una herramienta centrada en la seguridad que por defecto se actualiza automáticamente. Y que para colmo, como decía, suele cubrir bastante más que la típica protección frente a “virus”.

Pero sí. Si quien está a los mandos es consciente de los riesgos que hay al navegar. Si es capaz de diferenciar entre un botón/enlace fail y un botón real, entre lo que es publicidad engañosa y lo que de verdad es el contenido que queremos consumir. Si esa persona tiene un sistema operativo que está al día en cuanto actualizaciones, y utiliza además herramientas (navegadores, ofimática, aplicaciones…) que se están actualizando continuamente. Si todo esto se cumple, quizás el papel de un antivirus, considerando sus ventajas y sus inconvenientes, sea innecesario. E incluso, en casos aún más específicos, contraproducente.

Desafortunadamente, creo que el grueso de la sociedad no está en este punto. De ahí que no crea que el artículo de Robert, aún teniendo su parte de razón, sea adecuado para tomarlo como excusa a la hora de dejar de pagar por esa herramienta que muchos tienen instalada en su dispositivos.