sábado, 31 de marzo de 2012

Segunda lección del Curso el Algoritmo RSA en el Aula Virtual Crypt4you: Valores de diseño de las claves


Se ha publicado la segunda lección del curso "El Algoritmo RSA" del Aula Virtual Crypt4you. La encontrará como lección destacada en la sección En portada dentro del sitio Web de este proyecto MOOC Massive Open Online Course: http://www.crypt4you.com

La segunda lección del curso trata sobre los valores típicos de diseño que deben usarse en los parámetros que intervienen en una clave RSA, como son la clave pública e, la clave privada d, los primos p y q cuyo producto es el módulo o cuerpo de cifra n y el valor del indicador de Euler o cuerpo trampa. Si bien las ecuaciones que permiten generar una clave RSA son muy sencillas, debe tenerse especial cuidado en la elección de estos parámetros. En esta lección se sabrá el porqué de los valores actuales de estas claves RSA que se encuentran, por ejemplo, en certificados digitales X.509 cuando se accede a una página Web segura.

Apartados de la lección:

Apartado 2.1. Necesidad de un cuerpo de cifra mayor que 2.000 bits
Apartado 2.2. Relación tamaño clave pública versus clave privada
Apartado 2.3. ¿Por qué se usa el número 4 de Fermat como clave pública e?
Apartado 2.4. ¿Qué pasaría si usamos cualquier valor válido de e?
Apartado 2.5. Aspectos a tener en cuenta en la elección de los primos p y q

Se recuerda que los días 1 y 15 de cada mes hasta finales del mes de julio de 2012, se irán publicando estas lecciones hasta llegar a la décima y última para este curso del algoritmo RSA.


Jorge Ramió, Alfonso Muñoz
Equipo Crypt4you

viernes, 30 de marzo de 2012

Diversas vulnerabilidades en Wireshark

Se han anunciado cuatro vulnerabilidades de denegación de servicio en Wireshark versiones 1.4.0 a 1.4.11, 1.6.0 a 1.6.5.

Wireshark es una aplicación de auditoría orientada al análisis de tráfico en redes. Su popularidad es muy elevada, puesto que soporta una gran cantidad de protocolos y es de fácil manejo. Además Wireshark es software libre (sujeto a licencia GPL) y se ejecuta sobre la mayoría de sistemas operativos Unix y compatibles, así como en Microsoft Windows.

Los problemas afectan a los disectores ANSI A, IEEE 802.11, MP2T y en los analizadores de archivos pcap y pcap-ng al leer datos ERF.

Se recomienda actualizar a Wireshark 1.4.12 o 1.6.6 desde:

Más información:

Wireshark ANSI A dissector crash

Wireshark 802.11 infinite loop

Wireshark pcap and pcap-ng file format crash

Wireshark MP2T memory allocation flaw



Antonio Ropero

jueves, 29 de marzo de 2012

Opera 11.62 soluciona varios problemas de seguridad

El navegador Opera ha publicado su última versión 11.62 que soluciona ocho vulnerabilidades presentes en todas las versiones anteriores para las plataformas Windows, Linux/Unix y Mac.

La mayoría de los fallos han sido considerados de nivel medio-bajo y relacionados con revelación de información sensible o falta de políticas de seguridad al acceder a ciertos ficheros. Solo dos casos facilitarían en cierta manera la ejecución remota de código, de las que el investigador de vulnerabilidades Jordi Chancel (@J_Chancel) ha publicado vídeos mostrando su posible efectividad.

