Español | English
rss facebook linkedin Twitter

ONE TIME PAD: El sistema de cifrado irrompible



















En nuestro día a día dentro de la Seguridad IT, observamos como el cifrado de las comunicaciones es una parte fundamental de todos los servicios y aplicaciones que monitorizamos. Entramos en debates sobre si determinado cripto sistema o clave es lo suficientemente robusto para preservar la seguridad de las comunicaciones.
Pero… ¿realmente existe un sistema de cifrado que nos pueda garantizar este punto?

Los métodos o sistemas de cifra tienen una importancia fundamental en el mundo IT; la mayoría de servicios, protocolos y aplicaciones hacen uso de distintos métodos de cifra para proteger y firmar las comunicaciones en curso.
Una de las preguntas que debemos plantearnos es la siguiente: ¿realmente existe un método de cifra que pueda considerarse seguro? Entendemos como seguro un método de cifra que no pueda ser violado, que sea irrompible. Para poder responder a la cuestión sobre qué consideramos “seguro”, deberíamos retomar la definición de ‘secreto perfecto’ creada por el padre de la Teoría de la Información, Claude Shannon.

CLAUDE SHANNON
Ingeniero y matemático estadounidense, padre y creador entre otras cosas de la palabra bit, del concepto de entropía y sobretodo fundador de Teoría de la Información,  de la que beben muchos conceptos y aplicaciones de hoy en día.

Shannon postulaba que un sistema se considera perfectamente secreto si el texto cifrado o criptograma no revela ninguna información sobre el mensaje original, provocando por tanto que su criptoanálisis sea imposible.
Todos los sistemas de cifra que conocemos ya sea de clave simétrica o asimétrica, por sustitución o permutación, no son considerados perfectamente secretos, puesto que, de una manera u otra revelan información sobre el mensaje original.

Bueno, realmente todos menos uno: One Time Pad. Un sistema de cifrado de sustitución poli-alfabética cuyo origen data de finales del siglo XIX, y que puede presumir de ser el único que cumple con la norma de secreto perfecto. Y para conseguir este hito se basa en el operador lógico XOR.

LA MAGIA DE XOR

NOTA: Por cuestiones de espacio, alguno de los conceptos tratados han sido enfocados desde un punto de vista más general y abstracto, ya que son conceptos que de por sí podrían ocuparnos cientos y cientos de líneas.
Esta es la tabla de verdad del operador XOR, a nivel de bits:









El resultado sólo es verdadero (valor 1) cuando A o B son verdaderos; si los dos son iguales, se considera falso (valor 0).

Si extrapolamos a un método de cifra en el que:
•    A sea el texto original
•    B sea la clave
•    C sea el criptograma (o texto cifrado) como resultado de A XOR B

La magia de XOR radica en que si conseguimos acceder únicamente al criptograma C, es decir, sólo podemos acceder al criptograma, no conoceremos los valores de B (llave usada) ni lógicamente el mensaje A. Obtener alguna información sobre el mensaje original (A) resulta imposible. Veámoslo:

Si el valor de C es 0, puede ser porque:
•    A sea igual a 1 y B sea igual a 1
•    A sea igual a 0 y B sea igual a 0

Es decir, A puede tomar cualquiera de los dos valores disponibles, 0 o 1.

Si el valor de C es 1, puede ser porque:
•    A sea igual a 1 y B sea igual a 0
•    A sea igual a 0 y B sea igual a 1

Es decir, A puede tomar cualquiera de los dos valores disponibles, 0 o 1.
Por lo que podemos afirmar que si únicamente conocemos el texto cifrado o criptograma, no podremos nunca obtener información sobre mensaje original, de ningún tipo, ya que este puede tomar todos los posibles valores.

Una de las propiedades de XOR es la distribución de 0 y 1, que está repartida –como podemos observar en su tabla de verdad- al 50% entre 0 y 1. En contraste con otros operadores lógicos como AND (75% de 0 y 25% de 1) y OR (25% de 0 y 75% de 1)

También podemos afirmar que el operador lógico XOR nos permite funcionar en dos sentidos, tanto para cifrar –como ya hemos visto anteriormente- como para descifrar la información. Es decir, si M es el mensaje original, K la clave y C el criptograma resultante de hacer M (XOR) K, podríamos obtener el mensaje original mediante:

M = K (XOR) C

Otra de las características intrínsecas es que si tenemos un mensaje que no está uniformemente distribuido, pongamos por caso 11111111 y usamos una clave ‘aleatoria’ como podría ser 00101001, su criptograma usando XOR sería

