sábado, noviembre 29, 2014

Recuerdos: Minas de Santa Catalina

Finales de septiembre, La Antilla. Después de comer, decidimos ir a darnos una vuelta a Portugal,a Vila Real de Santo António. Tras incorporarnos a la autopista, se me ocurre, ¿por qué no subimos a Santa Catalina?. La Mina como nos gusta llamarla en mi familia. Sino me fallaba la memoria, debía hacer tres o cuatro años que no iba por la zona. Total, que nos animamos, salimos de la autopista dirección Villablanca, continuando hacia San Silvestre. Una vez que dejas la zona de la costa, pasando Villablanca entras en esa zona de la provincia de Huelva que es el Andévalo: Tierra de minas, dehesas donde se engorda al cerdo ibérico, poca agricultura - la tierra da para lo que da -, actividad cinegética, ... Mientras voy en el coche, me vienen imágenes de aquella carretera veinticinco años atrás y como ha cambiado todo esta última década.

Llegando a San Silvestre de Guzmán, decido ir por la carretera que lleva a Sanlúcar del Guadiana, para continuar hacía El Granado y de allí a Santa Catalina. La carretera de buen asfalto, pero llena de curvas, transcurre por dehesas de encinas, con poquísimo tráfico. Disfruto de un paisaje que hacía unos años que no veía. Una vez en el Granado, cojo la antigua carretera que lleva a la Mina. La construcción del Puente sobre el río Chanza uniendo el Granado con la localidad portuguesa de Pomarão hizo que arreglaran la carretera. Nada que ver con el camino mal asfaltado que era antes.

El pequeño caserío de Santa Catalina - cuarteles - está situado sobre la antigua mina de manganeso, en la falda de una colina. Todavía se puede trepar un poco, hasta el punto más alto desde donde se disfruta de una vista maravillosa de la zona, pudiéndose distinguir el castillo de Sanlúcar del Guadiana, el propio río encajonado entre las colinas o el pequeño pueblo de Mesquita en Portugal, un paisaje que a mi me trae gratos recuerdos de mi niñez. Estuve un rato sentado en lo alto de las peñas, disfrutando del paisaje, la luz del atardecer y el sonido de la berrea

Aproveché el rato para hacer algunas fotos de la zona que os dejo


El viejo eucalipto. Su tronco central lo talaron hace bastantes años, pero volvió a crecer. Justo cuando la carretera desde el Granado baja hacía el cruce del Puerto de La Laja se distingue. Es una imagen que tengo grabada de mi niñez, como buscarlo cuando iba a visitar a mis abuelos.


El Guadiana, escondido entre colinas.


Atardece en el Andévalo


Los cuarteles

Esta última foto es para mi especial. Está tomada desde lo alto de la colina, el lugar a donde mi padre le gustaba subir de niño. No puedo dejar de pensar en lo que tenía que ser allí la vida durante la década de los cincuenta. El mineral se llevaba desde allí en mulas hasta el Puerto de la Laja. El pueblo más cercano, el Granado, a siete kilómetros por un camino de mulas. Huertos y pozo para abastecerse. Ni electricidad ni agua potable, ...

Ya de vuelta a La Antilla, mientras que el eucalipto se escondía entre las colinas caía en la cuenta del día que era, el aniversario del fallecimiento de mi abuelo cuyas cenizas reposan en el cercano caserío de Cañaveral. Casualidades.

martes, noviembre 25, 2014

Regin: ICMP cover channel

Una de las cosas que más me llamó ayer la atención sobre Regin cuando leía ayer el informe de Symantec fue los métodos de comunicación que usaba para conectarse con su red de comando y control, específicamente el uso de ICMP. ¿En seis años nadie había detectado ninguna anomalía de tráfico de este tipo?. Si uno se va al análisis, a la página que habla sobre el control del troyano, vemos que tiene varias formas de comunicarse con su centro de control

  • ICMP: Payload information can be encoded and embedded in lieu of legitimate ICMP/ping data. The string ‘shit’ is scattered in the packet for data validation. In addition, CRC checks use the seed ‘31337’.
  • UDP: Raw UDP payload.
  • TCP: Raw TCP payload.
  • HTTP: Payload information can be encoded and embedded within cookie data under the names SESSID, SMSWAP, TW, WINKER, TIMESET, LASTVISIT, AST.NET_SessionId, PHPSESSID, or phpAds_d. This information can be combined with another cookie for validation under the names USERIDTK, UID, GRID, UID=PREF=ID, TM, __utma, LM, TMARK, VERSION, or CURRENT

