Redes Sociales

miércoles, 26 de junio de 2013

El uso de filtros para evitar correo no deseado

Después de tanto tiempo utilizando internet, navegando por multitud de páginas web y registrándonos en muchas de ellas, acabamos recibiendo infinidad de correos de marketing que, si los primeros días aún nos interesaban, pasados unos meses hemos simplemente comenzado a ignorar.

Sin embargo estos correos siguen llegando, puntuales, a nuestro buzón y llenándolo, y molestando. Sobre todo eso, molestando.

Es hora, pues de librarnos de ellos. ¿Y cómo puedo hacer eso. ¿Puedo bloquear el remitente para que no me lleguen más?. Muchas veces sí y luego explicaré como conseguirlo, pero si la empresa que nos manada publicidad cumple la LOPD sus correos de Marketing tienen que tener un pie como el siguiente:

En pequeñito, eso sí, pero te dan la posibilidad de darte de baja. Sólo hay que hacer clic en el enlace que indican. Facil, ¿no?. Pues no.

En muchas ocasiones recibimos estos correos porque nos hemos registrado en su página web y lógicamente van a pedir que iniciemos sesión con ellos (por si este correo hubiera caído en manos de quien no debe y nos diera de baja del servicio). Es una medida de precaución comprensible pero molesta. Si nos acordamos de la contraseña (en mi caso difícil porque en cada sitio meto un nombre de usuario y una contraseña diferente) podremos logarnos y en ocasiones con esto es suficiente.

Pero en otras ocasiones hay que ir al perfil de usuario de tu cuenta en esa web y buscar un pequeño “checkbox” que indique que queremos recibir correos electrónicos suyos. Al desmarcar esa cuadricula deberíamos dejar de recibir esos molestos correos…. O no.

El problema por otra parte viene de los correos electrónicos (no deseados) que no indican la forma de dejar de recibirlos:

Qué bien, ¿no?. ¿Y cómo me doy de baja de este servicio?. Pues difícilmente. No nos queda otra opción que filtrar el remitente de estos correos desde el cliente de correo. ¿Y eso como se hace?.

El primer problema ante esto es que este tipo de correos no siempre se envían desde la misma dirección de correo por lo que a veces hay que filtrar un buen puñado de direcciones de correo.

GMAIL

Cada servicio de correo es diferente. Por ejemplo GMAIL nos ofrece directamente la opción de filtrar los correos “similares” a este que no queremos:

En ese momento nos pregunta exactamente cómo queremos filtrar este correo (por el remitente, por el asunto, por su contenido…):

A partir de este momento, este tipo de correos aparecerán en el buzón de SPAM.

Hotmail/Outlook/Live

En este caso, tendremos que ir, en la parte superior a Limpiar --> Administrar Reglas:

Aquí le daremos al botón “Nuevo” y escogeremos como queremos que sea nuestra “regla”:

Por ejemplo, si lo que queremos es eliminar los correos procedentes de trabajar@trabajar.com así es como deberíamos rellenar el formulario.

Thunderbird/Microsoft Office Outlook

Los clientes físicos de correo también tienen esta posibilidad. En concreto en Thunderbird se encuentran en el menú Herramientas --> Filtros de mensajes y Outlook en Herramientas --> Reglas y alertas:

En concreto el sistema de filtros de Microsoft Outlook es muy intuitivo y fácil de usar. Además su configuración es ata muy bien explicado en multitud de páginas de internet.

Tampoco podemos en este artículo explicar cómo funciona el servicio de filtrado de todos los servicios de webmail pero la gran mayoría, si no el 100% de ellos, dan la posibilidad de establecer filtros de correo.

Esta es una manera perfectamente válida de evitar que nos lleguen esos molestos correos que no hemos solicitado y tener un buzón de entrada mucho más limpio y seguro.

domingo, 23 de junio de 2013

Respuestas a las pruebas de INTECO (1 de 2)

Recientemente, INTECO ha sacado una oferta de 20 plazas para perfiles técnicos ("hackers"). Para cubrir las plazas el pasado día 10 se publicaron 4 "retos" en temas tan dispares como Computer Forensics, Incident Handling, Reversing y Descubrimiento de vulnerabilidades.

Las pruebas se basan en unos ficheros que contienen desde capturas de memoria, capturas de tráfico de red, un "crackme" o un programa en el que hay que buscar vulnerabilidades. INTECO planteaba una serie de preguntas en relación a estos ficheros y lo que podia ocurrirles a los sistemas afectados.

Estos ficheros lo podemos encontrar en https://mega.co.nz/#!dwNSUbYa!crHig0UYRVSVCytehho3tyMuPBsRi_8Zt-M8AsXStDM

Yo me presenté a esas plazas e hice las pruebas de los 4 apartados. A continuación publico mis respuestas. Esta sería la primera de dos entradas con este asunto y en el de hoy pondré mis respuestas en los retos de INCIDENT HANDLING y REVERSING.

INCIDENT HANDLING

¿Cómo se ha comprometido el sistema?[15%]
El usuario con la IP 192.168.78.132 ha recibido un correo SPAM sobre los atentados de Boston que incluía un enlace. A partir del segundo 17 de la captura (frame 282), hace clic sobre el enlace, que le dirije a http://188.2.164.112/boston.html

Dicha página web incluye 5 iframes, 4 de ellos con enlaces a videos reales de los atentados de Boston y un iframe que le redirige a http://heathawkheaters.com/hair.html (IP216.172.186.132)

Este último iframe solo muestra un mensaje de error, pero incluye un applet java que descarga un fichero malicioso vz1.jar

Este fichero se trata de un exploit que se aprovecha de la vulnerabilidad de Java con CVE-2012-1723 (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-1723) 

También se descarga otros ficheros maliciosos como:
Newbos3.exe (frame 2714) desde kolasoeg.ru, se trata, según virustotal de zbot-KR(Sophos) o Tepfer.imbp(Kaspersky) 

Indique los hashes SHA256 y tipo de ficheros maliciosos encontrados en las conexiones.[15%]
vz1.jar  -- FRAMES 1807 a 1821 - Este fichero se trata de un exploit que se aprovecha de la vulnerabilidad de Java con CVE-2012-1723 (http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-1723)  
SHA256: 0bf5cdfd7387cf818d53e463f19d98c8bd14439e85b137bb6503d1faa85555db
https://www.virustotal.com/es/file/0bf5cdfd7387cf818d53e463f19d98c8bd14439e85b137bb6503d1faa85555db/analysis/1370856836/Newbos3.exe (frame 2714) – Descargado desde kolasoeg.ru - Se trata de un troyano ejecutable windows, según virustotal es Zbot-KR(Sophos) o Tepfer.imbp(Kaspersky) 
SHA256: 6bab0821aec44f13e41af7ef73fa528c2ef8b4c36be1886a7a57e7e173be536b
https://www.virustotal.com/es/file/6bab0821aec44f13e41af7ef73fa528c2ef8b4c36be1886a7a57e7e173be536b/analysis/1370856559/Setup.exe (frame 1923) descargado desde dustpanrecordings.com ( 208.109.138.8) tras una consulta   http://dustpanrecordings.com/i.htm?1wDg6bS8MzvoprjDTFHphg7wwLPVZ 
Sin embargo, no he sido capaz de obtener el ejecutable. Se trataría de este enlace a bvirstotal:
https://www.virustotal.com/es/file/6894347ff4238ee06c8f9b8e2ca2dc01b3aea7f973b40db5366c4400964cbc43/analysis/1366258011/ que no considera que sea malicioso:
SHA256: 6894347ff4238ee06c8f9b8e2ca2dc01b3aea7f973b40db5366c4400964cbc43