11111111 XOR 00101001 >> 11010110

Lo que provoca que aunque partamos de un mensaje que no está uniformemente distribuido o con una distribución no conocida, si la clave es aleatoria, el criptograma volverá a estará distribuido de forma aleatoria. Dificultando enormemente el criptoanálisis del texto cifrado.

Por otra parte, podríamos pensar que otros operadores lógicos (a nivel de bit), como AND u OR también podrían servirnos para el mismo propósito, pero por desgracia, estos operadores, al carecer de las propiedades anteriormente explicadas de XOR, resultan poco útiles para estas tareas. Veámoslo gráficamente con un ejemplo a continuación.

Si tenemos la siguiente imagen:










Y aplicamos el operador AND entre cada bit de la imagen y una clave aleatoria (compuesta por 1 y 0 de forma ‘aleatoria’), obtenemos:











Si aplicamos un operador OR, obtenemos:










Como podemos observar, aún somos capaces de ver y/o distinguir los motivos de la imagen. En cambio, si aplicamos un filtro XOR a nivel de bits, esto es lo que obtenemos:











ONE TIME PAD

One Time Pad es un método de cifra que consiste en aplicar el operador XOR entre cada bit del mensaje original y los bits de una clave aleatoria. Su nombre proviene de que la clave se solía destruir en cuadernos (Pads) y sólo se debe emplear la misma clave una sola vez (One Time) para garantizar su seguridad.
Si garantizamos que no se re usan las claves y que éstas permanecen realmente aleatorias, podemos afirmar que obtenemos un cripto-sistema perfectamente seguro.


¿ADIÓS A LA MAGIA?
Entonces, ¿por qué no usamos este método de cifra?
Lo veremos en el siguiente artículo.


David Conde
SOC/CERT S21sec

URLZONE reloaded?



Desde el departamento de Ecrime de S21sec hemos descubierto una nueva familia de malware basada en el código de un malware conocido como “URLZONE” que fue detectado por primera vez en 2009. Utiliza técnicas que incluyen Algoritmo de Generación de Dominios (DGA) y transferencias fraudulentas mediante ATS (Automated Transfer System).

Hemos podido comprobar que la afectación es similar a botnets específicas de otras familias de malware como Tinba, Kins, Pykbot y Xswkit y que posiblemente sean operadas desde una misma “banda”, usando siilares inyecciones y alquilando los ATS.

Por lo que hemos podido observar, su afectación está dirigida únicamente contra clientes de entidades españolas.

En cuanto al funcionamiento, destacar que, una vez realizada la infección, utiliza inyección de código "html" en tiempo real para engañar al usuario mediante ingeniería social y poder transferir dinero de la cuenta de la víctima a otras cuentas bancarias (mulas), por medio de transferencias automáticas (ATS).

La conexión con el Panel de Control (C&C) la realiza por “https” descargando la configuración del malware comprimida con zlib, donde vienen definidos sus objetivos.

Una de las vías de distribución detectadas se realiza través del envío de un e-mail escrito en catalán con un archivo adjunto con extensión “.pdf.exe” comprimido en “factura-xxxx.pdf.zip“.


Estar atentos, pronto seguiremos actualizando los datos que vayamos obteniendo y soluciones.

S21sec ecrime

En busca de la seguridad integral: Las impresoras

Hablar de seguridad IT es hablar sobre dispositivos más o menos sofisticados tales como: Firewalls, IPS, WAF, Anti-APT, Antivirus, Sistemas Operativos, Elementos de comunicaciones y poco más.
 
Si a más de uno nos preguntaran "a bote pronto", enumeraríamos esta lista casi de memoria tal y como hacíamos con las preposiciones.Sin embargo, casi todos olvidaríamos unos elementos presentes en todas las compañías y de los que sólo nos acordamos cuando no tienen tóner. Las impresoras.

Hace más de tres años, un grupo de investigadores demostraron que estos dispositivos eran potencialmente vulnerables y que al estar conectados, podían ser la puerta de entrada a otros dispositivos más jugosos.

Las pruebas se realizaron sobre impresoras HP-Jetdirect y fueron del tipo:
  • Reiniciar la impresora: Puede provocar el envío de los documentos por medios más inseguros
  • Manipular el propietario de los trabajos
  • Vulnerar los mecanismos de autenticación para controlar el acceso a los trabajos
  • Acceder a documentos "cifrados" que eran enviados a la cola sin cifrar y permanecían en el histórico del dispositivo. 

HP Jetdirect

