Categories: SeguridadVirus

El talón de Aquiles de PGPcoder, el troyano chantajista

La realidad es que, debido a un mal diseño de su creador, el troyano utiliza un algoritmo de cifrado muy simple, basado en valores fijos, que permite invertirlo y recuperar automáticamente los archivos.

Desde el primer día que apareció PGPcoder, también llamado Gpcode, me recordó precisamente al que se considera uno de los primeros troyanos de la historia de los PCs: AIDS.

En el año 1989 se enviaron miles de disquetes por correo postal que contenían un programa de información sobre SIDA. El programa llevaba un contador de las veces que se iniciaba el sistema y, tras contabilizar un número determinado, terminaba por cifrar la información del disco duro, solicitando a los afectados pagar una licencia si querían descifrarlo y recuperar sus archivos.

El responsable fue detenido y los afectados no tuvieron que pagar nada, ya que el algoritmo de cifrado era débil y se distribuyeron herramientas gratuitas para descifrarlo.

El caso de PGPcoder es muy similar, aunque en esta ocasión el autor se ha podido ahorrar los sellos del correo postal gracias a Internet. Cuando se ejecuta en un sistema, cifra todos los archivos que localiza con las extensiones .xls, .doc, .txt, .rtf, .zip, .rar, .dbf, .htm, .html, .jpg, .db, .db1, .db2, .asc y .pgp. Dejando unos archivos de texto, “ATTENTION!!!.txt”, con el siguiente mensaje:

Some files are coded.

To buy decoder mail: n781567@yahoo.com

with subject: PGPcoder 000000000032

En definitiva, que si el usuario infectado quiere volver a acceder a sus documentos, hojas de cálculo, fotografías, etc., debe “comprar” el descodificador que supuestamente el autor le enviaría por e-mail.

Las buenas noticias son que el autor del troyano ha programado un algoritmo de cifrado bastante simple sin clave externa, lo que permite invertir el algoritmo para recuperar los archivos sin tener que pasar por el chantaje. Las malas noticias son que es totalmente factible, y casi me atrevería a decir que probable, que a corto plazo cualquiera diseñe un troyano similar basándose en claves aleatorias y/o criptografía de llave pública, y entonces no habrá buenas noticias.

Lo cierto es que en un principio, sin haber analizado el troyano, creía que el diseño era robusto, en especial por el nombre que le había dado el autor y que han utilizado también algunos motores antivirus, PGPcoder, en lo que me parece una clara alusión al archiconocido programa de cifrado PGP.

Sin embargo ayer, por casualidad (examinando algunos logs de VirusTotal), me encontré con un archivo cifrado por PGPcoder, y la simple visualización de su contenido, aunque cifrado, me dejó claro que el algoritmo era débil. A esta misma conclusión podría llegarse a través del análisis del código del troyano.

Lo siguiente que se me vino a la cabeza es que, aprovechando la debilidad del cifrado, e igual que ocurriera en el caso del troyano AIDS, se podrían facilitar herramientas gratuitas para que los afectados pudieran recuperar sus archivos. Es mas, los propios antivirus podrían/deberían detectar los archivos cifrados, todos comienzan con la cabecera “PGPcoder 000000000032”, y realizar automáticamente el descifrado.

Sin embargo, realizado un estudio sobre 20 motores antivirus, sólo 3 de ellos reconocen y son capaces de restaurar de forma automática los archivos cifrados por el troyano PGPcoder. Los antivirus que hay que felicitar en esta ocasión son Dr.Web, Kaspersky, y Panda, que reconocen con la siguiente firma los archivos cifrados:

DrWeb :: [Trojan.PGPCrypt]

Kaspersky :: [Virus.Win32.Gpcode.c]

Panda :: [Trj/PGPCoder.Crypt]

Este tipo de iniciativas de las casas antivirus va muy en la línea de la noticia “Firmas antivirus más allá del malware tradicional” http://www.hispasec.com/unaaldia/2404

He evitado dar los detalles concretos del algoritmo en favor de aquellos lectores aficionados al criptoanálisis que quieran ahondar en los detalles del caso a modo de reto. He publicado un ZIP donde pueden encontrar dos archivos de textos, el primero un original en texto claro, y el segundo el mismo una vez cifrado por el troyano PGPcoder. El ZIP se encuentra protegido por la contraseña “hispasec” para evitar que el archivo cifrado por PGPcoder pueda dar positivo con los antivirus perimetrales mientras se descarga.

ZIP (clave: hispasec): http://www.hispasec.com/directorio/laboratorio/pruebas/cifrado_pgpcoder.zip

Otra de las opciones para lograr encontrar un algoritmo de descifrado, mucho más directa, consiste en estudiar el código ensamblador del troyano. Si bien, por razones obvias, no puedo facilitar una copia del mismo, ruego abstenerse de solicitudes por privado.

Como premio simbólico, se enviará una camiseta de Hispasec a los tres primeros lectores que nos envíen un script o programa (incluyendo fuentes) que deberá descifrar otro archivo cifrado por el troyano PGPcoder (mismo algoritmo de cifrado).

Redacción

Recent Posts

Google paga 5.000 millones de dólares para resolver una demanda colectiva

Los usuarios denunciaban que la compañía los había rastreado incluso cuando usaban el modo privado…

11 meses ago

Las pymes valencianas pueden optar a ayudas de 5,5 millones de euros por proyectos de I+D

El Instituto Valenciano de Competitividad Empresarial financiará aquellas iniciativas que puedan solucionar incertidumbres científicas o…

11 meses ago

La guerra entre Israel y Gaza no acobarda a los inversores extranjeros de startups

Solo en el cuarto trimestre las empresas emergentes del país han levantado 1.500 millones de…

11 meses ago

Navarra ya cuenta con más de 80 startups

La región tiene 13 scaleups y destaca por sus empresas emergentes de salud y agrotech.

11 meses ago

Las startups valencianas progresaron adecuadamente en 2023

Valencia ha atraído en el primer semestre del año 30 millones de euros de inversión…

11 meses ago

El New York Times acusa a Open AI y Microsoft de infringir sus derechos de autor

El diario estadounidense demanda a las dos compañías tecnológicas por haber usado sus contenidos para…

11 meses ago