jueves, 13 de septiembre de 2012

La Máquina Enigma

Vamos ahora al año 1918 en el que el inventor alemán Arthur Scherbius y su íntimo amigo Richard Ritter fundaron la compañía Scherbius y Ritter, una innovadora empresa de ingeniería que englobaba todo, desde turbinas hasta almohadas eléctricas. Uno de los proyectos de Scherbius era sustituir los inadecuados sistemas de criptografía empleados en la Primera Guerra Mundial. En lugar de utilizar lápiz y papel había que sacar partido a la tecnología de la época, y con esa idea desarrolló la máquina Enigma. 


Arthur Scherbius



Chiffriermaschinen Aktien Gesellschaft


Fue una obra maestra de la ingeniería. Es casi imposible explicarla por completo, pero sí se puede tener una idea de su funcionamiento. Básicamente, tenemos un teclado para escribir el texto que queremos cifrar, una unidad modificadora y un tablero expositor para mostrar el resultado de la codificación. La parte más interesante es esa unidad modificadora. En la figura siguiente vemos una de las ruedas que la componían pero con un alfabeto de seis letras para simplificar el dibujo (en minúsculas, el texto sin cifrar; en mayúsculas, el texto cifrado): 



Para codificar el texto plano, el operador pulsa una letra y el el grueso disco de goma plagado de cables hace una función que la transforma antes de salir en el tablero. En este caso, el mensaje “café” sería codificado como “DBCE”. Si fuera sólo así, tendríamos una codificación de sustitución y ya sabemos cómo descifrarla. 

La idea de Scherbius era que cada vez que se codificara una letra, esa rueda girase un sexto de vuelta (un veintiseisavo de revolución para un alfabeto completo de 26 letras). Al dar ese sexto de vuelta, la codificación de la siguiente letra será diferente y no la que tenía al principio. En nuestro caso, la primera vez que codificáramos la b obtendríamos la A, pero justo después, el modificador gira y si volvemos a codificar la b obtendremos la C; y la siguiente vez obtendremos la E (observar los cables que las unen). 



Problema: a la que se hayan puesto 6 letras, el ciclo vuelve a empezar y volvemos a tener la posición inicial. Tenemos un cifrado de Vigenère con una clave de 6 letras (en el caso real de 26 letras): una clave demasiado pequeña. 

Para resolver este problema, Scherbius puso un segundo disco modificador de modo que, cuando el primer disco daba una vuelta completa, el segundo giraba una posición. Aquí os muestro dos posiciones con dos modificadores en que el segundo modificador está en la misma posición, pero la del primero ha cambiado: 



Ahora, en lugar de tener 6 posibles cambios de letra, tenemos 6*6=36 cambios. Recuerdo que el 6 era a modo simple y para simplificar; en realidad, hemos pasado a una clave de 26 a 26*26=676 posiciones. No contento con ello, Scherbius añadió un tercer modificador: cuando el segundo disco había dado una vuelta, el tercero avanzaba una posición. Así que tenemos 26*26*26=17.576 disposiciones diferentes de los modificadores, o sea, un cifrado de Vigenère con una clave de longitud 17.576. 

Y fijaos en la gracia de la máquina: no sólo tenemos un buen cifrado sino que, además, la clave va en función de la posición inicial de los tres rotores; si variamos la posición inicial de los rotores el cifrado es totalmente diferente. Aunque descubriéramos la posición inicial un día, podían cambiarla al día siguiente y volveríamos a estar en el mismo problema. 

Por fin, hay un añadido más que es el Reflector (ahora explico su utilidad) antes de llegar al tablero. 



Para codificar un mensaje, necesitábamos un operador con una máquina Enigma que lo introducía y cada vez que pulsaba una letra los discos se movían y daba el mensaje cifrado en el tablero. 

Posteriormente, el mensaje cifrado ilegible para el enemigo llegaba al destino donde tenían otra máquina Enigma esperando con los rotores puestos en la misma posición de partida que la máquina que lo generó. Acto seguido, se introducía el mensaje cifrado y, gracias al reflector, reproducía el mensaje original. ¿No os parece un invento fantástico? 

Lo potente de esta máquina es que, aunque el enemigo fuera capaz de tener una, no podía hacer nada sin conocer las posiciones iniciales de los modificadores. Si alguien interceptaba un mensaje y tenía una Enigma, tenía que ir probando alguna de las 17.576 posiciones iniciales de los modificadores y ver si salía algún mensaje inteligible; si no, probar una segunda y así sucesivamente. Si el descifrador pudiera probar una combinación por minuto y trabajar día y noche le llevaría dos semanas averiguar el mensaje. ¿Imposible de descifrar en un tiempo aceptable? 

Aun así, Scherbius no quedó satisfecho. Podría haber añadido más modificadores, ya que cada uno de ellos aumentaba la dificultad multiplicando por 26, pero esto hubiera agrandado el tamaño de la máquina. Así que añadió dos nuevos rasgos. El primero fue que los modificadores fueran intercambiables, es decir, que podía poner, por ejemplo, el tercer rotor en primer lugar, el segundo en tercer lugar, etc. Hay seis maneras de poner tres modificadores, de manera que el número de claves aumenta. El segundo rasgo fue la introducción de un clavijero que podía intercambiar letras en grupos de 6. 