Hace varias semanas, HP anunció la comercialización de nuevas impresoras del modelo Laserjet junto con equipos multifunción con características de seguridad adicionales para prevenir ataques como los citados anteriormente y más sofisticados como: XSS, BIOS o incluso hacer partícipes a estos dispositivos para que participen en ataques DDOS, como ya detectó hace unos meses la empresa NSFocus.

Esto nos demuestra que, poco a poco los que desempeñamos nuestra profesión en IT y/o seguridad IT, estamos concienciándonos de que estos dispositivos han dejado de ser un elemento pasivo en nuestras redes, para ser un miembro activo de las mismas en cuanto a la aplicación de mecanismos de seguridad.En una reciente encuesta más del 65% de los administradores IT creen que las impresoras pueden ser infectadas por algún tipo de malware y es necesario tomar medidas.

Tomando como referencia estas "NextGenerationPrinters" y contrastando la información que vemos en nuestros clientes, nos surgen las siguientes cuestiones:
  • ¿Por qué no comenzar la monitorización de impresoras en red?
  • Es importante, no tratar las impresoras como dispositivos independientes. Debemos pensar en buscar la relación de las impresoras con otros dispositivos y buscarsiempre la correlación de alertas que nos haga tener una visión global; ¿por qué no correlar los logs de las impresoras con los que nos aporte el Active Directory? o un DLP?, ¿por qué no buscar la relación entre ambos?
  • ¿Qué políticas de seguridadse deben establecer en estos dispositivos?
  • Al ser un elemento más de la red, ¿Qué alertas deberían generar?, alertas INTEL, malware, procesos “no controlados” corriendo en el dispositivo…
Las respuestas a estas preguntas han de ser contestadas desde "YA" y en un futuro cercano, estoy seguro de que formarán parte de cualquier catálogo de alertas y monitorización.


Juan de Dios 
Security Operation Center

El malware Tinba vuelve a enfocar sus ataques en una entidad española.


A pesar de su diminuto tamaño y su relativa juventud, el troyano bancario Tinba se ha convertido en uno de los jugadores importantes de la escena del cibercrimen. Por ello desde el departamento de ecrime de S21sec, monitorizamos diariamente 80 botnets de esta familia para detectar cambios significativos en tiempo real.

Hace unos días, pudimos observar que una de las bots que monitorizamos comenzaba a distribuir un nuevo fichero de configuración que dirigía los ataques a una sola compañía española.
El cibercrimen busca siempre obtener la mayor monetización posible, por eso, los ciberdeluncuentes han diversificado los ataques en dos campañas de diferentes características:

  1. Campaña enfocada: el ataque se centra en una o dos entidades de forma muy intensa y limitada a un corto espacio de tiempo. Buscan obtener ingresos a corto plazo y de mayor cuantía. 
  2. Campaña generalista: afectan a múltiples entidades, se mantienen todo el año proporcionando ingresos constantes y su grado de éxito es más ¿limitado?



No es la primera vez que los ciberdelincuentes emplean esta misma red zombi para realizar campañas enfocadas. La botnet apareció a finales agosto y desde entonces, su configuración ha sido actualizada en tres ocasiones. Aquí el histórico:
  1. Configuración 1: (24 de Agosto) Se realizaron pruebas apuntando a entidades holandesas.
  2. Configuración 2: (26 Septiembre) Primera campaña enfocada y dirigida a dos entidades bancarias españolas.
  3. Configuración 3: (29 Octubre) Campaña dirigida a una única entidad española.
Como siempre, el grado de éxito de la campaña dependerá de las capacidades técnicas y humanas de los delincuentes así como la capacidad de la entidad de desplegar las medidas adecuadas. Os iremos informando de su evolución y nuestros progresos.

S21sec ecrime

DRIDEX - UN AÑO DE FRAUDE BANCARIO


Somos la única empresa española que, en colaboración con Guardia Civil y agencias internacionales como FBI y Europol ha ayudado a destapar al sofisticado troyano Dridex.

Tras muchos meses de estudio, hemos podido observar que Dridex es un troyano complejo. Su actividad se basa principalmente en el robo de credenciales bancarias de usuarios a través de sitios web o “webinjects”, sin embargo, también se ha utilizado para otros fines más ocultos, tales como la sustracción de documentación en sectores más sensibles como redes gubernamentales, redes de hospitales, redes universitarias, servicios de abogacía, entidades de gestión de derechos de autor y empresas del sector aeronáutico.

