Buscar

Descifrado del troyano PGPcoder


 
 Old 09 jun 2005, 07:36   #1 (permalink)  
Miembro activo
 
Avatar de wanm28
 
Registrado: febrero 2005
Ubicación: en la tierra de los sueños"puxa asturias"
Mensajes: 17.725

Predeterminado Descifrado del troyano PGPcoder

hola wenas!!!!!!!!!!!11



fuente-hispasec.com

Desvelamos los detalles del algoritmo utilizado por PGPcoder, un
troyano que cifra los archivos de los sistemas que logra infectar
y solicita dinero a los usuarios afectados si quieren volver a
restaurarlos.

Como ya comentamos en una entrega anterior en Hispasec, aunque el
nombre del troyano podía llevar a confusión, el algoritmo de cifrado
de PGPcoder no era robusto, y permitía descifrar los archivos de
forma automática sin sucumbir al chantaje de su autor.

La semana pasada propusimos un reto consistente en encontrar una
solución genérica que permitiera descifrar los archivos modificados
por PGPcoder partiendo del criptoanálisis de una muestra, para lo cual
facilitamos un archivo de texto cifrado por el troyano y otro donde
se podía encontrar la versión original en texto claro.

La solución debería poder descifrar cualquier archivo modificado por
el troyano, de hecho cada propuesta de nuestros lectores fue probada
con una muestra real, en concreto con una hoja de cálculo que había
sido afectada por PGPcoder.

Apenas unas horas después de publicar la noticia recepcionamos las
primeras soluciones, entre los que destacamos a los cinco primeros
según orden de llegada:

1. Antonio Izquierdo Manzanares
Grupo de Seguridad T.I y C. Dep. Informática
Univ. Carlos III de Madrid

2. Francisco Cuevas Pérez
Gestión de RR.HH.

3. David Guerrero López
Dep. de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia

4. Jaume Martínez Martínez
R&D Engineer

5. Angel Goitia Fuertes
Consultor Senior en Altran SDB


En todas estas primeras soluciones de primera hora se pudo observar
claramente que los algoritmos utilizados, basados en bloques de
valores fijos, habían sido construidos a partir del análisis de la
muestra del archivo cifrado facilitado, tal y como se proponía en
el reto, y no fruto de aplicar ingeniería inversa al código del
troyano.

El hecho de que, además de la efectividad, se premiara la rapidez en
la que se hiciera llegar la solución, también fue en contra de que
los primeros participantes no dedicaran muchos esfuerzos en encontrar
una relación matemática entre los diferentes valores utilizados.

En el propio código de la primera solución, comentado con detalle
por Antonio Izquierdo, podemos encontrar una primera descripción del
algoritmo de cifrado: "PGPcoder cifra los ficheros haciendo una
operación de suma a cada byte. Cada vez que cifra un byte cambia la
clave siguiendo una secuencia predeterminada para realizar dicho
incremento. Esa secuencia de incrementos consta de 16 elementos,
tras los cuales vuelve a repetirse. Cada 4 secuencias (64 bytes) se
repiten las claves de cifrado."

PGPdecoder-Antonio_Izquierdo.zip (clave: hispasec)
http://www.hispasec.com/directorio/l..._Izquierdo.zip

Una mirada al código del gusano simplifica mucho la tarea, ya que se
puede observar que el cifrado de PGPcoder se limita a realizar una
operación de suma a cada byte del archivo original, comenzando el
bucle con la clave 0x3A y modificando su valor para cada uno de los
bytes restantes, multiplicando en cada ocasión la clave anterior por
0x25 y sumándole 0x5C.

Desde PandaLabs, responsables de que Panda fuera uno de los pocos
motores antivirus que incluyera entre sus firmas la recuperación de
archivos cifrados por PGPcoder, también nos hicieron llegar el
siguiente ejemplo:

"Suponiendo que tenemos en 'buffer' el contenido del fichero a
desencriptar y en 'buffer_size' el tamaño del mismo, el algoritmo en
cuestión sería el siguiente:

key = 0x3A;

for (int i = 0; i < buffer_size; i++)
{
buffer[i] = buffer[i] - key;
key = key * 0x25 + 0x5C;
}

Como puede observarse se trata de un algoritmo clásico. A cada byte
de información se le substrae o se le suma -para desencriptar o
encriptar respectivamente- un valor determinado que comienza con una
constante inicial y es recalculado en cada iteración usando su valor
anterior."