Indique los dominios y las direcciones IP relacionadas con el incidente hasta que se comprometió el sistema.[15%]
188.2.164.112 – Dominio serbio del enlace que llegaba en el SPAM (sin nombre de dominio)
216.172.186.32  - http://heathawkheaters.com/ Alojado en EEUU. Lugar desde el que se descarga el exploit Java.
109.87.207.34 – kolasoeg.ru – Lugar desde donde se descarga el fichero newbos3.exe
208.67.220.220 – dustpanrecordings.com – Lugar desde donde se descarga el ejecutable setup.exe
5.105.75.42 – Desde esta IP se descarga posiblemente un payload para el exploit de Java.

Describa el flujo de conexiones relevantes en el incidente, con todos los detalles de las mismas.[20%]
La victima hace clic en el enlace del correo electrónico SPAM que le lleva a 188.2.164.112 (frame 282):
 http://188.2.164.112/boston.html

Dicha página web incluye 5 iframes, 4 de ellos con enlaces a videos reales de los atentados de Boston y un iframe que le redirige a http://heathawkheaters.com/hair.html (IP 216.172.186.132).

Este último iframe solo muestra un mensaje de error, pero incluye un applet java que descarga un fichero malicioso vz1.jar desde esa misma IP (FRAME 1807-1821).

El applet java se ejecuta y descarga el fichero 13.htm (FRAME 1824-1891) , SHA256: 64341e4ed560fcecd393deb4a15c0f75b99daf002a4c735194316c22327473ac , que no es detectado como un fichero malicioso, pero tampoco es una página web.

A partir de ese momento la maquina queda comprometida y comienzan a descargarse un troyano llamado newbos3.exe desde  109.87.207.34 – kolasoeg.ru  (FRAME  2714)

Al ejecutarse este troyano, la victima se conecta con 46.119.212.23 y 5.105.75.42, se conecta con 78.111.219.45 para descargarse login.html

A partir del frame 2777 (segundo 74, 10 segundos después de ejecutar el troyano) abre 65 conexiones HTTP contra las IPs 141.102.121.96, 186.2.166.59, 190.93.251.24, 91.202.142.208, 186.2.185.13, 178.32.71.33, 64.235.40.176

Algunas de ellas responden y otras no. A todas se hace un get PXFAHN 

Tiene aspecto de que la victima ha pasado a ser un nodo mas de una red zombie y el troyano esta conectando con el servidor C&C
A continuación (FRAMES 3138-3310) la victima consulta los registros MX y A de una serie de servidores de correo a los que va a comenzar a mandar SPAM.

A partir del FRAME siguiente, 3311, comienza a mandar SPAM como el siguiente:

Subject: New Sub Penny Alert Coming Soon 
Date: Thu, 18 Apr 2013 10:25:36 +0100 MIME-Version: 1.0 
Content-Type: text/plain; .format=flowed; .charset="iso-8859-2"; .reply-type=original 
Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: 
Normal X-Mailer: Microsoft Outlook Express 6.00.2800.1506 
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1506 

Body:
Welcome announcement for P_W_E I watchers. Buy thousands of P_W_E I  stock offered at the morning, since it's still bargained. Then see the  pps spike to 55 cents - or maybe hit a 1! Prepare to make a fortune on  P_W_E I starting Thursday, Apr 18. 

En total intenta mandar más de 300 correos en el tiempo que dura la captura (hay 320 sesiones).

Una vez comprometido el sistema, según las evidencias que tenemos, ¿para qué se ha estado utilizando? Indique por favor todos los detalles: destinos de las conexiones con finalidad maliciosa; cuáles han tenido éxito y cuáles no, en este caso indicando el porqué; aportando el mayor detalle posible del destino de los ataques.[35%]
La victima es usada como un servidor de correo SPAM.

A partir de la ejecución del VZ1.JAR la maquina queda comprometida y comienzan a descargarse un troyano newbos3.exe desde  109.87.207.34 – kolasoeg.ru  (FRAME  2714)

Al ejecutarse este troyano, la victima se conecta con 46.119.212.23 y 5.105.75.42, se conecta con 78.111.219.45 para descargarse login.html

A partir del frame 2777 (segundo 74, 10 segundos después de ejecutar el troyano) abre 65 conexiones HTTP contra las siguientes 9 IPs 141.102.121.96, 186.2.166.59, 190.93.251.24, 90.156.201.11, 50.62.238.103, 91.202.142.208, 186.2.185.13, 178.32.71.33, 64.235.40.176. Los 5 primeras Ips están activas y responden, las 4 últimas no.

A todas se hace un get PXFAHN a lo que responden con un Bad Request, pero la conexión continúa sin otras descargas.
Tiene aspecto de que la victima ha pasado a ser un nodo mas de una red zombie y el troyano esta conectando con los servidores C&C. 

A continuación (FRAME 2996-3137) se descarga el fichero file.html desde 5.105.75.42 y tiene aspecto de que este fichero contiene cifrados, las direcciones de correo y los servidores MX desde los que mandar el SPAM. 

En cuanto acaba la descarga de ese file.html, la victima consulta los registros MX y A de una serie de servidores de correo (FRAMES 3138-3310) a los que va a comenzar a mandar SPAM.

A partir del FRAME siguiente, 3311, comienza a mandar SPAM como el siguiente:

Subject: New Sub Penny Alert Coming Soon 

Body:
Welcome announcement for P_W_E I watchers. Buy thousands of P_W_E I  stock offered at the morning, since it's still bargained. Then see the  pps spike to 55 cents - or maybe hit a 1! Prepare to make a fortune on  P_W_E I starting Thursday, Apr 18. 

En total intenta mandar más de 300 correos en el tiempo que dura la cptura (hay 320 sesiones).

Algunas de las direcciones de correo y su respuesta son:
mail1.corpmailsvcs.com  ?     
bpurins@optonline.net  - 550 5.1.1 unknown or illegal alias: bpurins@optonline.net
jayeandy@yahoo.com  OK ok dirdel    
marsha_n_cali@yahoo.com OK deferred 451 Message temporarily deferred - [140]
acafiero.office@cox.net 250 2.0.0 RLbC1l01Q2mYAnX01LbECt mail accepted for delivery        
annaauu@yahoo.com  OK deferred 451 Message temporarily deferred - [160]
allisonkpace@gmail.com  OK     
jmlee325@gmail.com  OK     
greg.mcallister@adtech.com  550 No such user (greg.mcallister@adtech.com)
janisamzallag@rogers.com  OK 250 ok dirdel    
dionne.matthews@bankofamerica.com 550 5.0.0 User unknown   
comoline@hotmail.com  OK??Queued 250     
guiggs14@hotmail.com  550 Requested action not taken: mailbox unavailable  
sagirkennel@yahoo.com  OK 250 ok dirdel    
rgoodman5@cinci.rr.com  OK 250 OK 12/F5-02208-440BF615
hfsommer@earthlink.net  550 hfsommer@earthlink.net...User unknown  
murphmcd@sbcglobal.net  OK 250 ok dirdel    
sgntblain@cs.com 550 5.1.1 : Recipient address rejected: cs.com 
llcoeone@iowatelcom.net  ok     
bpurinto@student.umass.edu  550 5.1.1 : Recipient address rejected: User unknown in relay recipient table   
sjjones@voyager.net  554 5.7.1 Service unavailable; Client host [195.53.165.128] blocked using local.ip.rbl; http://www.spamhaus.org/query/bl?ip=195.53.165.128   
judy@artechecarr.com  ok     
larsflatoe@hotmail.com   Queued mail for delivery  250  <000f01ce3c0f$a4c80130$6d3498e6@hanz0785663ba1o4lr5> Queued mail for delivery   
dennis.west@pfizer.com  550 5.7.0 Local Policy Violation   
dionne@mattinglycorp.com  250  [InternalId=16039451] Queued mail for delivery
painting4me@msn.com  550 Requested action not taken: mailbox unavailable 
shonda.mark@vonage.com  OK  
ewroberts38@earthlink.net  550 ewroberts38@earthlink.net...User unknown   
yafeng_xiao@hotmail.com   Queued mail for delivery  250    
johnfkm03@aol.com  250 2.0.0 Ok: queued as 36E3F380000B2   
jmlee3@msn.com   Queued mail for delivery  250  
nic26@sbcglobal.net  OK 250 ok dirdel    
dguttman@uvm.edu  550 5.0.0 ... User unknown 
jvhjh@worldnet.att.net    551 not our customer   
aleksicveronica@aol.com  250 2.0.0 Ok: queued as AFB0938000084 
lori.lizik@fiserv.com  OK  
lorilizrogers@gmail.com  OK 
4bewers@verizon.net  550 5.1.1 unknown or illegal alias: 4bewers@verizon.net 
loriljackson@hotmail.com   Queued mail for delivery  250    
johnfk@microsoft.com   Queued mail for delivery  50 2.6.0 