Con 195 países afectados y más de 344.721 equipos comprometidos según datos recogidos por S21sec hasta agosto, Dridex ha puesto su foco principalmente en países como Francia con aproximadamente 62.000 infecciones, Reino Unido con unas 115.000, EE.UU. con alrededor de 25.000 y España con casi 5.800 incidencias.

Ampliamos más información en la siguiente infografía:




Tutorial: Footprinting pasivo con ELK y open data


Hoy en día utilizar Shodan, Bing, Google Hacking para encontrar información indexada con propósitos de investigación o auditoria en las diferentes plataformas es una práctica habitual.

Desde hace algún tiempo, tras la aparición de herramientas como ZMap, masscan u otras, han ido surgiendo iniciativas en las que más o menos regularmente se escanean IPv4 en su totalidad y publican los resultados para poder ser utilizados en tareas de investigación, al igual que existen iniciativas que almacenan páginas web en su totalidad (crawlers), y otras de diversa índole.

¿Es posible crearnos nuestro propia plataforma de búsqueda utilizando exclusivamente datos públicos emulando parcialmente las funcionalidades mencionadas (shodan, google hacking, etc..) en un solo 'front-end' ? Sí, es posible y a continuación os queremos mostrar una prueba de concepto:

Para empezar necesitamos fuentes de información pública y a poder ser gratuita con información útil para luego poder trabajar con ella. Entre otras fuentes, podemos empezar con:
Opcionalmente podríamos ampliar las fuentes de información con:
Para hacer una prueba inicial no utilizaremos el 100% de la información disponible (Terabytes de información pública), y en caso de querer generar una plataforma seria, se requieren recursos de almacenamiento, procesamiento y accesibilidad específicos y no es el objetivo principal de este Post, por lo que vamos a acotar la cantidad de información que vamos a utilizar para poder confirmar la viabilidad y usabilidad. Ampliar la cantidad de información requiere un estudio de infraestructura más específico (probablemente en la nube).

  • De ripe.net vamos a indexar ripe.db.inetnum.gz para intentar simular (parcialmente) la funcionalidad de búsquedas de texto en la base de datos RIPE (https://apps.db.ripe.net/search/full-text.html).
  • De scans.io nos vamos a centrar en el escaneo del puerto 80 para IPv4 y dado que contiene más de 67 millones de direcciones IP, vamos a acotarlo a los primeros 5 millones de ellos.
  • De commoncrawl.org vamos a utilizar solo unos 100.000 documentos (de sus más de 1.81 billones de páginas). Será suficiente para realizar búsquedas sencillas y comprobar qué tipo de resultados se podrían obtener.
  • De MaxMind.com vamos a utilizar GeoLiteCity en su formato binario, para poder relacionar direcciones IP con su geo localización aproximada.
Bien, ahora que tenemos una pequeña base de información para trabajar, utilizaremos la pila ELK en sus funciones más básicas para indexar y trabajar con la información obtenida. Pero antes veamos a grandes rasgos cuales son los componentes de la pila ELK.


El troyano DYRE apunta a España


Aunque apenas tiene unos meses de antigüedad, el troyano DYRE (también conocido como Dyreza) es el malware bancario más activo del momento. A las agresivas características que incorpora el binario, se suma un gang bastante proactivo que desde principios de año ha trabajado para incrementar su infraestructura y capacidad de monetización. Los avances se han notado en dos frentes bien definidos

  • Ampliar el área geográfica de la botnet. La dispersión del binario se realiza mediante campañas de spam con adjuntos maliciosos. En un principio estas se limitaban a países anglosajones, pero han ido ampliando su alcance. 
  • Incorporación de nuevas entidades bancarias: la configuración de DYRE se realiza mediante el habitual fichero que lista los bancos donde el troyano debe actuar. Según se ha ido ampliando el área de influencia de la botnet, la lista de entidades también ha experimentado un incremento, como se puede observar en la siguiente gráfica



En esta dinámica de crecimiento solo era cuestión de tiempo que España, hasta ahora al margen de la campaña, entrase en la lista. En la última versión del fichero configuración, distribuida hace escasos días, se observa como por primera vez se han incluido al menos cinco entidades bancarias españolas, así como otras de Colombia, Chile y Venezuela. 

Los países que actualmente están en el punto de mira de los delincuentes se reflejan en este mapa (Click para ver el GIF animado:




Si bien su forma de actuar es similar al archiconocido Zeus, DYRE presenta algunos enfoques interesantes del proceso del fraude que merecen ser analizados en un próximo post :)

S21sec ecrime

(+34 902 222 521)


24 horas / 7 días a la semana



© Copyright S21sec 2013 - Todos los derechos reservados


login