Resumiendo: tenemos 26*26*26=17.576 posibles combinaciones de los tres modificadores y si añadimos las 6 formas de poder poner los modificadores y el clavijero con el que podemos intercambiar 6 pares de letras entre 26 posibles tenemos del orden de billones de claves posibles. 

Ya habréis notado que la parte que más contribuye al número de claves es el clavijero. ¿Por qué no poner simplemente un clavijero? Pues porque, por sí mismo, hace de sustitución monoalfabética y mediante un análisis de frecuencia sería cazado rápidamente; pero combinando dicho clavijero con los modificadores, los análisis de frecuencia no nos sirven. 

Scherbius obtuvo una patente en 1918. Los alemanes concluyeron que era la mejor solución para sus comunicaciones. A partir de 1925 y durante las dos décadas siguientes, el ejército alemán compró más de 30.000 máquinas Enigma, lo que les proporcionó el sistema de cifrado más seguro del mundo. Al estallar la Segunda Guerra Mundial sus comunicaciones estaban protegidas por un nivel de codificación sin precedentes. 



El talón de Aquiles era que acabaran descubriendo la clave, así que los alemanes optaron por cambiarla cada día. Los aliados, por tanto, tenían un día para averiguarla. Al empezar el día siguiente, vuelta a empezar de cero. Por supuesto, las claves de cada día tenían que ser conocidas tanto por emisor como por receptor. Para ello, tenían un libro de códigos que decía las diferentes posiciones iniciales de los modificadores así como los cambios de pares de letras del clavijero. 

Y por si todo ello no fuera suficiente, tomaron la precaución de transmitir una nueva clave para cada mensaje. O sea, aprovechando la clave del día se transmitían una nueva clave. Imaginemos, por ejemplo, que la clave del día de los modificadores era QCW. Pues utilizando esa posición se transmitían PGHPGH (lo hacían dos veces para asegurarse que se recibía correctamente la nueva clave) y el receptor recibía, por ejemplo KIVBJE (recuerdo que las letras cambiaban a cada pulsación). En ese momento, ambos cambiaban los modificadores a la nueva posición PGH y empezaba el mensaje cifrado real. 

Tal y como los franceses dieron la batalla del desciframiento por perdida, los polacos no. Su Biuro Szyfrów organizó un curso de criptografía e invitó a 20 matemáticos que sabían hablar alemán. Les tomaron juramento y escogieron a tres de ellos por sus aptitudes. El que más destacó fue un joven de 23 años llamado Marian Rejewski. Era tímido, con gafas pero trabajando totalmente solo, con una Enigma en sus manos y con la información que os he dado fue capaz de descifrar los mensajes de los alemanes. 

¿Que cómo hizo eso? 


Descifrando Enigma 

Mientras países como Francia, Inglaterra, Estados Unidos, etc. se resignaron asumiendo que Enigma era inviolable Polonia continuo investigando como descifrar los mensajes de Enigma ya que estaban seguros de que seria vital en la guerra que se avecinaba. Enseguida se dieron cuenta de que las maquinas Enigma que utilizaban los alemanes no eran versiones comerciales sino que tenían el cableado cambiado. El organismo polaco encargado de estos temas era el Biuro Szyfrow. 


Biuro Szyfrow


Gracias a un alemán Hans-Thilo Schmidt que participó en la I Guerra Mundial y más tarde fue expulsado debido a los recortes presupuestarios, los polacos pudieron conseguir los planos de la máquina enigma que utilizaban los militares alemanes. Hans-Thilo Schmidt le pidió trabajo a su hermano, que trabajaba en el organismo alemán encargado de las comunicaciones cifradas. Schmidt, que estaba resentido con el gobierno de su país, no tardó en vender información secreta a cambio de dinero a otros países. 

Se construyeron réplicas de las Enigmas alemanas y se empezaron a guardar el mayor número de mensajes alemanes posible. Marian Rejewski, que trabajaba en el Biuro Szyfrow, fue el encargado de estudiar el diseño de las Enigmas alemanas y intentar descifrar las comunicaciones a partir de los mensajes captados. 



Marian Rejewski


Marian Rejewski hizo un gran descubrimiento, sabía que cuando se enviaba un mensaje se pasaba primero la secuencia de los rotores con la configuración inicial (puestos a cero). Esta secuencia se pasaba por duplicado. Rejewski hizo un catálogo con todas las posibles configuraciones de los rotores (105.456), tardo un año. 

* Si en un día podían elaborar una tabla de correspondencias suficientemente grande, podrían identificar la secuencia de los rotores en el catálogo que Rejewski había hecho. 

Ejemplo: 


+ Mensaje 1: BJGTDN 
+ Mensaje 2: LIFBAB 

+ Mensaje 3: ETULZR 
+ Mensaje 4: TFREII 
+ Deducimos que(con la configuración inicial del rotor, rotores puestos a cero): 



# B->(+ 3 movs. rotor)->T 

# L->(+ 3 movs. rotor)->B 

# E->(+ 3 movs. rotor)->L 
# T->(+ 3 movs. rotor)->E 





Más tarde Rejewski se dio cuenta que los alemanes añadían pequeñas modificaciones y esto conllevaba a hacer catálogos nuevos. Esto significaba que mientras se hacía un catálogo nuevo (se tardó un año en hacer uno) no se podía descifrar ningún mensaje. 