REVERSING

¿En qué se basa la generación del número de serie?[20%]
Se basa en la llamada a la API del sistema GetVolumeInformation: 
CALL <JMP.&kernel32.GetVolumeInformationA>
Veamos, en la función que comienza en la instrucción 004010A3, hace una llamada a GetTickCount que no sirve para nada, y posteriormente hace una llamada a GetVolumeInformation pasándole como arg1 la unidad: C:\, como arg2, cero, como arg3 el tamaño del volumen y como arg4 un buffer que será donde escriba la información del volumen. Este Buffer esta en la posición 004030B8.
004010A3  /$  33C0         XOR EAX,EAX                  ; reversing.004010A3(guessed void)
004010A5  |.  E8 6E010000  CALL <JMP.&kernel32.GetTickCount>        ; [KERNEL32.GetTickCount
004010AA  |.  6A 00        PUSH 0                       ; /SysNameSize = 0
004010AC  |.  6A 00        PUSH 0                       ; |SysName = NULL
004010AE  |.  6A 00        PUSH 0                       ; |pFlags = NULL
004010B0  |.  6A 00        PUSH 0                       ; |pMaxNameLength = NULL
004010B2  |.  68 B8304000  PUSH OFFSET 004030B8         ; |pSerialNumber = reversing.4030B8 -> 0
004010B7  |.  68 B7304000  PUSH OFFSET 004030B7         ; |VolumeSize = 4206775.
004010BC  |.  68 26314000  PUSH OFFSET 00403126         ; |VolumeName = reversing.403126 -> 00
004010C1  |.  68 B3304000  PUSH OFFSET 004030B3         ; |Root = "C:\"
004010C6  |.  E8 53010000  CALL <JMP.&kernel32.GetVolumeInformationA> ; \KERNEL32.GetVolumeInformationA
El valor devuelto por GetVolumeInformation es posteriormente copiado en la posición de memoria 00403136 en ASCII:
004010F2  |.  FF35 B8304000 PUSH DWORD PTR DS:[4030B8]  ; /<%.08X> = 0
004010F8  |.  68 BC304000   PUSH OFFSET 004030BC        ; |Format = "%.08X"
004010FD  |.  68 36314000   PUSH OFFSET 00403136        ; |Buf = ""
00401102  |.  E8 2B020000   CALL <JMP.&user32.wsprintfA>             ; \USER32.wsprintfA
00401107  |.  83C4 0C       ADD ESP,0C
0040110A  \.  C3            RETN
Posteriormente, desde el Entry Point, es llamada la función que comienza en la instrucción 0040110B que es básicamente un strcmp(serialmetido,volumeinformation),
0040110B  /$  33C0          XOR EAX,EAX
0040110D  |.  6A 08         PUSH 8                      ; /Count2 = 8
Aqui compara las posiciones de memoria donde esta almacenado el serial introducido, 004030C2 y el volumen information, 00403136:
0040110F  |.  68 36314000   PUSH OFFSET 00403136        ; |String2 = ""
00401114  |.  6A 08         PUSH 8                      ; |Count1 = 8
00401116  |.  68 C2304000   PUSH OFFSET 004030C2        ; |String1 = ""
0040111B  |.  6A 01         PUSH 1                      ; |Flags = NORM_IGNORECASE
0040111D  |.  6A 00         PUSH 0                      ; |Locale = LOCALE_NEUTRAL
0040111F  |.  E8 E8000000   CALL <JMP.&kernel32.CompareStringA>      ; \KERNEL32.CompareStringA
00401124  |.  83F8 02       CMP EAX,2
Si son iguales, salta a la función de la instrucción 0040115ª y si no, decodifica el mensaje de error “Error!! Invalid serial number”:
00401127  |.  74 31         JE SHORT 0040115A
00401129  |.  FF35 8B304000 PUSH DWORD PTR DS:[40308B]  ; /Arg3 = 20
0040112F  |.  68 00304000   PUSH OFFSET 00403000        ; |Arg2 = reversing.403000
00401134  |.  68 6A304000   PUSH OFFSET 0040306A        ; |Arg1 = reversing.40306A
00401139  |.  E8 4C000000   CALL 0040118A               ; \reversing.0040118A
0040113E  |.  68 00304000   PUSH OFFSET 00403000        ; /Arg1 = reversing.403000
00401143  |.  E8 E4000000   CALL 0040122C               ; \reversing.0040122C
00401148  |.  FF35 8B304000 PUSH DWORD PTR DS:[40308B]  ; /Arg2 = 20
0040114E  |.  68 00304000   PUSH OFFSET 00403000        ; |Arg1 = reversing.403000
00401153  |.  E8 94000000   CALL 004011EC               ; \reversing.004011EC
00401158  |.  58            POP EAX
00401159  |.  C3            RETN

Explica el cifrado de cadenas.[30%]
Existen 4 cadenas que aparecen en este ejecutable:
• “Type the serial number:”
• “Error!! Invalid serial number.”
• “The serial number is OK”
• Press ENTER to Finish

Todas ellas se encuentran, codificadas en el ejecutable del programa. En concreto están en las posiciones 004030C2, 0040306A , 0040304F y 0040308F respectivamente.

Sin embargo cuando se llama a la función que llama a la API WriteFile ( que es la que escribe por pantalla), siempre se le pasa como argumento la posición 00403000 (Esta función comienza en la instrucción 0040122C):
0040116F  |.  68 00304000   PUSH OFFSET 00403000        ; /Arg1 = reversing.403000
00401174  |.  E8 B3000000   CALL 0040122C               ; \reversing.0040122C
Esto es así porque siempre antes de esta llamada se hace otra a una función que convierte las cadenas y las pone en 00403000:
0040115A  |.  FF35 66304000 PUSH DWORD PTR DS:[403066]  ; /Arg3 = 16
00401160  |.  68 00304000   PUSH OFFSET 00403000        ; |Arg2 = reversing.403000
00401165  |.  68 4F304000   PUSH OFFSET 0040304F        ; |Arg1 = reversing.40304F
0040116A  |.  E8 1B000000   CALL 0040118A               ; \reversing.0040118A
0040116F  |.  68 00304000   PUSH OFFSET 00403000        ; /Arg1 = reversing.403000
00401174  |.  E8 B3000000   CALL 0040122C               ; \reversing.0040122C
Esta function es la siguiente, se añaden explicaciones entre líneas:

Inicio típico de una función, limpiando la casa:
0040118A  /$  55            PUSH EBP                    ; reversing.0040118A(guessed Arg1,Arg2,Arg3)
0040118B  |.  8BEC          MOV EBP,ESP
0040118D  |.  53            PUSH EBX
0040118E  |.  51            PUSH ECX
0040118F  |.  56            PUSH ESI
00401190  |.  57            PUSH EDI
00401191  |.  33C0          XOR EAX,EAX
00401193  |.  BB 5C2B8D54   MOV EBX,548D2B5C
00401198  |.  B9 32400000   MOV ECX,4032
Almacenamos en ESI la posición de memoria de la cadena codificada y en EDI la posicion de memoria del buffer que se imprimira por pantalla:
0040119D  |.  8B75 08       MOV ESI,DWORD PTR SS:[ARG.1]
004011A0  |.  8B7D 0C       MOV EDI,DWORD PTR SS:[ARG.2]
Toda sección es innecesario. Son 16434 bucles modificando EBX que luego al finalizar tendrá siempre el valor 548D2B5C:
004011A3  |>  81F3 00006699 /XOR EBX,99660000
004011A9  |.  81F3 0000232D |XOR EBX,2D230000
004011AF  |.  81F3 0000AA11 |XOR EBX,11AA0000
004011B5  |.  81F3 0000DD98 |XOR EBX,98DD0000
004011BB  |.  81F3 0000FF33 |XOR EBX,33FF0000
004011C1  |.  49            |DEC ECX
004011C2  |.  0BC9          |OR ECX,ECX
004011C4  |.^ 75 DD         \JNE SHORT 004011A3
Aqui en ECX se le indica el numero de iteraciones que se harán del siguiente bucle (depende de la longitud de la cadena)
004011C6  |.  8B4D 10       MOV ECX,DWORD PTR SS:[ARG.3]
Cogemos los dos primeros bytes de la cadena codificada
004011C9  |.  66:8B06       /MOV AX,WORD PTR DS:[ESI]
Los rotamos, poniendolos en su posición real, tal y como saldrían por pantalla
004011CC  |.  66:C1C8 08    |ROR AX,8
Hacemos un XOR con el valor 548D2B5C:
004011D0  |.  66:33C3       |XOR AX,BX

004011D3  |.  46            |INC ESI
004011D4  |.  46            |INC ESI
Los volvemos a rotar para volver a escribirlos en memoria:
004011D5  |.  66:C1C8 08    |ROR AX,8
Los pasamos a la posicion de memori 00403000:
004011D9  |.  66:8907       |MOV WORD PTR DS:[EDI],AX

004011DC  |.  47            |INC EDI
004011DD  |.  47            |INC EDI
004011DE  |.  49            |DEC ECX
004011DF  |.  49            |DEC ECX
Comprobamos si debemos salir del bucle (ECX es cero):
004011E0  |.  0BC9          |OR ECX,ECX
004011E2  |.^ 75 E5         \JNE SHORT 004011C9
004011E4  |.  5F            POP EDI
004011E5  |.  5E            POP ESI
004011E6  |.  59            POP ECX
004011E7  |.  5B            POP EBX
004011E8  |.  C9            LEAVE
004011E9  \.  C2 0C00       RETN 0C
Básicamente y a modo de resumen, se trata de un XOR con  548D2B5C, aunque ante se hace un rotado cambiando el orden de los bytes.

Muestra el código de un generador de serials. (Da igual el lenguaje)[50%]
El numero de serie del volumen o VolumeID es una sucesión de ocho letras y números en el formato "xxxx-yyyy"

Se puede conocer mediante el comando “vol” del sistema.

El formato del serial es xxxxyyyy (sin incluir el guion intermedio).


Dado que el serial de este ejecutable se basa en el volumenID de la unidad C donde se ejecuta, sólo existe un serial válido en cada máquina.


Esta sería una función para obtenerlo en visual basic:
1. Function HDSerialNumber() As String
2. Dim fsObj As Object
3. Dim drv As Object
4.     Set fsObj = CreateObject("Scripting.FileSystemObject")
5.     Set drv = fsObj.Drives("C")
6.     HDSerialNumber = Left(Hex(drv.SerialNumber), 4) _
7.                      & Right(Hex(drv.SerialNumber), 4)
8.     Debug.Print HDSerialNumber
9.  
10. End Function
Habria muchas otras maneras de evitar tener que usar un serial modificando bytes sueltos en el ejecutable. Por ejemplo modificando la instruccion 401127 y poniendo un JMP en vez de un JE (EB31 en vez de  7431)

viernes, 21 de junio de 2013

Comprobando que tenemos el antivirus activado

Siempre se recomienda tener nuestro antivirus instalado, actualizado y funcionando. Sin embargo, muchas veces (sobre todo si nuestros hábitos de uso del internet no son "extraños"), el antivirus, una vez instalado, es un programa que permanece oculto y del que no volvemos a saber más.

Esto nos puede llevar a preguntarnos si el antivirus seguirá ahi y estará defendiéndonos de los ataques a los que nos exponemos mientras navegamos por internet.

Una forma de comprobar que el antivirus está activo es comprobar en el centro de seguridad de Windows. Para ello, en Windows 7 abriremos el Panel de Control, iremos a Centro de actividades y haremos click en la sección "Seguridad". Nos aparecerá una pantalla como esta:

Aqui podemos comprobar si nuestro antivirus, nuestro firewall y las actualizaciones de seguridad estan realmente activadas.

En Windows XP, será algo parecido. Iremos al panel de control, luego al centro de seguridad, y nos mostrará, con un código de colores, si tenemos el Firewall, las actualizaciones automáticas y la proteccion antivirus de nuestro equipo:

Hasta aqui genial, pero, una cosa es que esten activadas y funcionando y otra cosa es que esten funcionando correctamente. Para realizar esta comprobación y dado que NO nos vamos a infectar a propósito con ningún troyano ni a navegar por sitios web de dudoso origen, el Anti-Malware and Testing Standard Organization (AMTSO) (una organización que aglutina los principales casas antivirus) ha puesto a nuestra disposición una página web donde podemos hacer esta comprobación:

http://www.amtso.org/feature-settings-check.html

La página esta en inglés, pero básicamente nos da la opción de comprobar cinco aspectos básicos de nuestro software antivirus:

  1. Comprobar la protección de nuestro equipo contra la descarga de malware de forma manual
  2. Comprobar la protección de nuestro equipo contra la descarga no intencionada de malware
  3. Comprobar la protección de nuestro equipo contra la descarga de software potencialmente no deseado (barras de navegadores, spyware, etc)
  4. Comprobar la protección de nuestro equipo contra el acceso a páginas con phishing
  5. Comprobar si la protección en la nube de nuestro antivirus está activada

Excepto la cuarta opción, los demás implican la descarga de un fichero que es absolutamente inofensivo pero que hace saltar los antivirus. De hecho, el fichero nunca debería llegar a descargarse y nuestro software antivirus nos debería avisar de la amenaza:

La opción Nº4 nos redirige a una página web que aparenta ser maliciosa pero que no lo es. El objetivo es el mismo, que el antiviurs nos avise de que nos dirigimos a una página maliciosa.

Si al probar alguno de los 5 casos el antivirus no nos avisa, lo primero hay que estar tranquilos. Lo que nos hemos descargado no es software malicioso y no va a hacer nada dañino en nuestro ordenador.

Sin embargo puede ser el momento de preguntarnos por qué ha ocurrido esto. Algunas posibles causas son:

  • No tenemos ningún software antivirus instalado
  • El software antivirus no se está ejecutando
  • El software antivirus, aunque se está ejecutando no esta funcionando. Esto puede ocurrir porque hayamos modificado alguna opción de las que vienen por defecto y hayamos deshabilitado la protección
  • El software antivirus no está actualizado (poco probable dado que el malware que se descarga es muy simple)

Y si la razon no es ninguna de las anteriores, tal vez sea el momento de instalarse un nuevo antivirus.

Recomiendo realizar esta prueba, aunque solo sea para nuestra tranquilidad al estar seguros de que nuestros software antivirus realmente nos esta protegiendo.

jueves, 20 de junio de 2013

Google y el ciberacoso

Tras una entrevista con Google acerca de las soluciones que aportaba Google ante la problemática del ciberacoso, estas fueron las conclusiones que obtuvimos.


CENTRO DE AYUDA Y SEGURIDAD DE GOOGLE

Google ofrece el Centro de seguridad familiar (http://www.google.es/intl/es/goodtoknow/familysafety/) donde el usuario, no solo de Google+ sino de cualquier otro servicio de Google, puede encontrar las diferentes herramientas para que los padres y los educadores seleccionen el contenido al que pueden acceder los niños en Internet, así como los procedimientos para la notificación de contenidos inadecuados, y la configuración de los productos. Por último se ofrecen consejos y sugerencias a las familias relacionadas con la seguridad en Internet.

Específicamente hablando de Google+, Google dispone del centro de seguridad Google+ (http://www.google.com/intl/es/+/safety/) con guias de seguridad para adolescentes, padres y educadores.


EXPERIENCIA PRÁCTICA DE GOOGLE

En GOOGLE disponemos de numerosos procedimientos y herramientas implantadas a nivel interno con el fin de prevenir, detectar y, en caso de ser necesario, denunciar a las Autoridades competentes los casos de ciberacoso y otras prácticas inadecuadas.


HERRAMIENTAS DE PROTECCIÓN Y REPORTE ANTE CONDUCTAS Y/O CONTENIDOS INAPROPIADOS O ILICITIOS TALES COMO EL CIBERACOSO

GOOGLE dispone de diferentes herramientas de seguridad para los distintos servicios que ofrece como se puede ver en http://www.google.es/intl/es/goodtoknow/familysafety/tools/ . Entre ellas encontramos Google SafeSearch. Se trata de un filtro para el buscador de Google que, de forma predeterminada no permite que las imágenes explícitas aparezcan en los resultados de búsqueda. De la misma manera existen filtros de contenidos para Android o en Youtube.

En relación a Google+, en el centro de seguridad de Google+ (http://www.google.com/intl/es/+/safety/) se ofrecen guías de seguridad para padres y adolescentes, también se ofrecen guías de gestión de la reputación digital de los adolescentes, tanto para ellos como para los padres.


CONSEJOS PRÁCTICOS DE ACTUACION PARA USUARIOS QUE SUFREN CIBERACOSO EN GOOGLE

Google ofrece información sobre cómo evitar el acoso tanto para padres:

http://support.google.com/plus/bin/topic.py?hl=es&topic=2402054&p=anti_bullying

..como para adolescentes:
http://support.google.com/plus/bin/answer.py?hl=es&answer=2402875&topic=2402054&ctx=topic

…con videos divulgativos y consejos. También se informa del procedimiento sobre cómo informar de un caso de acoso.

miércoles, 19 de junio de 2013

Contraseñas siempre seguras

Las empresas utilizan cada vez más infraestructuras informáticas para el desarrollo de su actividad. No todos los trabajadores pueden acceder a todos los servicios, aplicaciones y máquinas de la empresa. El método preferido de autenticación, que permite asegurar que sólo usuarios con autorización acceden a estos servicios, es el uso de contraseñas.

Esto hace que se dispare el número de contraseñas usadas para proteger uno de los activos más importantes de una empresa: su información. Debido a esto, es prioritario que exista una política respecto a la creación, uso y ciclo de vida de las contraseñas corporativas independientemente del tamaño de la empresa.


Recomendaciones a la hora de escoger una contraseña

Es muy importante tener en cuenta las características que debe cumplir cualquier contraseña que se quiera considerar segura:

  • Una contraseña para ser segura debe tener al menos ocho caracteres y debe ser lo menos «regular» posible fomentando la inclusión de caracteres especiales (como |, @, -, # ), números y el uso alterno de mayúsculas y minúsculas.
  • Hay que evitar el uso de palabras del diccionario o expresiones del tipo «qwerty» o «1234». Además, no se deben utilizar palabras o fechas que identifiquen a la empresa o a sus miembros.
  • Se recomienda asimismo excluir fechas de nacimiento, nombres personales, etc., ya que se trata de información que algún atacante podría conocer previamente o sacar de Internet.
  • Tampoco es recomendable usar la misma contraseña para diferentes servicios (web, correo electrónico, foros, etc.) con el fin de evitar, en caso de robo, que puedan entrar en más de uno de los sitios de la empresa.

Como escoger una contraseña

Un buen método para crear una contraseña sólida es pensar en una frase fácil de memorizar, un refrán, el título de una película, el nombre de un libro que nos haya gustado, que tenga al menos 10 palabras y acortarla aplicando alguna regla sencilla.

Una manera sería seleccionando la primera letra de cada palabra y convirtiendo algunas de las letras en números que sean similares. Por ejemplo, «La seguridad es como una cadena, es tan fuerte como el eslabón más débil» podría convertirse en «lsecucetfceemd».

Ya tendríamos una contraseña de 10 caracteres. Sin embargo sigue siendo una contraseña débil por ser todo letras y todas minúsculas. A continuación debemos añadirle complejidad añadiendo mayúsculas, números y caracteres especiales. La forma de hacerlo ya depende de cada uno. Por ejemplo en este caso vamos a poner la primera y última letras de la contraseña en mayúsculas, usar la coma que aparece en medio de la frase original y para la palabra «una», usaremos el número «1». La contraseña final nos quedaría así: «Lsec1c,etfceemD».

Esta contraseña será mucho más segura que la anteriormente escogida.

Se recomienda perder 2 o 3 minutos en pensar una contraseña que cumpla las condiciones antes comentadas y que a la vez nos sea fácil de recordar.


¿Por qué es necesaria tanta seguridad?

Existen programas que tratan de acceder a los sistemas de información o aplicaciones web probando automáticamente miles de las contraseñas por segundo. En este sentido estas aplicaciones pueden funcionar de dos maneras.

La primera forma de actuar es usando lo que se llaman diccionarios de contraseñas, que son listados muy extensos de hasta millones de palabras que son secuencias de números, palabras del diccionario, nombres de personas y combinaciones de los anteriores grupos. Con un buen diccionario, un atacante podría obtener nuestra contraseña en cuestión de minutos si ésta no es lo suficientemente robusta.

La otra forma de actuar de estos programas es probando todas y cada una de las posibles combinaciones de letras, números y caracteres especiales. Este tipo de ataques son mucho más lentos, pero si nuestra contraseña es muy corta (menos de 7 caracteres) podría obtenerse en cuestión de minutos.


Gestión de contraseñas

Una vez que la empresa posee contraseñas seguras, éstas deben ser gestionadas correctamente.

Una de las medidas a aplicar es que han de cambiarse periódicamente o cuando se piensa que pueden haber sido comprometidas. Lo típico es una política de cambio de contraseñas cada 60-90 días.

Asimismo hay que tener mucho cuidado con la transferencia de contraseñas. Nunca se deben enviar ni por correo electrónico, ni a través de chat, ni por sms, ni escribirse en ningún cuaderno o post-it. El mejor lugar para alojar las contraseñas es en nuestro cerebro. Ahí sabemos que nadie podrá leerlas.

Los miembros de una empresa jamás deben anotar las contraseñas en papeles que estén a la vista o a los que se tenga fácil acceso. Si hay que utilizar un alto número de contraseñas, es mejor usar un programa para su gestión, como por ejemplo KeePass.

Otra cuestión importante es no utilizar contraseñas corporativas en ordenadores de los que se desconozca el nivel de seguridad porque estos equipos pueden tener instalados programas que capturen las contraseñas. Además, la empresa debe cambiar las contraseñas que vienen por defecto en el hardware y software.

Por último, hay que tener en cuenta que cuanto más valioso o vulnerable sea un sistema de la información, más seguras han de ser sus contraseñas y su política de gestión.


Algunos datos reales

Para hacernos una idea de que lo que estamos contando es real y pasa día a día, a continuación se muestran algunos datos relevantes.

Según un estudio reciente, las 12 contraseñas más usadas a lo largo de la historia han sido:

  • 123456
  • 12345
  • 123456789
  • password
  • iloveyou
  • princess
  • rockyou
  • 1234567
  • 12345678
  • abc123
  • qwerty
  • (Nombre de Usuario)

Como se ve, se tiende a poner contraseñas simples (rockyou, iloveyou, o el propio nombre de usuario), secuencias numéricas y palabras de diccionario (princess, password).

Algunos datos extra:

  • Se estima que el 4% de los usuarios tienen contraseñas que son variantes de las palabras ‘password’ o ‘contraseña’.
  • Se estima que el 25% de las contraseñas son variantes de nombres propios o nombres de usuario.
  • Se estima que un 14% de las contraseñas son combinaciones de letras o números fáciles de recordar (123456, etc)

En cuanto a la longitud de las contraseñas:

  • Se estima que un 30% de las contraseñas tienen una longitud inferior a 7 caracteres.
  • Un 19% de las contraseñas tiene 7 caracteres.
  • Un 20% de las contraseñas tiene 8 caracteres.
  • Sólo un 31% son realmente seguras teniendo más de 8 caracteres.

Resumen

Se recomienda siempre escoger contraseñas de al menos 8 caracteres, con mayúsculas, minúsculas, numero y caracteres especiales. Se recomienda huir de los nombres propios de las secuencias de números y caracteres y de cualquier palabra que podamos encontrar en un diccionario de la lengua.

Las contraseñas deben cambiarse periódicamente y nunca ser escritas en un papel o post-it que se deje a la vista de los demás. A ser posible las contraseñas deben ser memorizadas y si se usan muchas, usar alguna aplicación de gestión de contraseñas.

lunes, 17 de junio de 2013

El mundo underground de internet (2 de 2)

En la entrada anterior, hablamos del mundo underground que existe a través de la red Tor. Hoy profundizaremos en la manera que tienen los ciberdelincuentes de obtener beneficios económicos de todo lo que hemos visto.

Bitcoins

Hemos podido ver que existe una red oculta dentro de internet y dentro de ella, varios mercados negros donde se compran y venden todo tipo de productos pagando con algo bitcoins. ¿Y eso que es?.

Según wikipedia, un Bitcoin es una moneda electrónica descentralizada (funciona como una red P2P) utilizada para el pago de productos por internet o en la vida real. 

Al contrario que la mayoría de las monedas, el Bitcoin no depende de la confianza en ningún emisor central, sino que utiliza un sistema de prueba de trabajo para impedir el doble gasto de una moneda.
La forma de conseguir esto es que todos los nodos de la red P2P de bitcoins sean conscientes de todas las transferencias que se realizan.

Llegará a  haber un total de 21 millones, pero actualmente hay en circulación en torno a los 13 millones de bitcoins. Los 8 millones restantes aún no han sido creados.

Normalmente para poder comerciar con bitcoins se utilizan clientes, que pueden ser aplicaciones nativas (instalables en el ordenador) o aplicaciones web.

Los bitcoins se compran y venden como cualquier otro producto (Esto no es ilegal). De hecho muchas veces en los propios mercados se muestra el tipo de cambio del bitcoin:

Recientemente el precio del Bitcoin ha sufrido fuertes fluctuaciones y lo podemos encontrar a día de hoy a un precio de 90€ el bitcoin:

Por otra parte los bitcoins no son rastreables. No hay forma de saber en qué compra/venta han participado, quién ha sido el comprador y quien ha sido el vendedor.

Monetización
Exceptuando el típico caso del estudiante que quiera saber los mensajes que escribe su compañera de clase, lo normal es que quien haya pagado por unas contraseñas querrá obtener un beneficio (máxime dado el precio actual del bitcoin).

Este beneficio suele ser económico, bien realizando transferencias bancarias (si nos han robado unas credenciales bancarias), o bien vendiendo información robada y que almacenábamos en nuestro correo electrónico o nuestro equipo. 

De nuevo esta información robada probablemente la puedan vender en estos mercados negros, o bien, si se trata de una APT[2] (Advanced Persitent Threat), se trate de un ataque personalizado con algún fin no-económico.

Si se trata de un robo de nuestras credenciales bancarias, la forma que tienen de robarnos es hacer una transferencia bancaria a una cuenta propiedad del atacante. Sin embargo, ésta es la mejor manera de conseguir que el atacante sea capturado y encarcelado. De hecho es algo que no hacen nunca.

Tampoco es común la compra de productos físicos usando la cuenta bancaria que se ha robado ya que los productos físicos se deben enviar a una dirección en concreto.

Esto significa que en algún momento de la cadena post-fraude el dinero virtual debe transformarse en un beneficio tangible en el mundo real, ya sea dinero limpio al que no se le pueda seguir el rastro, o productos adquiridos mediante credenciales robadas.

Una de las técnicas más frecuente es el uso de muleros[3]. Se trata de personas que han aceptado una oferta de empleo a través de Internet, por una supuesta empresa real, donde dicho empleo consiste en gestiones de cobros y pagos realizando transferencias de dinero, desde sus propias cuentas bancarias a otras cuentas bancarias alojadas en el extranjero. 

 Así el mulero recibirá una cantidad de dinero X en su cuenta bancaria (generalmente a través de internet), procedente de la cuenta bancaria robada y hará una transferencia de dinero físico (por una cantidad ligeramente menor) a través de empresas como moneygram o similares. Es un esquema típico de blanqueo de dinero.

También se pueden conseguir beneficios de una cuenta bancaria es mediante la compra de bitcoins que, recordemos, no son rastreables.

Otra forma de blanqueo es mediante el uso de sistemas de juego online, poker y similares. En este esquema, el delincuente abre dos (o más) cuentas y juega contra sí mismo, haciendo que pierda el jugador con la cuenta bancaria robada asociada y gane el jugador con la cuenta bancaria del delincuente.

Todo lo comprendo pero… yo no uso la banca electrónica así que… ¿para qué quieren mis credenciales de correo y de facebook?
Hay que comprender que en este mundo, para conseguir obtener dinero, que es el objetivo final, cualquier cosa vale.

Teniendo acceso a tu correo y a tu información pueden acceder a otras potenciales víctimas: tus amigos y conocidos. Mandarles correos electrónicos en tu nombre con troyano adjunto para que sean ellos los infectados.

En general, todas las claves de acceso son de interés para los delincuentes:
-          Correo: Permiten utilizar la cuenta comprometida para el envío de correo no deseado, SPAM,para robar las libretas de contactos almacenadas online y para obtener información del correo electrónico eenviado/recibido.
-          Bancarias: Permiten acceder a la cuenta bancaria y robar dinero, siempre que se obtengan todas las credenciales necesarias.
-          Redes Sociales: Permiten al atacante conocer como es tu vida, tu casa, tus amigos, si erews una persona muy tecnológica o no  y saber cómo y por donde atacar tus cuentas. Además puede que hayas publicado (como hacen algunos) una foto de tu tarjeta de crédito/debito….
-          Ficheros con claves: La poca conciencia de seguridad lleva a que muchos  usuarios almacenen sus claves en ficheros de texto , por lo que una búsqueda simple puede reportar muchos beneficios para el delincuente.
Pero aparte de las claves, otra información que pueden recabar puede ser de interés para “el malo”:
-          Dirección de correo electrónico
-          Perfiles de usuario
-          Direcciones físicas/personales del usuario
-          Nº de teléfono móvil


¿Y todo esto para qué?
A partir de los contenidos de nuestro correo electrónico y estudiando nuestros gustos y costumbres no es difícil hacernos llegar un correo electrónico que parezca fidedigno pero que esconda un troyano que infecte nuestro ordenador o nuestros ordenadores (en plural).

Una vez conseguido ese primer paso de control del ordenador o del móvil del usuario, los usos que se le pueden dar se limitan a la imaginación del delincuente. Por ejemplo:
       -          Integracion en una botnet
       -          Envío de SPAM
       -          Venta del control de nuestro ordenador

Hay que recordar que en los mercados negros se vende de todo, desde el tiempo de cálculo de nuestro ordenador, hasta los correos electrónicos de nuestros contactos.

De hecho existen servicios [4] web que alquilan el uso de PCs comprometidos.


¿Y no se puede evitar la existencia de mercados negros?
Se ha especulado mucho sobre las bondades y defectos de la red Tor. Ha habido casos de mercados de narcóticos cerrados por las autoridades, ya que la red Tor aloja páginas web y servidores que tienen las mismas vulnerabilidades que las páginas web normales. Sin embargo, el tiempo y el esfuerzo necesarios para rastrear a los usuarios de Tor (cuando es posible rastrearlos que no siempre lo es) hacen que sea impracticable detectar y detener a todos los usuarios y vendedores de este tipo de sitios.

En algunos casos, además, los nodos de la red Tor son ordenadores comprometidos de gente “normal” que no tiene ni idea del tráfico criminal que está pasando a través de sus máquinas.

Los políticos y gobiernos pueden creer que es posible imponer políticas y leyes a internet, pero la dificultad de reforzar la legislación sobre ésta es muy difícil dado que en internet no existen las fronteras.


¿Y qué puedo hacer yo para evitar caer en estas redes?

En una sola frase, seguir los consejos de seguridad que se suelen dar:

     - Usar siempre contraseñas robustas y cambiarlas periódicamente

     - Tener instalado un software antivirus actualizado

     - Tener siempre el software de nuestro equipo actualizado

     - Estar un poco al tanto de los avisos de seguridad que ofrece INTECO

     - No visitar páginas web de contenido dudoso No instalarse software de origen dudoso

domingo, 16 de junio de 2013

La seguridad en los servicios de mensajería móvil (2 de 2)

Continúo con el articulos sobre seguridad en aplicaciones móviles que había comenzado ayer. Habíamos hablado de Whatsapp y Spotbros. Hoy repasaremos cómo funcionan Viber, Skype y Google Hangouts.

VIBER
Se estima que Viber ha alcanzado recientemente las 200 millones de descargas[13]. Se trata de una aplicación que no solo permite mantener conversaciones de mensajería sino que permite también realizar llamadas de voz sobre IP, compitiendo en este área con aplicaciones como Skype, de Microsoft.
Viber se ha implantado menos en España pero sigue siendo, junto con Whatsapp los reyes de este campo de la mensajería móvil. 

Sin embargo, desde el punto de vista de la seguridad, Viber tiene grandes problemas y agujeros que le hecho ser el centro de numerosas críticas.

Viber utiliza un sistema que no requiere la creación de una cuenta para funcionar. Esto significa que el número de teléfono del usuario se convierte en su nombre de cuenta, y los contactos de su agenda son subidos a sus servidores para poder cruzarlos con los de otros usuarios, y poder encontrar los contactos que también hayan instalado esta aplicación.

Sin embargo, durante este proceso la App no muestra ningún mensaje pidiendo permiso para subir la agenda del usuario a los servidores de Viber.

Por otra parte, Viber recoge[14] en su política de privacidad (que pocos llegamos siquiera a empezar a leer), una advertencia informando de que compartirán nuestros datos personales y de tráfico con proveedores “de confianza”, siempre y cuando lo consideren necesario. 

Cierto es que la compañía se compromete a exigir a dichas terceras partes que protejan esos datos de acuerdo a la legislación vigente. Sin embargo no deja de ser el acostumbrado “disclaimer” que puede ser fácilmente violado sin nuestro conocimiento.

Por otra parte, no es nada fácil darse de baja del servicio, ya que nuestros datos quedan almacenados en sus servidores si no les mandamos un correo electrónico solicitándolo específicamente. Aunque han prometido que para futuras versiones será mucho más simple el borrado de nuestros datos.

Base de datos interna
Todo lo que tiene que ver con Viber se almacena en una base de datos interna del dispositivo móvil. Se trata de una base de datos sqlite, que puede ser fácilmente accedida, y esta sin cifrar, por lo que se puede consultar y obtener:
- Todos los contactos (incluso los contactos no usuarios de viber)
- Todos los mensajes y su localización geográfica
- Todas las llamadas hechas y recibidas
- Enlaces a los ficheros enviados (imágenes…)
- Los ficheros de log
- El ID del usuario de Viber


Otra pequeña pega de Viber es que en el proceso de registro, un impostor podría[15] indicar el número de teléfono de una víctima para que reciba el SMS automático indicando el código de alta y la llamada de bienvenida automática. Sólo eso, pero puede ser muy frustrante para la victima si un atacante repite una y otra vez este proceso.

Por otra parte, el estado de Viber se encuentra almacenado en un fichero de configuración, es decir en el móvil. Esto significa que se puede modificar el estado actual de registro de "no activado" a "activado" sin necesidad de código de activación. Es más complejo de lo que pudiera parecer porque los servidores de Viber también comprueban el estado del movil, pero es factible, por lo que se podría usar viber desde un movil completamente desconocido (y por tanto realizar cualquier tipo de maldad impunemente).

Sin embargo, no todo son pegas. Los mensajes y las llamadas de Viber viajan cifrados a través de la red, aunque se desconoce el algoritmo de cifrado.

Por útimo, comentar que el pasado mes de Abril se conoció que la última versión de Viber para Android sufría un grave fallo de seguridad[16] que permitía saltarse la pantalla de bloqueo del terminal.

Concretamente, el problema está localizado en el módulo de notificaciones del programa, que hace uso de la barra del sistema operativo Android. El envío de mensajes y la interacción del usuario con esta barra, provoca que el bloqueo de pantalla desaparezca. Para reproducir el problema, basta con disponer de dos terminales móviles con Viber instalado y mandar un mensaje de un terminal al otro.

Así, en caso de robo, resultaría muy sencillo saltarse el bloqueo del terminal y conseguir el control completo.

SKYPE
Recientemente adquirido por Microsoft, Skype tiene una larga historia ligada más bien al mundo de las videoconferencias. Sin embargo Skype puede ser utilizado también como cliente de mensajería móvil, por supuesto utilizando su propio protocolo, como los demás clientes de este estudio.

Para empezar es importante reseñar que todo el tráfico, tanto audiovisual, como los mensajes de texto, viajan cifrados de un extremo al otro, aparentemente utilizando el algoritmo de cifrado AES-256[17] (tal vez el más seguro actualmente).

Sin embargo recientemente se ha sabido[18] que Microsoft puede descifrar estas conversaciones en algún punto intermedio del trayecto de éstas. Desde Microsoft comentaron que esto era correcto y que se hacía para filtrar SPAM y Phishing, pero en cualquier caso el asunto es que Microsoft es capaz de descifrar una comunicación y volverla a cifrar.

Por otra parte, Skype tiene el mismo problema que tiene Whatsapp en que no es necesario conocer a alguien para mandarle un mensaje. Esto ha provocado que Skype haya sido, en su versión para PC, el centro de varias campañas de malware. En la primera[19] el malware se hacía pasar por una foto de perfil. En la segunda[20] se aprovechaba de una URL acortada en un mensaje procedente de un desconocido. Esta misma semana se ha conocido otro caso de malware para Skype similar al anterior que se propagaba aprovechándose de URLs acortadas y que ha dejado más de 300.000 afectados.

GOOGLE HANGOUTS
Recientemente sacada por Google, es la respuesta de Google al Skype de Microsoft. Poco es lo que se puede decir por ahora de la seguridad de esta prometedora plataforma.

Al contrario que lo que ocurre con Skype, al estar asociado a la cuenta de Google+, sólo podemos entablar conversaciones con gente a la que tengamos de amigos en esta red social (también se sincroniza con los contactos de whatsapp) evitando así (o dificultando al menos) la propagación de malware a través de la plataforma.

Aparentemente las conversaciones no van cifradas y además Google almacena el historial de las conversaciones en sus servidores. Según ellos para poder retomarlas desde cualquier lugar.
Todas las otras características de Hangouts (como el chat o el acceso a Google Drive) funcionan mediante HTTPS (con la excepción del acceso a Youtube).

Sin embargo al igual que ocurre con Skype y con la mensajería de Apple, estas comunicaciones funcionan a través de los servidores propietarios de la compañía y no hay forma de saber si realmente estas conversaciones están siendo descifradas en algún punto intermedio.

RESUMEN
Ninguna de las aplicaciones de mensajería que se han comentado es la panacea, todas ellas tienen algún fallo de seguridad, y más cuanto más usadas son, cosas que es perfectamente lógica.

Choca darse cuenta de que la aplicación más utilizada es la que más fallos de seguridad presenta. Sin embargo, el éxito de este tipo de aplicaciones está basado sobre todo en la cantidad de personas que la tienen instalada más que en lo seguro que sea una plataforma en concreto.

Quizás como usuarios deberíamos plantearnos esto y ser perfectamente conscientes de los peligros que corremos al usar algunas de estas aplicaciones.

[13] http://www.forbes.com/sites/parmyolson/2013/05/07/free-calling-app-viber-jumps-to-desktop-hits-200-million-users/
[14] http://iphoneros.com/12063/por-que-no-debemos-usar-viber
[15] https://www.os3.nl/_media/2011-2012/students/jeffrey_bosma/ssn_report.pdf
[16] http://www.redeszone.net/2013/04/25/viber-tiene-un-fallo-de-seguridad-que-pone-en-peligro-la-seguridad-de-los-smartphones/

El mundo underground de internet (1 de 2)

Cuando estoy con amigos o con la familia y les estoy dando la turra con el tema de tener password seguras, una de las preguntas frecuentes que me hacen es

-          ¿Y por qué iba a querer nadie mi contraseña de facebook/correo/twitter?.

La respuesta es la vez muy compleja y muy simple, pero se puede resumir en otras dos preguntas:
+ ¿Si consigo tu contraseña de correo, será la misma contraseña que usas en otros servicios?
+ ¿Revisando tu correo conseguiré otras contraseñas o información de interés para saber más de ti?

La conversación a continuación discurre de una manera muy similar a la siguiente:
- Ya, pero…. ¿por qué yo?. ¿Quién soy yo para que dediquen su tiempo en investigar mi cuenta y mis contraseñas?.
- Lógicamente nadie, pero eso da igual porque al final el objetivo es conseguir dinero.
- ¿Dinero?. ¿De mí?.
- Si, el objetivo final es conseguir dinero ya sea de tus cuentas bancarias o vendiendo tus datos para que sean otros quienes las utilicen para cualquier tipo de fin…. oscuro.
- Pero… ¿Quién iba a querer comprar datos sobre mi?

El mercado negro
Como sabemos Internet es un mundo virtual donde se ha intentado copiar todo lo que ya existe y con éxito en el mundo real. El mercado negro no iba a ser una excepción.

Existen, desde los orígenes de internet, múltiples comunidades dedicadas a la compra/venta de todo tipo de productos ilegales, desde drogas/armas hasta datos personales y credenciales.

Como la compra/venta de estos productos es ilegal en la gran mayoría de países, estas comunidades han tendido a alojarse en aquellos países donde sí fueran legales. Sin embargo, como las conexiones se pueden rastrear y la compra también es un delito no han sido pocos los detenidos por comprar en este tipo de foros/comunidades.

Esto ha hecho que estas comunidades hayan ido moviéndose a lo que se llama la “deep web” o red Tor.

Para los que nunca hayan oído hablar de ella, se trata de una especie de red oculta dentro de internet. Se trata de una red que tiene unas reglas de funcionamiento diferentes a las de internet que le permiten que no sea posible rastrear las acciones de nadie que la use.
Dicha red contiene los mismos servicios que la Internet conocida por todos, páginas web, alojamiento de fotos/videos, comunicación vía audio/video… etc. La diferencia es que, a día de hoy, no es posible rastrear los puntos iniciales y finales de cada conexión.

Con esta premisa, es muy fácil que esta red Tor sea usada para todo tipo de actividades ilegales o de dudosa legalidad.

Por ejemplo encontramos en esta red mercados negros donde se pude comprar/vender todo tipo de productos legales o ilegales:


Como vemos en esta imagen, en este foro se están vendiendo armas de fuego, pero también podemos encontrar mercados donde se venden drogas:



Todo ello sin ningún tipo de tapujos. Esto es posible debido a esa característica que tiene la red Tor mediante la cual no es posible saber donde se encuentra alojada ésta página web y mucho menos quiénes son sus clientes y vendedores.

Como vemos, el precio aparece en BTCs. Es el acrónimo de “bitcoins”, una moneda electrónica de la que hablaremos más adelante.
Pero no solo podemos encontrar estos productos en estos mercados negros. Se puede comprar/vender cualquier producto ilegal en estos mercados. Como vemos en la siguiente imagen, podemos encontrar de todo en estos mercados, lectores de tarjetas magnéticas, billetes de 20€ y 50€ falsificados, carnets de circulación falsificados y tarjetas de crédito falsas:

 


Por supuesto, lo más probable es que estos productos sean confiscados por la policía en las aduanas, pero hay otros productos que no pasan las aduanas. Hablamos de los productos o servicios electrónicos.
Nos referimos a la venta de servicios como la realización de ataques de phishing (o suplantación de páginas web) o la venta de códigos o contraseñas de correo electrónico.

En la siguiente imagen, vemos un anuncio en el que se están vendiendo 100.000 contraseñas de Yahoo!, Gmail, Microsoft (Hotmail) y correos propietarios (incluidos correos de la casa blanca).



También es posible encontrar gente que nos vende software para crear una botnet (una red de equipos comprometidos para realizar ataques de denegación de servicio o robo de contraseñas):

Todos estos anuncios están en inglés, pero son perfectamente entendibles:
“Ofrezco  builder y complementos del troyano SpyEye versión 1.3.48 para obtener tu propia botnet. Precio reducido. Lo mando por correo electrónico. Muy fácil de usar, además incluye un tutorial.”

Como vemos, cualquiera, con un poco de trabajo, puede montar una botnet. Pero ojo, recordemos que esta práctica es ilegal.
Y no es un caso aislado. Buscando la palabra “botnet”, veremos que nos venden software para construir todo tipo de redes zombie:



También se ofrecen servicios de preparación de páginas web bancarias fraudulentas (phishing) que permiten al atacante robar las credenciales de las víctimas que accedan a dichas páginas web:

Como vemos no es algo imaginario. Es real. Este tipo de mercados existe y tienen muchos usuarios.