Recibimos alguna solución utilizando este algoritmo 'optimizado',
como es el caso de Daniel Pérez Álvarez, estudiante de Ingeniería
Informática, que reconoció haber partido del acceso al código de
PGPcoder en lugar de proceder al criptoanálisis de las muestras
proporcionadas.

pgpdecoder Daniel Pérez:
http://www.hispasec.com/directorio/l...pgpdecoder.zip

Afortunadamente en esta ocasión ha sido posible proponer este reto
gracias a que el autor del troyano no ha utilizado criptografía seria
y una estrategia más robusta, ya que de lo contrario podría ser
materialmente imposible lograr una solución genérica y automática
que fuera efectiva.

Por último agradecer a los participantes su interés, que recibirán en
breve una camiseta de Hispasec como premio simbólico por su dedicación,
y emplazaros a todos hasta el próximo reto.

Más información:

01/06/2005 - El talón de Aquiles de PGPcoder, el troyano chantajista
http://www.hispasec.com/unaaldia/2412

(h5)(6)wanm(a)(h5)
wanm28 is offline   Citar y responder
 
 Old 10 jun 2005, 23:01   #2 (permalink)  
Miembro activo
 
Avatar de Christian_22
 
Registrado: febrero 2005
Ubicación: Bolivia
Mensajes: 648

Predeterminado Re: Descifrado del troyano PGPcoder

Buen aporte Wanm28, se nota que te dedicas a buscar mucha informacion en la red, y no hay nada mejor que estar bien enterdados, para no caer como corderos, especialmente en virus.


Saludos
Christian_22 is offline   Citar y responder
 
 Old 10 jun 2005, 23:25   #3 (permalink)  
Banead@
 
Avatar de folto
 
Registrado: febrero 2005
Ubicación: Països Catalans
Mensajes: 2.217

Predeterminado Re: Descifrado del troyano PGPcoder

Cita:
wanm28 escribió:
hola wenas!!!!!!!!!!!11



fuente-hispasec.com

Desvelamos los detalles del algoritmo utilizado por PGPcoder, un
troyano que cifra los archivos de los sistemas que logra infectar
y solicita dinero a los usuarios afectados si quieren volver a
restaurarlos.

Como ya comentamos en una entrega anterior en Hispasec, aunque el
nombre del troyano podía llevar a confusión, el algoritmo de cifrado
de PGPcoder no era robusto, y permitía descifrar los archivos de
forma automática sin sucumbir al chantaje de su autor.

La semana pasada propusimos un reto consistente en encontrar una
solución genérica que permitiera descifrar los archivos modificados
por PGPcoder partiendo del criptoanálisis de una muestra, para lo cual
facilitamos un archivo de texto cifrado por el troyano y otro donde
se podía encontrar la versión original en texto claro.

La solución debería poder descifrar cualquier archivo modificado por
el troyano, de hecho cada propuesta de nuestros lectores fue probada
con una muestra real, en concreto con una hoja de cálculo que había
sido afectada por PGPcoder.

Apenas unas horas después de publicar la noticia recepcionamos las
primeras soluciones, entre los que destacamos a los cinco primeros
según orden de llegada:

1. Antonio Izquierdo Manzanares
Grupo de Seguridad T.I y C. Dep. Informática
Univ. Carlos III de Madrid

2. Francisco Cuevas Pérez
Gestión de RR.HH.

3. David Guerrero López
Dep. de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia

4. Jaume Martínez Martínez
R&D Engineer

5. Angel Goitia Fuertes
Consultor Senior en Altran SDB


En todas estas primeras soluciones de primera hora se pudo observar
claramente que los algoritmos utilizados, basados en bloques de
valores fijos, habían sido construidos a partir del análisis de la
muestra del archivo cifrado facilitado, tal y como se proponía en
el reto, y no fruto de aplicar ingeniería inversa al código del
troyano.

El hecho de que, además de la efectividad, se premiara la rapidez en
la que se hiciera llegar la solución, también fue en contra de que
los primeros participantes no dedicaran muchos esfuerzos en encontrar
una relación matemática entre los diferentes valores utilizados.