Rejewski mecanizó la forma de encontrar la secuencia de rotores. Básicamente como sabía que había 6 maneras distintas de colocar los rotores en los huecos, puso a trabajar a 6 adaptaciones de la máquina enigma en paralelo. Este nuevo invento detectaba la secuencia de los rotores en unas 2 horas. Unos dicen que a este ingenio se le conoció con el nombre de bomba por el ruido que hacía la máquina cuando estaba trabajando tic-tac y otros a que a Rejewski se le ocurrió mientras comía una bomba, un helado típico con forma de esfera. 

A principios del 1.939 los alemanes introdujeron nuevas modificaciones a la máquina de forma que echaron abajo la capacidad polaca de descifrar mensajes. Introdujeron más clavijas par intercambiar letras y pusieron más rotores, todo esto elevaba las posibles combinaciones muchísimo. 

El jefe del Biuro Szyfrow decidió que todo el trabajo que se había hecho no debía perderse, llamó a los servicios secretos de Francia y Inglaterra, una semana antes de que empezara la guerra, para mostrarles los descubrimientos que había hecho y enseñarles la "bomba" (la máquina que diseñó Rejewski). Ingleses y franceses se quedaron sorprendidos pues habían asumido la inviolabilidad de Enigma. 


Bomba de Turing


Los ingleses continuaron con el trabajo de los polacos en Bletchley Park y conseguian descifrar los mensajes alemanes. 


Bletchley Park


El gobierno ingles llamó a un prestigioso matemático, Alan Turing, y le "invitó amablemente" a ir a Bletchley Park en vez de ponerlo a trabajar descifrando a diario fue puesto a "pensar". Los ingleses sabían que cuando los alemanes se dieran cuenta dejarían de mandar dos veces la secuencia de los rotores y entonces ellos no podrían descifrar el código. 

Turing consiguió idear una forma de descifrar el código sin utilizar la repetición de la secuencia de rotores que se enviaba al principio del mensaje. Descifraba el código sabiendo que tipo de mensajes enviaban, por ejemplo por la mañana a las 6 se mandaba un parte meteorológico en el que iria la palabra "wetter" (tiempo en alemán) entonces la máquina buscaba posibles combinaciones para descifrar el mensaje. A esta máquina la llamaron "bomba" en honor a la primera máquina polaca. 

La primera máquina de Turing podía llegar a tardar una semana en descifrar el código, entonces ideó otra más eficiente. En poco tiempo había más de 15 "bombas" descifrando mensajes alemanes. Más tarde llego "Colosus", Sir Thomas Flowers fue el creador de esta máquina, utilizando tecnología que había desarrollado mientras fue empleado de la British Telephone Establishment. 


Sir Thomas Flowers



Máquina Colossus


El diseño de Colosus comenzó en Marzo de 1.943 y en Diciembre del mismo año la máquina estaba terminada y programada. Al finalizar la guerra el gobierno clasificó la Colosus bajo la Ley de Secretos Oficiales de Inglaterra, su existencia no fue conocida hasta finales de la década de 1.970 por lo que se conoce a ENIAC como la primera máquina electrónica programable. 

jueves, 6 de septiembre de 2012

CLOUD COMPUTING




El llamado cloud computing es el término que se le da a la tendencia de basar las aplicaciones en servicios alojados de forma externa, en la propia web.

Dicho de otra forma, los datos y relaciones en este esquema no están en nuestros equipos ni dependen del sistema operativo de los mismos, sino en la red (the cloud, en la nube).

El Cloud computing permite al usuario acceder a un catálogo de servicios estandarizados y responder a las necesidades de su negocio, de forma flexible y adaptativa, en caso de demandas no previsibles o de picos de trabajo, pagando únicamente por el consumo efectuado.

Este concepto incorpora el software como servicio, como en la Web 2.0 y otras tendencias tecnológicas recientes, que tienen en común el que confían en Internet para satisfacer las necesidades de cómputo de los usuarios.


Tipos de Cloud
Cuando hablamos de Cloud Computing, debemos reconocer los diferentes tipos de Cloud que existen:
Cloud Privada:  Infraestructura on-demand implementada y administrada exclusivamente por la organización, que controla que servicios ofrecer .  Una Cloud Privada es una la mejor opción para las compañías que necesitan una alta protección de datos y asegurar el acceso continuo a los servicios sin la dependencia del acceso a Internet. 
Cloud Pública: Infraestructura on-demand implementada de manera que puede ser accedida de manera pública y desde internet.     
Generalmente ofrecida por empresas de comunicación y datacenter.
Servicios accedidos de manera estándar desde internet.


Muchos clientes diferentes pueden estar utilizando los mismos servidores, sistemas de almacenamiento, infraestructura de red, etc., sin que los usuarios finales tengan conciencia de que están compartiendo la infraestructura con otros clientes.
Cloud Hibrida: En una Cloud Hibrida se combinan los modelos de nubes públicas y privadas, donde el cliente es propietario de una parte de la infraestructura, mientras comparte otra.  Este modelo de Cloud es el que en teoría sería el más atractivo para las organizaciones y el que más se desarrollara con el tiempo.  Una Cloud hibrida trabaja bajo el concepto de federación y portabilidad.