Además, según el informe de Kaspersky el troyano es capaz de establecer una red P2P entre nodos infectados para tener más posibilidades de conectar con su centro de control. Un ejemplo de redundancia para evitar ser anulado.

Si se administra una red donde tenemos una gestión de seguridad más o menos razonable, sabremos que puestos y qué sistemas operativos se ejecutan en cada nodo de la misma, ya sea por procedimiento manuales, ya sea usando algún tipo de software que nos permita inventariar la misma, ya sea porque tenemos desplegados en puntos estratégicos software como prads que nos permita una detección pasiva de equipos en la red. Es decir, si somos un poco cuidadosos tendremos una visión más o menos actualizada de los equipos para poder incrementar nuestra situation awareness. Es más, es probable que tengamos algún software que nos esté recogiendo y consolidando eventos de seguridad de la red, y lo más importante que debería de ser capaz de avisarnos de las anomalías que se producen en dicha red.

Hoy he estado mirando los paquetes ICMP que genera tanto Linux como MacOS X (Mavericks) cuando utilizan el comando ping, en especial el campo de datos. Decir que esta utilidad genera un paquete (echo request) con un campo de datos, que si llega a la máquina destino y está configurada para responder, lo hace con un paquete de echo reply. El paquete echo request lleva un campo de datos que nos va a aparecer en el paquete de vuelta echo replay. Lo interesante es que este campo de datos, es, precisamente lo que podría estar usando para pasar información de control el troyano. Pero es que también hay que decir, que este campo de dato es fijo en la configuración por defecto de OS X y en Linux, al menos en la versión que he probado, sólo cambian los 4 primeros bytes de los 48 que utiliza el paquete de datos.

¿Cómo es que ningún software de correlación vio esta clara anomalía?, máxime cuando parece ser que hasta ahora, las direcciones IP de los centros de comando y control, como puede verse aquí son cuatros?. Mirando las últimas reglas de Snort, se puede ver que ha añadido al fichero malware-cnc.rules varias reglas para detectar estos centros de control.

En realidad, ¿de verdad los SIEM están preparados para detectar este tipo de amenazas?. ¿Qué tenemos que información tenemos que integrar aquí y cómo?

  • ¿Qué sistemas se ejecuta en cada nodo de la red?
  • Tráfico ilegítimo ICMP asociado a esos sistemas, ya sea por patrones que no son estándar ya sea por una cantidad de tráfico que no está dentro de los parámetros normales.

lunes, noviembre 24, 2014

Regin

(vía Slashdot) Parece ser que tenemos un nuevo troyano sobre el cual lleva investigando Symantec un tiempo. Se trata de un programa que permite de manera remota tomar el control del ordenador en el que ha sido instalado y ejecutar diversos módulos en función de lo que se desee espiar en el objetivo. La particularidad de este troyano es que su carga está encriptada hasta cinco veces, que tiene una variedad de módulos para realizar diversas tareas de espionaje, lo que facilita su adaptación al objetivo. Symantec ha publicado un análisis del mismo. Un detalle importante es que parece ser que se ha encontrado especialmente en proveedores de internet y empresas de telecomunicaciones (más del 20% de las muestras), lo que hace sospechar que hay algún gobierno con el suficiente músculo tecnológico y financiero para llevar a cabo un programa de este tipo.

Según el análisis de Symantec, el programa está construido a partir de un framework que permite su adaptación al objetivo que se desea espiar. Es más parece ser que su diseño busca obtener información y monitorizar continuamente a los objetivos espiados. Empezó a estudiarse entorno al 2013, pero parece ser que hay ataques que se pueden trazar hasta el 2008.