Un resumen de las vulnerabilidades solucionadas son:

  • Vulnerabilidad de tipo local e impacto bajo (4.6 sobre 10 de CVSS) que permitiría modificar ficheros de manera arbitraria a través del uso de enlaces simbólicos, cuando se realiza la impresión de una página mediante determinados frameworks de impresión en Linux (CVE-2012-1931).
       
  • Relacionada con la anterior, existía otra vulnerabilidad de tipo local e impacto bajo (4.6) que permitiría obtener información sensible a través del acceso a ficheros temporales creados durante la impresión con un insuficiente nivel de permisos en Linux (CVE-2012-1930).
       
  • Revelación de información sensible (campo dirección y contenido de los diálogos de seguridad) con un impacto medio (6.4), a través de websites con estilos especialmente manipulados. Afecta sólo a la versión para Mac OS X (CVE-2012-1929).
       
  • Revelación de información (campo dirección) con un impacto medio (6.4), a través de websites especialmente manipulados que fuercen la recarga de página y redirección a un sitio web diferente al visitado. Afecta a todas las versiones (CVE-2012-1928).
       
  • Revelación de información (campo dirección) con un impacto medio (6.4), a través de páginas web especialmente manipuladas que fuercen un cuadro de diálogo asociado a un website diferente al visitado. Afecta a todas las versiones (CVE-2012-1927).
       
  • Revelación de información (historial de estado) con un impacto medio (5.0), a través de websites especialmente manipulados que utilicen las funciones 'history.pushState' y 'history.replaceState' en conjunción con el uso de cross-domain frames, saltándose las políticas de seguridad del navegador (CVE-2012-1926).
      
  • Debido a una incorrecta gestión de la posición de los cuadro de diálogo, se lograría engañar al usuario haciéndolo creer que está descargando contenido oficial (como el cuadro de diálogo Opera Update por ejemplo), a través de sitios web especialmente manipulados (CVE-2012-1925), con un impacto medio (6.8).
    Se puede comprobar el efecto de esta vulnerabilidad en el vídeo:
    http://www.youtube.com/watch?feature=player_embedded&v=PTMWeh9a5JA

       
  • Y finalmente una modificación de la anterior, debido a la incorrecta gestión del tamaño en el cuadro de diálogo de descarga, se lograría engañar esta vez al usuario para descargar y ejecutar código, a través de páginas web especialmente manipuladas (CVE-2012-1924), con un impacto medio (6.8).
    Se puede comprobar el efecto de esta vulnerabilidad en el vídeo:
    http://www.youtube.com/watch?feature=player_embedded&v=79FZb4fBc9g

Más información:

[Opera Knowledge Base N°1010] Opera 11.XX High Remote Code Execution

[Opera Knowledge Base N°1011] Opera 11.61 Critical Remote Code Execution

Opera 11.62 for Windows changelog


José Mesa Orihuela

miércoles, 28 de marzo de 2012

Nueva actualización para Adobe Flash Player


Adobe ha publicado una nueva actualización para Adobe Flash Player para evitar dos nuevas vulnerabilidades que afectan al popular reproductor. Estas vulnerabilidades podrían permitir a un atacante ejecutar código arbitrario.


Las vulnerabilidades afectan a las versiones de Adobe Flash Player 11.1.102.63 para plataformas Windows, Macintosh, Linux y Solaris, y Adobe Flash Player 11.1.111.7 para Android 3.x y 2.x. También afecta a Adobe AIR 3.1.0.4880 (y anteriores) para Windows, Macintosh y Android.

Esta actualización, publicada bajo el boletín APSB12-07, resuelve un problema (con CVE-2012-0772) de corrupción de memoria relacionada con comprobaciones de seguridad de dominios de la URL (solo afecta a ActiveX, Windows 7 y Vista). El segundo problema, también de corrupción de memoria, en la clase NetStream (con CVE-2012-0773). Ambas vulnerabilidad podrían dar lugar a la ejecución de código remoto arbitrario.

Adobe ha publicado las siguientes versiones de Adobe Flash Player destinadas a solucionar las vulnerabilidades, y se encuentran disponibles para su descarga desde la página oficial
  • Adobe Flash Player 11.1.202.228 para Windows, Macintosh y Linux.
  • Adobe Flash Player 11.1.202.223 para Solaris.
  • Adobe Flash Player 11.1.111.8 para Android 3.x (y anteriores).
  • Adobe AIR 3.2.0.2070 para Windows, Macintosh y Android.

Esta es la segunda actualización crítica que recibe Adobe Flash Player en lo que va de mes. El pasado 5 de marzo Adobe ya publicó otra actualización para evitar otras dos vulnerabilidades graves.

Además, se mejora el sistema de actualización de Flash para hacerlo más cómodo (o sea, con menor intervención) para el usuario.

Más información:

Security update available for Adobe Flash Player


Antonio Ropero
Twitter: @aropero

martes, 27 de marzo de 2012

Actualización del kernel para Ubuntu 11


Se ha publicado una nueva versión del kernel del Linux para la distribución Ubuntu 11 que corrige un total de siete vulnerabilidades. Seis de ellas podrían causar una denegación de servicio y una permitiría eludir restricciones de seguridad.

El salto de restricciones (CVE-2011-4127), descubierto por Paolo Bonzini, se produce porque no se maneja adecuadamente el comando ioctl (input/output control) SC_IO.