Capas de Cloud Computing

Así como existen distintos tipos de Cloud, una Cloud puede estar a su vez subdividida en las siguientes capas
Software como servicio (SaaS).  Es la capa más alta del Cloud Computing.  Se ofrece directamente el software como servicio on-demand y en modalidad multitenance (una sola instancia del software que corre en la infraestructura y sirve a múltiples organizaciones de clientes), sin tener que preocuparnos de la plataforma donde se encuentra desarrollado, o la infraestructura desde donde el Software se ejecuta. Ejemplo, Google docs, Salesforce.com, Microsoft Office 365
Plataforma como servicio (PaaS). Es la segunda capa del Cloud Computing, donde se ofrece directamente un sistema operativo y un entorno donde desarrollar un servicio.  Cuando se habla de PaaS se refiere a una plataforma  que proporciona un conjunto de facilidades y herramientas para soportar un ciclo completo de desarrollo de un determinado software, incluyendo el hosting del producto resultante. Entre esas herramientas están IDEs, bases de datos, servidores de aplicaciones, gestores de fuentes, integración continua, software de trabajo colaborativo, etc.  Ejemplo, Microsoft Azure, Google App Engine, VMware Cloud Foundry.
Infraestructura como servicio (IaaS). Es la capa inferior del Cloud Computing, donde básicamente se ofrecen los recursos de almacenamiento CPU, memoria y red para que podamos instalar el sistema operativo de nuestra elección, y desarrollemos en el Framework que deseemos.  Ejemplo, vCloud Express de VMware, Amazon Web Services

Beneficios
- Integración probada de servicios Web. Por su naturaleza, la tecnología de Cloud Computing se puede integrar con mucha mayor facilidad y rapidez con el resto de sus aplicaciones empresariales (tanto software tradicional como Cloud Computing basado en infraestructuras), ya sean desarrolladas de manera interna o externa.
- Prestación de servicios a nivel mundial. Las infraestructuras de Cloud Computing proporcionan mayor capacidad de adaptación, recuperación de desastres completa y reducción al mínimo de los tiempos de inactividad.
- Una infraestructura 100% de Cloud Computing no necesita instalar ningún tipo de hardware. La belleza de la tecnología de Cloud Computing es su simplicidad... y el hecho de que requiera mucha menor inversión para empezar a trabajar.
- Implementación más rápida y con menos riesgos. Podrá empezar a trabajar muy rápidamente gracias a una infraestructura de Cloud Computing. No tendrá que volver a esperar meses o años e invertir grandes cantidades de dinero antes de que un usuario inicie sesión en su nueva solución. Sus aplicaciones en tecnología de Cloud Computing estarán disponibles en cuestión de semanas o meses, incluso con un nivel considerable de personalización o integración.

- Actualizaciones automáticas que no afectan negativamente a los recursos de TI. Si actualizamos a la última versión de la aplicación, nos veremos obligados a dedicar tiempo y recursos (que no tenemos) a volver a crear nuestras personalizaciones e integraciones. La tecnología de Cloud Computing no le obliga a decidir entre actualizar y conservar su trabajo, porque esas personalizaciones e integraciones se conservan automáticamente durante la actualización.

- Contribuye al uso eficiente de la energía. En este caso, a la energía requerida para el funcionamiento de la infraestructura. En los datacenters tradicionales, los servidores consumen mucha más energía de la requerida realmente. En cambio, en las nubes, la energía consumida es sólo la necesaria, reduciendo notablemente el desperdicio. 

Mas información:



jueves, 23 de agosto de 2012

FIEL & FACTURACIÓN ELECTRÓNICA


QUÉ ES Y PARA QUÉ SIRVE LA FIRMA ELECTRÓNICA AVANZADA

La Firma Electrónica Avanzada "Fiel" es un conjunto de datos que se adjuntan a un mensaje electrónico, cuyo propósito es identificar al emisor del mensaje como autor legítimo de éste, tal y como si se tratara de una firma autógrafa.

Por sus características, la Fiel brinda seguridad a las transacciones electrónicas de los contribuyentes, con su uso se puede identificar al autor del mensaje y verificar no haya sido modificado.
Su diseño se basa en estándares internacionales de infraestructura de claves públicas (o PKI por sus siglas en inglés: Public Key Infrastructure) en donde se utilizan dos claves o llaves para el envío de mensajes:
La "llave o clave privada" que únicamente es conocida por el titular de la Fiel, que sirve para cifrar datos; y
La "llave o clave pública", disponible en Internet para consulta de todos los usuarios de servicios electrónicos, con la que se descifran datos. En términos computacionales es imposible descifrar un mensaje utilizando una llave que no corresponda.

Una infraestructura confiable para la utilización de firma electrónica parte de la utilización de la criptografía, es decir, el proceso de convertir texto inteligible en texto ininteligible o cifrado, y viceversa (particularmente criptografía asimétrica)

• En criptografía asimétrica se utilizan dos claves una púbica conocida por todos, y una privada, conocida solo por la persona a la que le pertenece, también se les denomina “llave pública” y “llave privada”, esta última sirve para producir la firma electrónica

• La vinculación de “Clave o llave Pública” con el usuario es importante, quien  autentique documentos supuestamente firmados por él debe de tener plena  certeza de su vinculación con su “Clave o llave Pública”

