martes, 12 de septiembre de 2017

Falsos positivos otra vez

Finalmente publiqué una actualización de ZinjaI con todos esos cambios que ya comenté en otros posts. Pero al subirlo me llevé una sorpresa que demoró las cosas unas 48hs. Otra vez estuve renegando con los falsos positivos de anti-virus y anti-malwares. Y esta vez quien lo detecto fue SourceForge, que ahora analiza por las dudas todo lo que publicamos. Y entonces, si lo dejaba como estaba, al querer descargarlo iban a ver un mensaje espanta-usuarios advirtiendo de la posible presencia de malware.

Desde hace unos meses (creo que desde que cambió de dueño) SourceForge (SF) escanea automáticamente todo lo que subimos. Es parte de las medidas que han tomado para contrarrestar su mala fama después de los despistes de 2015. Cuando me notificaron de esta medida la tomé con agrado. Nunca está demás revisar. No somos pocos los que usamos tan poquito Windows que ya casi nos olvidamos de lo que es tener un antivirus molestando cuidándonos todo el tiempo, y eso puede tornarnos algo descuidados.

Pero resulta que el anti-malware que usa SF detectó un falso positivo (no voy a volver a explicar por qué es falso, pero les aseguro que este lo es). Entonces, al querer descargar la nueva versión, SF advertía de esto al usuario y desactivaba la descarga automática. Esto puede espantarme a muchos usuarios, o generar desconfianza. Así que decidí mantener en la web los enlaces a la versión vieja hasta solucionarlo.


Primero pasé el instalador por virustotal y, para aquella versión, de los más de 50 análisis que finalizaron, solo uno dio positivo (eset), y con el mismo mensaje que me daba SF. Pero los detalles no coincidían 100%, así que decidí usar la propia plataforma de SF para verificar dónde estaba el problema: empecé a subir zips con partes de ZinjaI hasta determinar qué partes generaban el falso positivo. Por esto, los que con su usuario de SF tenían seteado que se les notifique de actualizaciones de ZinjaI, habrán recibido varias notificaciones de zips poco habituales (yo no sabía que se les iba a notificar de esos zips de prueba).

Y así llegué a acotarlo a dos ejecutables: complement_wrap.exe y updatem.exe. El segundo se solucionó cambiando algunos flags en la compilación y agregando algún que otro if redundante. A veces escribir los mismo de otra forma, ya sea en el fuente, o en el binario (mediante habilitar/deshabilitar optimizaciones), hace que deje de generar falsas alarmas. Pero con el primero no funcionó. Y es un código tan corto y simple que no acepta muchas variantes. Así que luego de perder una tarde y no tener éxito, decidí reportarlo a SF para que agreguen mi instalador a la lista blanca y así remuevan esa molesta advertencia espanta-usuarios. En aproximadamente 24hs recibí la respuesta y pude finalmente publicar los nuevos enlaces.


Me quedan sensaciones encontradas. Mi reporte de falsos positivos no es el único, también le pasó a otros 170 más en SF (no es un número grande considerando la cantidad de proyectos que aloja). Pero en muchos de los otros hay más motivos para sospechar; no porque sean proyectos malignos, sino porque algunos realizan tareas que tienen más chances de ser malinterpretadas. En fin, veremos cómo sigue esto, qué pasa con las próximas releases, y cuántos usuarios se me quejan por separado de que sus propios anti-virus llegan a la misma conclusión. De momento es un problema que me frustra, me quita bastante tiempo del poco que dispongo, y para el cual aún no encuentro una solución definitiva.

No hay comentarios:

Publicar un comentario