A los errores de denegación de servicio se les ha asignado los CVEs: CVE-2011-3347, CVE-2011-4347, CVE-2012-0045, CVE-2012-1090, CVE-2012-1097, CVE-2012-1146, y son los siguientes:

  • Un error en los controladores de VLAN y be2net. Ha sido reportado por Somnath Kotur.
     
  • Un error en la comprobación de permisos en las peticiones para asignar dispositivos. Ha sido reportado por Sasha Levin.
      
  • Stephan Bärwolf ha descubierto un error en el subsistema KVM (kernel-based virtual machine).
      
  • Un error en el sistema de ficheros CIFS (Common Internet File System).
     
  • Un error relacionado con los métodos .set en los regset, reportado por H. Peter Anvin.
     
  • Un error en el control de grupos cgroups.

Más información

Ubuntu Security Notice USN-1405-1



Jose Ignacio Palacios Ortega


lunes, 26 de marzo de 2012

GnuTLS corrige dos vulnerabilidades


Se ha publicado la versión 2.12 de Libtasn1 y la versión 3.0.17 de GnuTLS que corrigen dos problemas de seguridad que podrían provocar una denegación de servicio.  

GnuTLS es una librería de comunicaciones segura que implementa, entre otros protocolos, SSL, TLS y DTLS. Ofrece una API (Application Programming Interface) para estos protocolos y para los estándares de criptografía de clave pública X.509 y PKCS # 12. Libtasn1 es la librería ASN.1 usada por GnuTLS y otros proyectos GNU para manejar estructuras X.509, Kerberos, etc.
                                                        
El primer error se encuentra en la función asn1_get_length_der del fichero decoding.c de la librería Libtasn1. Esta no maneja correctamente ciertos valores de elevada longitud y puede ser explotada por un atacante remoto a través de una estructura ASN.1 especialmente manipulada. Se ha solucionado en la versión 2.12 de la librería como proyecto independiente.

El segundo error se encuentra en el fichero cipher.c de la librería libgnutls al no manejar adecuadamente estructuras GenericBlockCipher anidadas en registros TLS. Puede ser aprovechado por un atacante remoto a través de una estructura GenericBlockCipher especialmente manipulada. Se recomienda actualizar a las versiones 3.0.17 o 2.12.18.

Los CVE asignados a estas vulnerabilidades han sido CVE-2012-1569 para el primer error y CVE-2012-1573 para el segundo. Las versiones corregidas pueden ser descargada desde su página oficial.

Más información

GNU Security Advisories




Jose Ignacio Palacios Ortega

domingo, 25 de marzo de 2012

Múltiples vulnerabilidades en MediaWiki

Se han publicado múltiples vulnerabilidades en MediaWiki para las versiones anteriores a 1.17.3 y 1.18.2 que podrían ser aprovechadas por un atacante remoto para causar distintos impactos.
 
MediaWiki es software libre para la creación de wikis. Originalmente este proyecto fue creado para Wikipedia. Los errores son los detallados a continuación.

  • Un error en el módulo de boqueo y desbloqueo podría permitir a un atacante remoto sin privilegios bloquear y desbloquear a otros usuarios a través de un ataque Cross-site request forgery (CSRF).
      
  • Un error en el gestor de recursos podría permitir cargar el módulo "user.tokens" y revelar información sensible. Esto podría ser aprovechado por un atacante remoto para robar el token de usuario comprometiendo.
       
  • Un error en "Special:Upload" podría permitir subir archivos sin la interacción del usuario, afectando la integridad del sitio vulnerado a través de un ataque Cross-site request forgery (CSRF).
      
  • Un error a forma de generar de números aleatorios podría permitir a un atacante remoto resetear el correo de la víctima a través de un ataque de generación de números pseudo-aleatorios (PRNG).
       
  • Un error en el analizador de texto en la extensión CharInsert podría causar una denegación de servicio de bucle infinito, y potencialmente, la ejecución de scripts aleatorios a través de un ataque cross.-site scripting.

Los errores están subsanados y las versiones corregidas se pueden descargar desde su página oficial http://dumps.wikimedia.org/mediawiki/

Más información:

MediaWiki-announce



Jose Ignacio Palacios Ortega


sábado, 24 de marzo de 2012

Suplantación de la barra de direcciones de iOS 5.1


David Vieria-Kurz de MayorSecurity ha descubierto una nueva forma de suplantar la barra de direcciones de Safari en iOS 5.1, el Sistema Operativo en sus terminales móviles.