•Esto se resuelve mediante el certificado digital éste es un documento digital se resuelve mediante el certificado digital, éste es un documento digital firmado electrónicamente por un ente en quien todos confiamos denominado  Autoridad Certificadora (AC).  Mediante el certificado digital del usuario la Autoridad Certificadora “da fe” de que está vinculado a su Clave o llave  Pública

• En el certificado digital consta la llave Pública del usuario, incluye los  datos generales del mismo, los del emisor y datos adicionales como  las características relativas su creación, su vigencia, número de serie,  sello de tiempo e de tiempo, entre otros

• Además de la llave pública, por ser un proceso criptográfico asimétrico  existe una llave privada para el usuario, la cual sólo es de su  conocimiento y debe permanecer a su vez encriptado o protegida de  alguna  manera contra su alteración

• Las claves o llaves Pública y Privada están relacionadas  matemáticamente de tal forma que, lo firmado con la Privada se puede verificar con la Pública

• La seguridad de esta tecnología (criptografía asimétrica), se basa en el  hecho de que no es posible deducir la clave o llave Privada a partir de  conocer la Pública






 Factura electrónica

La factura electrónica es un tipo de factura que se diferencia de la factura en papel por la forma de gestión informática y el envío mediante un sistema de comunicaciones que conjuntamente permiten garantizar la autenticidad y la integridad del documento electrónico.

Una factura electrónica se construye en 2 fases:

Se crea la factura tal y como se ha hecho siempre y se almacena en un archivo de datos.
Posteriormente se procede a su firma con un certificado digital o electrónico propiedad del emisor que cifra el contenido de factura y añade el sello digital a la misma

Al terminar obtenemos una factura que nos garantiza: que la persona física o jurídica que firmó la factura es quien dice ser (autenticidad) y que el contenido de la factura no ha sido alterado (integridad).

El emisor envía la factura al receptor mediante medios electrónicos, como pueden ser CDs, memorias Flash e incluso Internet. Si bien se dedican muchos esfuerzos para unificar los formatos de factura electrónica, actualmente está sometida a distintas normativas y tiene diferentes requisitos legales exigidos por las autoridades tributarias de cada país, de forma que no siempre es posible el uso de la factura electrónica, especialmente en las relaciones con empresas extranjeras que tienen normativas distintas a la del propio país.

Los requisitos legales respecto al contenido mercantil de las facturas electrónicas son exactamente las mismas que regulan las tradicionales facturas en papel. Los requisitos legales en relación con la forma imponen determinado tratamiento en aras de garantizar la integridad y la autenticidad y ciertos formatos que faciliten la interoperabilidad.

Existen algunas normativas internacionales aplicables de forma general a la factura electrónica, aunque las Naciones Unidas, a través de UN/CEFACT han publicado recomendaciones tales como UNeDocs que definen plantillas para las facturas impresas y formatos EDI y XML para las modalidades electrónicas. En Europa, la facturación electrónica se regula en la Directiva 115/2001, que debía ser adoptada en cada país antes del 31 de diciembre de 2003.

Hoy día la organización GS1 (antes EAN/UCC) a nivel mundial ha organizado comités internacionales de usuarios de 108 países miembro, para conformar las guías de facturación electrónica estándar a nivel mundial.

La factura electrónica permite que instituciones, empresas y profesionales dejen atrás las facturas en papel y las reemplacen por la versión electrónica del documento tributario. Tiene exactamente la misma validez y funcionalidad tributaria que la factura tradicional en papel. Todo el ciclo de la facturación puede ser administrado en forma electrónica.





viernes, 17 de agosto de 2012

Stuxnet & Duqu


Stuxnet & Duqu

Stuxnet 

Es un gusano informático que afecta a equipos con Windows, descubierto en junio de 2010 por VirusBlokAda, una empresa de seguridad radicada en Bielorrusia. Es el primer gusano conocido que espía y reprograma sistemas industriales, en concreto sistemas SCADA de control y monitorización de procesos, pudiendo afectar a infraestructuras críticas como centrales nucleares.

Stuxnet es capaz de reprogramar controladores lógicos programables y ocultar los cambios realizados. También es el primer gusano conocido que incluye un rootkit para sistemas reprogramables PLC.

La compañía europea de seguridad digital Kaspersky Labs describía a Stuxnet en una nota de prensa como "un prototipo funcional y aterrador de un arma cibernética que conducirá a la creación de una nueva carrera armamentística mundial". Kevin Hogan, un ejecutivo de Symantec, advirtió que el 60% de los ordenadores contaminados por el gusano se encuentran en Irán, sugiriendo que sus instalaciones industriales podrían ser su objetivo. Kaspersky concluye que los ataques sólo pudieron producirse "con el apoyo de una nación soberana", convirtiendo a Irán en el primer objetivo de una guerra cibernética real.

El objetivo más probable del gusano, según corroboran medios como BBC o el Daily Telegraph, pudieron ser infraestructuras de alto valor pertenecientes a Irán y con sistemas de control de Siemens. Medios como India Times apuntan que el ataque pudo haber retrasado la puesta en marcha de la planta nuclear de Bushehr.4eeee Fuentes iraníes han calificado el ataque como "guerra electrónica" aunque minimizan el impacto de los daños en sus instalaciones. Algunos medios como el norteamericano New York Times han atribuido su autoría a los servicios secretos estadounidenses e israelíes. 