En el propio código de la primera solución, comentado con detalle
por Antonio Izquierdo, podemos encontrar una primera descripción del
algoritmo de cifrado: "PGPcoder cifra los ficheros haciendo una
operación de suma a cada byte. Cada vez que cifra un byte cambia la
clave siguiendo una secuencia predeterminada para realizar dicho
incremento. Esa secuencia de incrementos consta de 16 elementos,
tras los cuales vuelve a repetirse. Cada 4 secuencias (64 bytes) se
repiten las claves de cifrado."

PGPdecoder-Antonio_Izquierdo.zip (clave: hispasec)
http://www.hispasec.com/directorio/l..._Izquierdo.zip

Una mirada al código del gusano simplifica mucho la tarea, ya que se
puede observar que el cifrado de PGPcoder se limita a realizar una
operación de suma a cada byte del archivo original, comenzando el
bucle con la clave 0x3A y modificando su valor para cada uno de los
bytes restantes, multiplicando en cada ocasión la clave anterior por
0x25 y sumándole 0x5C.

Desde PandaLabs, responsables de que Panda fuera uno de los pocos
motores antivirus que incluyera entre sus firmas la recuperación de
archivos cifrados por PGPcoder, también nos hicieron llegar el
siguiente ejemplo:

"Suponiendo que tenemos en 'buffer' el contenido del fichero a
desencriptar y en 'buffer_size' el tamaño del mismo, el algoritmo en
cuestión sería el siguiente:

key = 0x3A;

for (int i = 0; i < buffer_size; i++)
{
buffer[i] = buffer[i] - key;
key = key * 0x25 + 0x5C;
}

Como puede observarse se trata de un algoritmo clásico. A cada byte
de información se le substrae o se le suma -para desencriptar o
encriptar respectivamente- un valor determinado que comienza con una
constante inicial y es recalculado en cada iteración usando su valor
anterior."

Recibimos alguna solución utilizando este algoritmo 'optimizado',
como es el caso de Daniel Pérez Álvarez, estudiante de Ingeniería
Informática, que reconoció haber partido del acceso al código de
PGPcoder en lugar de proceder al criptoanálisis de las muestras
proporcionadas.

pgpdecoder Daniel Pérez:
http://www.hispasec.com/directorio/l...pgpdecoder.zip

Afortunadamente en esta ocasión ha sido posible proponer este reto
gracias a que el autor del troyano no ha utilizado criptografía seria
y una estrategia más robusta, ya que de lo contrario podría ser
materialmente imposible lograr una solución genérica y automática
que fuera efectiva.

Por último agradecer a los participantes su interés, que recibirán en
breve una camiseta de Hispasec como premio simbólico por su dedicación,
y emplazaros a todos hasta el próximo reto.

Más información:

01/06/2005 - El talón de Aquiles de PGPcoder, el troyano chantajista
http://www.hispasec.com/unaaldia/2412
pffffffffffffffffffffff mas mierda para nuestros ordenatas es que no se cansan o ke?
saludos
folto is offline   Citar y responder
 
 Old 11 jun 2005, 00:02   #4 (permalink)  
Miembro activo
 
Avatar de wanm28
 
Registrado: febrero 2005
Ubicación: en la tierra de los sueños"puxa asturias"
Mensajes: 17.725

Predeterminado Re: Descifrado del troyano PGPcoder

hola wenas"""""""""""""""""""""





si Christian_22 no ai mejor cosa que conocer al enemigo para poder combatirlo
y aveces aun asi .....



ya ves folto no se cansan ni se cansaran


la verda se comentaba que este año 2005 iban a proliferar mucho las intrusiones de spyware ,en nuestros pc y de momento y tokemos madera parece que no asido tanto como avisaban

un saludo amigos

(h5)(6)wanm(a)(h5)
wanm28 is offline   Citar y responder

« zombies | BitDefender lanza Scan Online v8 »

Herramientas
Estilo


 

Tema Iniciado por Foro Respuestas Último mensaje
El talón de Aquiles de PGPcoder, el troyano chantajista wanm28 Seguridad 2 02 jun 2005 16:52
Troyano y problema con el Escritorio y la conexión wil4 Virus 7 10 may 2005 15:48
El Mejor Anti Troyano??? pendejoo Seguridad 11 08 may 2005 23:38
Troyano!! Help!! DJ_650604 Virus 8 20 mar 2005 23:15
Eliminen manualmente el Troyano SubSeven 2.2!!!!! FUN_TKD Seguridad 8 13 mar 2005 20:24



Buscar