El fallo, con un riesgo de seguridad moderado, se encuentra en el manejador de URLs cuando se utiliza la función JavaScript "window.open" de Apple Webkit/534.46. Este fallo podría ser aprovechado por un atacante remoto para suplantar la barra de direcciones y así engañar al usuario mostrando como dirección de la página actual una distinta a la realmente visitada. En resumen, para dar realismo a potenciales casos de phishing.

Vieria-Kurz ha publicado una prueba de concepto con la que se demuestra este fallo y cualquier. Cualquier usuario que visite con su terminal http://www.majorsecurity.net/safari-514-ios51-advisory.php,verá que la dirección que realmente aparece en el navegador Safari es www.apple.com.


No existe parche disponible, por lo que se recomienda no visitar páginas importantes con Safari en iOS a través de un enlace que no sea de confianza. Por supuesto, actualizar tan pronto como vendedor publique el parche esté disponible.

Apple ya se enfrentó a un problema muy parecido en diciembre de 2010.

Más información:

Reporte oficial de MajorSecurity

Apple Safari en iOS 5.1 vulnerable a Address Bar Spoofing

Peligro de phishing en iPhone


Jose Ignacio Palacios Ortega


viernes, 23 de marzo de 2012

Ejecución de código en Adobe Photoshop a través de archivos TIFF


Se ha anunciado una vulnerabilidad en Adobe Photoshop, que podría permitir a un atacante remoto tomar el control de los sistemas afectados.

La vulnerabilidad reside en un desbordamiento de búfer basado en heap al cargar una imagen en formato tiff específicamente creada. Un atacante podrá ejecutar código arbitrario en los sistemas afectados con los privilegios del usuario atacado.

El problema se ha confirmado en versiones 12.1 de Adobe Photoshop. Adobe fue notificada del problema el pasado 20 de septiembre, tras 180 días sin respuesta el descubridor ha publicado un aviso y una prueba de concepto del problema.

Más información:

Adobe Photoshop TIFF Image Parsing Buffer Overflow Vulnerability

POC


Antonio Ropero
Twitter: @aropero

jueves, 22 de marzo de 2012

Zeus mejora su ingeniería social: la transferencia "ficticia"

La familia Zeus solía modificar las pantallas de los infectados para pedir la tarjeta de coordenadas completa. Así podían validar transferencias y robar a sus víctimas. A medida que los bancos van implantando los SMS como método de validación, Zeus mejoró incluyendo el envío del troyano al móvil e interceptando los SMS (man-in-the-mobile). Pero esto sólo es válido para BlackBerry y Android, además de que muchos usuarios se mostraban recelosos. ¿Cómo han solucionado este problema? Con un genial movimiento de ingeniería social.


Zeus y SpyEye ya han hecho frente en el pasado al "problema" que les supone la autenticación por móvil en la banca electrónica. Envían a sus víctimas un troyano al móvil, para interceptar así el código de validación en los SMS. De eso ya hemos hablado no hace mucho aquí:

Sin embargo, últimamente han desarrollado una técnica no tan sofisticada técnicamente, sino basada en lo que siempre parece el punto más débil: el usuario y su credulidad. Así, estas versiones funcionan de la siguiente manera. Cuando el usuario se presenta en su página de banca electrónica (y sólo cuando se presenta, no antes) el troyano se activa. Lo primero que hace es interpretar la página del banco concreto, buscando las cuentas que almacenen una mayor cantidad. Esta información la envía a un servidor externo con la siguiente petición HTTP:


Donde "country" es el banco atacado, "amount" la cantidad que guarda la cuenta de la víctima y "login" el login de usuario en la banca oline.

Después, muestra esta pantalla (incrustada en la original):

 
En ella se insta al usuario a realizar un "test" para probar el sistema de SMS de la banca. Bajo la premisa de una transferencia ficticia, se invita al usuario a que pruebe los beneficios del método de validación por móvil. El lenguaje, comparándolo con otro tipo de estafas, está relativamente cuidado.

Si el usuario decide continuar (no tiene otra opción, puesto que si cierra la pantalla no podrá acceder a su banca online), aparecerá este otro mensaje


En ella se hace una transferencia a un beneficiario (el mulero) del que incluso se muestran las últimas cifras de la cuenta. La transferencia es invariablemente por valor de 3.000 euros, e invita al usuario a validarla con el mensaje que ha recibido en su móvil. Lo que está ocurriendo es que el troyano está realizando realmente la transferencia, pero a través de una "interfaz" creada por él, usando los recursos del banco. O sea, al teléfono llegará realmente un mensaje legítimo generado por la entidad y si lo introduce y valida, el efecto será exactamente el mismo que si el usuario hubiese realizado la transferencia de forma habitual desde su portal.