Cómo funciona

Stuxnet busca sistemas de control industriales y luego modifica el código en ellos para permitir que los atacantes tomen control de los sistemas sin que los operadores lo noten. En otras palabras, esta amenaza está diseñada para permitir a los hackers manipular equipamiento físico, lo cual lo hace extremadamente peligroso.

Esta amenaza no es parecida a nada de lo visto anteriormente, no sólo en lo que hace, sino en cómo se descubrió. Es el primer virus informático que permite hacer daño en el mundo físico. Es sofisticado, requirió importantes fondos económicos para ser desarrollado y no existen en la actualidad muchos grupos que puedan desarrollar una amenaza de este tipo. Es también el primer ataque cibernético que hemos visto que ataca específicamente a sistemas de control industrial.

El gusano esta hecho de un complejo código que requiere de muchas y diferentes habilidades para juntarlos. Los expertos de Symantec estiman que tomó entre cinco y diez personas durante seis meses para armar este proyecto además de que los involucrados deben tener conocimiento de los sistemas de control industrial y acceso a dichos sistemas para realizar pruebas de calidad; una vez más indicando que esto fue un proyecto con mucha organización y fondos disponibles.

“Realmente nunca hemos visto algo así antes y el hecho de que pueda controlar el funcionamiento de una maquinaria física es inquietante”, comentó Liam O’Murchu, investigador de Symantec Security Response.

Stuxnet fue la primera ciberarma dirigida al sector industrial. El hecho de que comenzara a infectar PCs  en todo el mundo condujo a su descubrimiento en junio de 2010, aunque la versión más antigua conocida de este programa malicioso fue creada un año antes. El siguiente ejemplo de ciberarma es Duqu y fue descubierto en septiembre de 2011. A diferencia de Stuxnet, la tarea principal del troyano Duqu era convertirse en  puerta trasera del sistema infectado y robar información privada (ciberespionaje).

Durante el análisis de Duqu, se descubrieron grandes similitudes con Stuxnet, que revelaron que los dos han utilizado la misma plataforma de ataque, conocida como la "Plataforma Tilded". El nombre procede de las preferencias de los desarrolladores de malware para nombres de archivo "~ * d *." - por lo tanto, "Tilde-d". El malware Flame era, a primera vista, completamente diferente. Algunas funciones, como el tamaño del programa malicioso, el uso de lenguaje de programación Lua y su funcionalidad indicaban en un primer momento que Flame no estaba conectado a los creadores de Duqu o Stuxnet. Sin embargo, la nueva investigación ha hecho que se reescriba la historia de Stuxnet para poder demostrar sin lugar a dudas, que el "Tilded" es la plataforma de ataque conectada a la plataforma de Flame. 


Duqu

El troyano Duqu ha traído de cabeza a varias compañías de seguridad dado que podría ser muy peligroso, algunos lo denominan Stuxnet 2.0. Un grupo de programadores y analistas de seguridad han conseguido descifrar el lenguaje de programación del mismo, lo que permitirá crear técnicas que permitan el control del mismo y evitar su expansión. 

Este malware es una variante del arma cibernética destinada a retrasar la capacidad de Irán para fabricar bombas nucleares, Stuxnet. El anuncio de que el troyano Duqu estaba desarrollado en un lenguaje de programación ‘desconocido’ desató una tormenta de especulaciones entre expertos en malware y programadores de todo el mundo.

Después de aislar y analizar el troyano y tras la colaboración y sugerencias de centenares de programadores, los analistas de Kaspersky Lab dicen haber resuelto que el lenguaje no es nuevo aunque contaba con un alto grado de optimización y personalización, sin rastro de cualquier firma indicadora que pudiera dar pistas en el código de ensamblador que pudieran ser leídos como una huella digital. Así, Duqu estaría escrito en lenguaje ‘C’ y compilado con el Visual Studio 2008 de Microsoft, aunque incluiría una extensión personalizada conocida como “OO C” para combinar programación orientada a objetos con C.

Por el lenguaje empleado, los investigadores aseguran que Duqu fue escrito por un programador o equipo profesional de la ‘vieja escuela’ que no confían en compiladores como C++. Además, C, es altamente portable a otras plataformas, un plus para un troyano malicioso.

Es seguro que fue realizado ‘por encargo’ con equipos distintos para su creación e infección aunque se desconoce su país de origen y su objetivo concreto. Se sigue pensando que en origen estaba destinado a robar información de infraestructura crítica, tales como centrales eléctricas, refinerías y oleoductos, utilizando una red de miles de ordenadores infectados, aprovechando una vulnerabilidad en sistemas Windows.

El análisis del código de Duqu parece descartar como creían los investigadores relación con Stuxnet a pesar de sus coincidencias. Y es un alivio porque se considera a éste como “el arma cibernética más sofisticada jamás creada”, seguramente en Israel, para piratear, sabotear y retrasar la capacidad de Irán para fabricar bombas atómicas. Un virus que llegó a infectar miles de equipos en 155 países.