Me gustaría saber como han llegado a los ejemplares del troyano que han estudiado Symantec. Y sobre todo, ¿hay algún detector de anomalías que alertara sobre su presencia?

miércoles, noviembre 19, 2014

Programación en C orientada a objetos

Ayer dando un repaso a algunos Reddit que sigo encontré un hilo muy interesante de como usar técnicas de programación orientanda a objectos en el leguaje C. El artículo sobre el que empieza el debate, C Object Oriented Programming es una gran introducción a las mismas.Nos podemos encontrar estos patrones en el código fuente de proyectos como el kernel de Linux, SQLite, o las librerias glib, en su sistema de objetos GObject. Esta última librería es la que más he usado yo para manejar esos conceptos OOP en C. Los comentarios en el hilo de reddit dan más referencias a este tipo de técnicas, por ejemplo Object-oriented design patterns in the kernel, part 1 y Object-oriented design patterns in the kernel, part 2 y un enlace al libro Object-Oriented Programming With ANSI-C. También se pueden ver en acción en el compilador original de C++ cfront y ver su uso en C++ Internals.

Todos los enlaces los he ido recopilando del hilo de reddit.

martes, noviembre 18, 2014

Aire 75: Versión extendida

A través de Elentir me llegó hace unos días el enlace a una versión extendida del vídeo que el Ejército del Aire publicó con motivo del Festival Aéreo Aire 75. Aquí lo dejo para su disfrute.

domingo, noviembre 09, 2014

Bautismo de vuelo

Este año he tenido un regalo de cumpleaños muy especial por parte de mi mujer, un bautismo de vuelo en una Piper PA-28 Cherokee, matrícula EC-DFK en el Aeroclub de Castellón. Un regalazo. Las sensaciones que se tienen desde la cabina de una pequeña avioneta son impresionantes. Desde el momento que te montas en la avioneta, el piloto va realizando - y explicando - los diferentes listas de comprobación de la avioneta, la disposición de los mandos, las velocidades a las que vas a despegar. También la jerga de comunicación que utilizan con la torre del aeropuerto. Quizás, lo primero que me llama la atención es todo el proceso de puesta en marcha, las diferentes comprobaciones en la puesta en marcha y el rodaje por la pista. Las checklist de la Piper puede ver todo el proceso. Una vez que el instructor despega la avioneta, realiza la checklist de después del despegue, y sobre el mil metros AGL1, te deja los cuernos de mando - aunque el instructor siempre está atento a los movimientos.

Una vez en el aire, el instructor me explica cuales son las referencias para pilotar el avión en visual. Según el piloto, estima que el avión está bajando o subiendo mirando el horizonte natural. Si mira de reojo el anemómetro que le indica la velocidad del avión. El giro también lo estima con respecto al horizonte natural. Le preguntaba al instructor, y me comentaba que la mayor parte del tiempo se mira fuera, buscando las referencias. Eso si, sin perder de vista los parámetros de motor y la velocidad. Hay que ser muy suave con los mandos en vuelo. Cualquier insinuación y se puede ver en el como el avión toma o pierde altura o comienza a girar. Me explica que los mandos hay que tratarlos con suavidad para evitar las oscilaciones inducidas por el piloto.

La sensación del vuelo es increíble. No puedo dejar de sorprenderme de las vistas que se disfrutan desde el aire. Incluso, cerca de Alcossebre, me señala el piloto las islas Columbretes. Tras unos cuarenta minutos de vuelo volvemos al campo para realizar un touch and go. La Piper, tras tocar, mete potencia e inmediatamente comienza a subir. Quizás la parte que más me impresionó fue el aterrizaje, ver como apuntas el morro al campo y como realizas la recogida del avión.

En resumen, una experiencia espectacular. Disfruté como un crío el día de reyes. Aconsejable para cualquier persona que sea un aficionado a la aviación como es mi caso. Lo malo es que esta experiencia no hace sino que me pique más el gusanillo de la aviación.

Notas

  1. About ground level