Esta ingeniosa e interesante manera de engañar al usuario está teniendo cierto éxito, y supone un paso muy interesante en la evolución de esta familia y su uso de la ingeniería social.

El resto de comportamiento "técnico" del troyano Zeus, es el "habitual": se inyecta en Explorer.exe, descarga un archivo de configuración cifrado desde alguna ubicación, envía los datos robados a un panel del atacante donde quedan ordenados y clasificados, etc.


Sergio de los Santos
Twitter: @ssantosv

miércoles, 21 de marzo de 2012

45 formas de engañar a 38 motores antivirus


Suman Jana y Vitaly Shmatikov, han creado el documento "Abusing File Processing in Malware Detectors for Fun and Profit" que presentan en el IEEE Symposium on Security & Privacy de este año en San Francisco. En resumen, han descubierto 45 "vulnerabilidades" (métodos para eludir motores) que afectan a un total de 38 antivirus. La mayoría relacionadas con el tratamiento de ciertos tipos de ficheros, que pueden permitir que el malware pase desapercibido por el motor y no sea detectado.

Las vulnerabilidades encontradas están relacionadas con los intérpretes de las distintas  extensiones de ficheros. Así, han encontrado diferentes formas de manipular los formatos de ficheros para permitir que pasen desapercibidos para los motores.

  • TAR: Con el número más alto de métodos encontrados, 13 en total, los intérpretes puede ser explotados de diferentes formas, modificando sus caracteres iniciales o ciertos campos del formato. 34 motores antivirus se ven afectados por este fallo.
       
  • ELF: Se han encontrado un total de 12 métodos en este formato que pueden ser aprovechados modificando ciertos campos o añadiendo algunos caracteres. Este error afecta a 14 motores antivirus diferentes.
       
  • EXE: Con un total de 6 métodos que pueden ser aprovechados igualmente añadiendo caracteres en ciertas posiciones o manipulando algunos campos del estándar. Cinco motores se ven afectados por este fallo.
        
  • Ficheros Microsoft Office: Dos métodos pueden ser explotados a través de un fichero especialmente manipulado que contenga la secuencia de caracteres especiales. Afecta a los antivirus Comodo y Sophos.
         
  • RAR: Este único (método de evasión (cambiar sus dos primeros bytes por MZ) en el formato permite eludir a la mayoría de los motores conocidos (35).
        
  • CAB: Se han descubierto 7 métodos que pueden afectar a 14 motores antivirus.
        
  • CHM: Un único método que permite eludir las detecciones de ClamAV y Sophos. Puede ser explotado a través de la manipulación de la cabecera.
       
  • Gzip y ZIP: Se han encontrado tres métodos en el intérprete de este tipo de ficheros que puede afectar a un total de 20 motores antivirus.

El número de vulnerabilidades asignadas a cada antivirus, ordenadas de mayor a menor, son:
         eSafe: 22
         QuickHeal: 20
         Rising Antivirus: 20
         Emsisoft: 19
         Ikarus Virus Utilities T3 Command Line Scanner: 19
         Panda Antivirus: 19
         Norman Antivirus: 18
         Fortinet Antivirus: 17
         Sophos Anti-Virus: 16
         McAfee Gateway: 13
         Kaspersky Anti-Virus: 11
         McAfee Anti-Virus Scanning Engine: 11
         NOD32 Antivirus: 11
         F-Prot: 10
         Command Antivirus: 10
         AVEngine: 9
         Antiy Labs AVL: 9
         Jiangmin Antivirus: 9
         AhnLab: 8
         BitDefender: 8
         Comodo: 8
         F-Secure: 8
         Trend Micro: 8
         K7 Antivirus: 7
         PC Tools AntiVirus: 7
         AVG: 6
         Clamav: 5
         ClamAV: 5
         Microsoft Security Essentials: 5
         nProtect Anti-Virus: 5
         VBA32: 5
         Avira AntiVir: 4
         VirusBuster: 4
         Avast: 3
         Dr.Web: 3
         eTrust Vet Antivirus: 3
         G Data AntiVirus: 3
         Prevx: 2

A todos estos errores se les ha asignado los CVE consecutivos que van desde CVE-2012-1419 hasta CVE-2012-1463.

Más información:

Evasion attacks expoliting file-parsing vulnerabilities in antivirus products


José Ignacio Palacios

martes, 20 de marzo de 2012

Solucionadas dos vulnerabilidades en Asterisk


Se han corregido dos vulnerabilidades en Asterisk, que podrían permitir a atacantes remotos provocar denegaciones de servicio o ejecutar código arbitrario.

Asterisk es una implementación de una central telefónica (PBX) de código abierto. Como cualquier PBX, se pueden conectar un número determinado de teléfonos para hacer llamadas entre sí e incluso conectarlos a un proveedor de VoIP para realizar comunicaciones con el exterior. Asterisk es ampliamente usado e incluye un gran número de interesantes características: buzón de voz, conferencias, IVR, distribución automática de llamadas, etc. Además el software creado por Digium está disponible para plataformas Linux, BSD, MacOS X, Solaris y Microsoft Windows.

El primero de los fallos afecta a las versiones 1.4.x, 1.6.2.x, 1.8.x y 10.x. El problema, de denegación de servicio, solo es explotable bajo ciertas circunstancias si el servidor utiliza la aplicación Milliwatt.

La segunda vulnerabilidad, que afecta a las versiones 1.8.x y 10.x, reside en un desbordamiento de buffer basado en pila en la interfaz HTTP Manager al recibir datos HTTP Digest Authentication específicamente manipulados. Un atacante remoto puede aprovechar esta vulnerabilidad para ejecutar código arbitrario.

Para corregir estos problemas Digium ha publicado las versiones 1.4.44, 1.6.2.23, 1.8.10.1 y 10.2.1.

Más información:

Remote Crash Vulnerability in Milliwatt Application  

Stack Buffer Overflow in HTTP Manager


Victor Antonio Torre

lunes, 19 de marzo de 2012

Nginx corrige dos problemas de seguridad


Nginx soluciona un par de fallos de seguridad en sus nuevas versiones 1.1.17 y 1.0.14 que podrían permitir a un atacante obtener información sensible.

Nginx es un programa que puede ser utilizado como servidor http independiente y como servidor proxy. Puesto que es bastante ligero, se utiliza como proxy inverso delante de algunos servidores de producción (como Apache u otros) para reducir la carga de éstos cuando trabajan con muchas sesiones simultáneas.

El primer fallo es debido a un mal uso de la función 'ngx_cpystrn' en los módulos 'ngx_http_*_process_header'.

El segundo de los fallos tiene su origen en 'ngx_http_parse.c' al no filtrar correctamente las cabeceras cuando son nulas.

Los fallos permitirían a un atacante remoto obtener información sensible a través de una petición especialmente diseñada.

Ya están disponibles paradescargar las versiones 1.1.17 y 1.0.14 que solucionan estas incidencias.

Más información:

nginx trac:

nginx changes:


Víctor Antonio Torre

domingo, 18 de marzo de 2012

WhitePaper: Estudio técnico del troyano de la policía

Hemos realizado un estudio técnico detallado del malware de la policía. De esta forma hemos podido comprobar cómo se generan los códigos válidos para eliminarlo, además de algunas curiosidades sobre su funcionamiento.

Nuestro compañero Marcin "Icewall" Noga ha estudiado en profundidad el troyano, y descubierto algunas curiosidades. El informe completo puede ser descargado desde

Aunque contiene parte de código a bajo nivel que puede asustar a algunos usuarios menos técnicos, recomendamos su lectura porque hemos intentando explicar su comportamiento. Contiene además el algoritmo que comprueba qué códigos son válidos (con lo que podemos deshacernos del troyano de manera más eficiente), además de otras curiosidades. Vamos a resumirlas:

  • Si se paga el rescate, se crea el fichero "pinok.txt" en el mismo directorio con el código usado para haber realizado el pago. El troyano no comprueba el contenido del fichero, solo su existencia, por tanto si se crea un fichero pinok.txt vacío, el troyano pensará que se ha pagado el rescate.
      
  • Hemos creado un generador de códigos válidos.
      
  • El troyano acepta un pin universal que hará que se desbloquee: 1029384756.
      
  • El troyano inyecta en Explorer.exe todo su cuerpo, y no sólo el código que necesitaría para funcionar en su interior.
      
  • El troyano contiene evidencias de código de control, que se ha "olvidado" mientras se programaba.
      
  • El creador ha preparado un comando que le permite eliminar el agente de todas sus víctimas. "del".
       
  • Los procesos que intenta anular constantemente en el equipo son: taskmgr.exe, regedit.exe, seth.exe, msconfig.exe, utilman.exe y narrator.exe

El estudio está disponible desde:

Además del estudio técnico, hemos investigado sobre su creador. Intentaremos hablar de esto en los próximos días.

Más información:

El malware de la policía aprovecha un exploit de Java "in-the-wild" y el secreto su "éxito"

una-al-dia (21/06/2011) Vídeo: Troyano secuestra el ordenador en nombre de la policía nacional acusando al usuario de terrorista zoofílico

una-al-dia (28/02/2012) Vuelve el troyano que se hace pasar por la policía: Cómo protegerse (de verdad)

una-al-dia (02/03/2012) El virus de la policía "evoluciona" e impide el acceso en modo seguro

una-al-dia (06/03/2012) Más información sobre el virus de la policía


Sergio de los Santos
Twitter: @ssantosv

sábado, 17 de marzo de 2012

Crypt4you, un nuevo formato de cursos gratuitos online de criptografía y seguridad de la información en Criptored


De la mano del Dr. Jorge Ramió y del Dr. Alfonso Muñoz, quienes ya nos presentaron hace año y medio el proyecto de Enciclopedia de la Seguridad de la Información Intypedia y cuya última lección se publicará en abril de 2012, nace un nuevo formato de enseñanza online, gratuita y colaborativa, el Aula Virtual de Criptografía y Seguridad de la Información Crypt4you.
 
Crypt4you es un proyecto de innovación educativa sin ánimo de lucro que nace en la Red Temática de Criptografía y Seguridad de la Información Criptored, en la Universidad Politécnica de Madrid, España. Siguiendo el título del proyecto, se trata de criptografía para ti, criptografía y seguridad de la información para todos, una manera de abrir las puertas de la universidad hacia toda la sociedad.

Los autores de los cursos serán preferiblemente investigadores y profesores universitarios miembros de la Red Temática Criptored.

Una de las características distintivas de Crypt4you es la publicación y entrega de  ecciones a manera de fascículos todos los días 1 y 15 de cada mes. El primer curso que lleva por título El algoritmo RSA, del profesor Dr. Jorge Ramió, y está compuesto por 10 lecciones que se publicarán desde el 15 de marzo al 1 de agosto de 2012.

Las lecciones contemplan un conjunto de ejercicios y prácticas, propuestos y resueltos y un test final de evaluación personal; con la última lección de cada curso se publicará un examen final. Otra característica de este nuevo formato de formación e-learning es el enfoque colaborativo, en tanto se pide a los alumnos que sigan estos cursos su participación activa a través de las redes sociales facebook y twitter de Crypt4you, resolviendo dudas y aportando conocimiento.

Otra faceta novedosa de este proyecto es la actualización dinámica de sus contenidos, en el sentido de que el autor podrá en cualquier momento actualizar los contenidos de sus lecciones, añadir nuevos apartados, nuevos ejercicios y prácticas.

En definitiva, Crypt4you se presenta como un nuevo formato de formación en seguridad de la información en la nube, gratuita, online y colaborativa, con el rigor que ha demostrado Criptored en sus doce años de vida sirviendo más de dos millones de documentos, con una especial dedicación hacia Iberoamérica.

Para mayor información, acceda al sitio Web de Crypt4you y lea las Frequently Asked Questions FAQ.
Sitio Web: www.crypt4you.com


viernes, 16 de marzo de 2012

SpyEye y sus curiosas técnicas de ocultación


A finales de 2010, ya publicamos algunas noticias acerca de la familia SpyEye (con vídeo incluido) en las que se hablaba de su interesante panel de control. Dos años después, el troyano sigue gozando de una estupenda salud, y su variante que infecta también a los teléfonos móviles, está consiguiendo un éxito importante. Hablemos ahora de sus técnicas de ocultación y algunas curiosidades.

SpyEye es un troyano bancario del tipo DIY ("hágalo usted mismo") muy popular. Su nivel de sofisticación es punta de lanza del malware actual. Sus últimas versiones incorporan la infección del móvil con sistema operativo Android o Blackberry cuando se usa el SMS como segundo canal de autenticación de algunos bancos. Así, el troyano tiene el control sobre los dos dispositivos involucrados en la transacción.

SpyEye tiene muchas "virtudes". Entre ellas, es un rookit que impide que se vean sus ficheros si se explora el sistema desde el explorador. Se suele copiar en:

C:\$recycle$

Que queda invisible al explorador. Se puede consultar sin embargo, desde la línea de comando.


Hasta aquí "normal", esto ya lo hacía Zeus desde 2006 y rootkits en años anteriores. Algo que lo diferencia de algunas versiones de Zeus, es que SpyEye es invisible también en línea de comando, gracias a que modifica el comportamiento de dos funciones de Windows a bajo nivel: NtQueryDirectoryFile y NtVdmControl.

En la captura, en el directorio $recycled$ falta un ejecutable. ¿Dónde está? Lo que vemos es el archivo de configuración. El archivo está ahí, incluso oculto para el cmd. Si intentamos copiar cualquier fichero en la misma ruta... nos dice que ese nombre ya está siendo usado.

 
Ocultación en el registro

Durante el análisis de este tipo de malware, una técnica habitual es comprobar con la herramienta Autoruns qué se arranca en Windows. Autoruns recopila de forma muy eficaz todos los puntos que pueden servir para lanzar código que se inicia con el sistema operativo. ¿Dónde se ubican estas versiones de SpyEye para lanzarse en el inicio? Mientras que Zeus trabaja en la shell del Winlogon (más "rebuscado"), esta versión de SpyEye, sorprendentemente, utiliza una zona muy común para arrancar programas en el inicio:

HKLM\Software\Microsoft\Windows\CurrentVersion\run

... pero que se oculta, tanto a los ojos la herramienta "normal" de registro (regedit), como para Autoruns. De nuevo el rootkit de este malware va un poco más allá (los rootkits como tal, insistimos, ya contiene estas técnicas desde hace tiempo). En este caso, parchea en memoria la API NtEnumerateValueKey, que usa ntdll.dll. Esto es muy eficaz, puesto que la API se encuentra a muy bajo nivel. Es decir, cualquier programador usará APIs comunes como RegEnumValue o RegOpenKey, pero estas, internamente, llamarán a NtEnumerateValueKey. Con esto consigue engañar a la inmensa mayoría de programas que quieran leer el registro... aunque no a todos

Autorunsc, el más sincero

Como curiosidad, parece que una de las versiones de SpyEye comete algún tipo de error a la hora de "parchear" en memoria la función. Así, permite que, la primera vez que se lanza Autorunsc (la versión de línea de comandos de Autorun), se pueda leer bien el registro, mientras que en sucesivas consultas... se oculta.


 
Esta imagen lo resume un poco todo. La entrada "oficial" en el registro es solo la correspondiente a ctfmon.exe. Sin embargo, existe otra que solo se puede "ver" en el resultado de Autorunsc después de la infección, volcado en un texto. Se observa la entrada:

YZ5CZHZY5D1EWA9X
     C:\$Recycle$\B8DEA5BBC55.exe /q
     c:\$recycle$\b8dea5bbc55.exe
     7678946538a76066a7d0829584eaa0e3 (MD5)
     9c36092b853526aa340239ac70f5dfb1ced1e921 (SHA-1)
     e20b15ec8f0a5cffce47923dc79934e8c6dd9295c7256881f3d399632e7eaa90
(SHA-256)

Invisible al resto de programas. Si se lanza de nuevo autorunsc y se consulta el registro... desaparecerá. El funcionamiento interno de Autorun y Autorunsc es el mismo, llaman a las mismas API de sistema para leer los valores del registro, así que solo cabe achacar el comportamiento a algún error del troyano, que subsana en sucesivas consultas.

Más curioso todavía

¿Qué hacer entonces para eludir el parcheo en memoria que hace el troyano? Como hemos dicho, lanzando autorunsc.exe la primera vez, será incapaz de ocultarse. Pero existe otro método. SpyEye no afecta a los procesos que se llamen skype.exe. Lo tiene "incrustado" en su código. No es una "puerta trasera" sino que muy probablemente, lo hará para que no le llegue tanto tráfico desde esa aplicación, que quizás no le interese. Así, si renombramos autorunsc.exe a skype.exe, el valor oculto volverá a aparecer. Se observa en la figura el incremento de tamaño del fichero de texto resultante con uno y otro nombre. El aumento de tamaño corresponde a la entrada oculta.


Igualmente, renombrando autoruns.exe a skype.exe, se ve gráficamente la entrada.


Más información:

Bypassing the SpyEye "rootkit", or how to perform a quick disinfection

Analysis of TR/Spy.SpyEye

Vídeo: Así funciona SpyEye (I)

Así funciona SpyEye (y II)


 
Sergio de los Santos
Twitter: @ssantosv