El equipo de Kaspersky Lab ha descubierto que Duqu (un nuevo programa que ataca la infraestructura de seguridad informática) tiene características parecidas al virus Stuxnet, la cual afectó a varias plantas industriales en Irán. Duqu tiene la capacidad de adecuarse a cada sistema que ataca, acción que puede ejecutar penetrando las barreras de seguridad para luego brindar todo el control a los ciber delincuentes.

Los ciber delincuentes se encuentran en la búsqueda constante de nuevas formas de vulnerar la seguridad informática. Y al parecer cada nuevo sistema de ataque es mejor que el anterior, ya que los últimos son más eficientes en la evasión de la detección por parte de los antivirus.

Duqu ha logrado infectar, principalmente, a países que cuentan con programas nucleares. Este nuevo malware brinda control remoto (no autorizado) a las personas que están detrás del ataque, permitiéndoles extraer (robar) toda la información existente en el sistema.

Duqu ha sido desarrollada para atacar cualquier tipo de infraestructura, demostrando el avance y desarrollo de las armas cibernéticas. Este malware cuenta con un sistema universal que le permite atacar y espiar cualquier estructura informática. Pero sus características  indican que ha sido creado, especialmente, para atacar los sistemás más importantes de cada país. “Es una especie de misil que es capaz de hacer llegar cualquier tipo de explosivo hacia cualquier tipo de objetivo” indicó Dmitry Bestuzhev, director del equipo de análisis e investigación global para América Latina.

El virus brinda una forma de acceso al sistema infectado, permitiendo, como ya se dijo, el robo de información de forma silenciosa. Información que en muchas ocasiones los ciber delincuentes usan para realizar actos de sabotaje.

Según Bestuzhev, América latina no está preparada para los ataques dirigidos de Duqu. El especialista considera que los cibercriminales que comandan el virus podrían infectar las estructuras de los gobiernos y las empresas, para lo cual recomienda que dichos sectores tomen medidas preventivas.

Primeros ataques

Kaspersky Security Network detectó cuatro ataques de infección, una de ellas ubicada en Sudán, mientras las otras tres fueron detectadas en Irán.

Los cuatro ataques de Duqu tenía una modificación propia de un controlador diferente, el cual fue usado para la infección. En una de las infecciones localizadas en Irán también se descubrieron dos ataques de red que explotaban la vulnerabilidad MS08-067. Stuxnet y otro programa nocivo más antiguo conocido con el nombre de Kido,

El malware aprovecha una flaqueza de día-0 en el kernel de Windows y relacionada con la fuente True Type para instalarse. Las investigaciones han demostrado que el primer ataque fue efectuado a través de un documento de Word, el cual fue enviado como archivo adjunto a través de un correo electrónico. Posteriormente, los elementos principales del Duqu se instalaron automáticamente cuando la víctima abrió el archivo.

Además, los estudios dieron a conocer que el virus es capaz de infectar los ordenadores que no están conectados a Internet, sino sólo a una red local.

“Duqu tiene la propagación a través de las redes corporativas y en particular las tareas programadas. Este hecho muestra que los que están detrás buscan conseguir acceso a las máquinas no de los usuarios finales, sino de las corporaciones, empresas y gobiernos. Los objetivos a infectar son cuidadosamente seleccionados y trabajados una vez que se llega a tener acceso a un equipo que sería el inicial”, explicó Bestuzhev.

Alexander Góstev, Jefe Experto en Seguridad en Kaspersky Lab, señaló: “A pesar de que los sistemas atacados por Duqu están en Irán, hasta el momento no hay evidencia de que sean sistemas industriales o relacionados con el programa nuclear de este país. Por lo tanto, es imposible afirmar que el blanco del nuevo programa malicioso es el mismo que el de Stuxnet. De todos modos, está claro que cada infección causada por Duqu es única. Esta información nos permite decir con seguridad que se está usando Duqu para lanzar ataques a objetos predeterminados”.

El equipo de Kaspersky Lab continúa investigando el Duqu y está vigilando la situación para poder anticipar la geografía de los blancos, lo cual aún no ha podido definirse debido a que el virus ha infectado a sistemas muy específicos en todo el mundo.

Características del Duqu:

- Cada una de sus modificaciones tiene controladores (drivers) diferentes.

- Se han encontrado evidencias de que  los ejemplares activos de este programa nocivo pueden modificarse dependiendo del objetivo específico que se pretende atacar.



viernes, 25 de mayo de 2012

NFS (NETWORK FILES SYSTEM)


NFS 
(NETWORK FILES SYSTEM) 
SISTEMA DE ARCHIVOS EN RED

•    Definición: NFS, también llamado Sistema de Archivos en Red, es uno de los servicios más complejos que se ofrecen usando RPC. Permite acceder a los archivos remotos exactamente igual que si fueran locales.   El acceso a los archivos es totalmente transparente al cliente, funcionando con muchas arquitecturas de servidores. El sistema de archivos en red proporciona a los usuarios la libertad de acceder a su información desde cualquier sistema en el que puedan ingresar y que tenga acceso a dichos recursos en red.

•    El RPC (Remote Procedure Call, Llamada a Procedimiento Remoto) es un protocolo que permite a un programa ejecutar código en una máquina remota sin tener que preocuparse por las comunicaciones entre ambos.

•       En Linux hay disponibles una variedad de sistemas de archivos en red. La más popular es NFS, el Network File System originalmente desarrollado por Sun Microsystems

•    El otro sistema de archivos en red más comúnmente usado es, el sistema de archivos SMB de Microsoft (SMB: Server Message Block: Bloque de Mensajes de Servidor).

•       que ha sido renombrado como CIFS (Common Internet File System: Sistema de Archivos Común de Internet)

•       SMB/CIFS funciona en Linux gracias a una suite de software para cliente y servidor llamada Samba.

•       Los clientes Samba posibilitan a los sistemas Linux exportar sus sistemas de archivos de forma que ordenadores ejecutando versiones diferentes de Microsoft Windows pueden montarlos y acceder a ellos.

VENTAJAS DE SISTEMAS DE ARCHIVOS DE RED vs LOS SISTEMAS DE ARCHIVOS LOCALES

•       Reducen el riesgo de que el fallo de una sola máquina te impida acceder a tus datos. La mayor parte de los sistemas de archivos en red te permiten ingresar en múltiples máquinas y acceder a tus datos exactamente de la misma forma en todas ellas.

•       Proporcionan ubicaciones centralizadas para los datos que deben o deberían estar compartidas entre todos los usuarios.

•       Proporcionan la oportunidad de centralizar operaciones administrativas, tales como la copia de seguridad de los datos.

•       Proporcionan interoperabilidad y flexibilidad. Normalmente puedes acceder a sistemas de ficheros en red desde ordenadores que ejecuten Linux, Windows, Mac OS X, etc. De esta forma es fácil utilizar el hardware y software más adecuado a tus requerimientos de escritorio, y aún así acceder a los mismos datos del entorno de sistema de archivos en red.

•       Un servidor NFS no se preocupa cuando uno de sus clientes se avería. El servidor continúa operando como antes de que el cliente se quedara inactivo. Cuando se estropea un servidor, los procesos clientes que utilizan los recursos del servidor esperarán hasta que el servidor pueda recuperarse.

VENTAJAS DE CONTAR CON UN NETWORK FILES SYSTEM EN UNA RED

•       Reduce los requerimientos de espacio de almacenamiento local ya que en toda la red puede existir una sola copia de un directorio la cual es completamente accesible a todo usuario de la red.

•       Simplifica el soporte centralizando tareas tales como la actualización de archivos.

•       Permite a los usuarios manipular archivos remotos con los comandos comunes de UNIX.

DESVENTAJAS DE CONTAR CON UN NETWORK FILES SYSTEM EN UNA RED

•       Si un directorio es exportado a los clientes con acceso tipo root, una persona que tenga supra privilegios puede modificar los archivos en el directorio raíz.

•       Si un directorio es exportado sin especificar una lista de acceso, cualquier sistema en la red puede acceder los archivos exportados.

MONTANDO NFS EN CentOS

NFS Y PORTMAP

•       NFS se apoya en las llamadas de procedimientos remotos (RPC) para funcionar.

•       Se requiere portmap para trazar las peticiones RPC a los servicios correctos.

•       Portmap proporciona la coordinación entre servicios RPC y los números de puertos usados para comunicarlos

CONFIGURANDO EL SERVIDOR

•       Primero de todo deberemos instalar los siguientes paquetes:
yum install nfs-utils-lib nfs-utils portmap -y

LEVANTAR EL SERVICIO PORTMAP

#  /etc/init.d/portmap  start
Starting portmap:                                                   [ OK ]

CONFIGURAR LA SEGURIDAD

  Para elevar el nivel de seguridad del servidor y el cliente deben configurarse los archivos :

/etc/hosts.allow
-          Donde se indicará que maquinas pueden acceder al servidor
     
 -  /etc/hosts.deny   
                  -     Donde se indicará cuáles no.

•       Una vez realizado esto se debe reiniciar el demonio portmap
/sbin/service portmap restart

COMPARTIENDO UN VOLUMEN

•       Se creará una carpeta o directorio el cuál será el directorio que se exportará para que los clientes accedan a el, ejemplos: /home/compartir o /var/nfs/publico, etc.

•   Además debe agregarse este directorio en el archivo /etc/exports el cuál contiene todos los directorios exportados, los permisos y maquinas que pueden acceder a ese directorio.

•       Luego de esto se deberá reiniciar o iniciar, cuál sea el caso, el servicio NFS:
/sbin/service nfs start
/sbin/service nfs restart


CONFIGURANDO EL CLIENTE

•       En la maquina cliente deben configurarse los mismos archivos excepto el archivo exports.
hosts.allow y hosts.deny

•       Deberá crearse un punto de montaje donde se colgará el directorio exportado o compartido por el servidor, ejemplo:
mkdir /home/compartidos

•       Ahora ya que el cliente y servidor están en la misma red se escribirán los siguientes comandos para montar el servidor:
showmount –e <dir_ip>
 //muestra el directorio exportado por el servidor
                  mount <dir_ip>:/directorio/exportado/  /punto/montaje

•       Para verificar que se haya logrado el montaje verificamos que la maquina cliente pueda observar los mismos archivos que la maquina servidor contiene

•       Para mayor información se pueden consultar las siguientes paginas:

•     Conectividad con sistemas de ficheros pre-Mac OS X de Apple a través de las utilidades de Linux llamadas netatalk y afpfs