msgbartop
Sé lo que estás pensando, si disparé las seis balas o sólo cinco.
msgbarbottom

27 sep 19 Una nueva restauración: Orbea Luarca

Hace algunos meses me hice con dos de las bicicletas que marcaron mi infancia y juventud: las dos bicicletas de mi tío Manolo. Se trataba de una bici de carreras, la excelente Super BH L6000 que ya tuve ocasión de restaurar a principio de verano, y una bici de paseo muy especial, una Orbea Luarca de 10 velocidades. Y digo que es muy especial porque es la bicicleta con la que mi padre salía conmigo y mis amigos cuando empezamos a aficionarnos en serio al mundillo de las bicis de montaña en Córdobaa.

IMG_20190912_204456.jpg

La verdad, no puedo casi ni imaginarme cómo mi padre era capaz de mover semejante hierro para subir con nosotros por la Sierra. Y no se trata solamente del peso (que de por sí ya es bastante), sino por el desarrollo tan desemesurado que mueve esa bici, con dos platos cercanos a los 50 dientes y apenas 5 piñones bastante pequeños. Muy apropiados para rodar cómodamente por ciudad, pero no tanto para ir con tres o cuatro fieras con bicis de montaña por la Sierra.

En fin. El caso es que también me hice con ella, ya que mis tíos iban de deshacerse de ambas bicis, y me daba pena que una bici con ese trasfondo emocional para mí se perdiera. Y además, es que -pese a que con mis ojos de chavalillo no lo apreciera en su momento- es una bici con mucho estilo. Así que hace poco me decidí a restaurarla, y a aplicarle algunas pequeñas mejoras para hacer su manejo más agradable, sobre todo teniendo en cuenta que tenía previsto ponerla de nuevo en servicio para ir a rodar con Ana.

La puesta en servicio de la misma ha sido bastante simple, aunque un pelín laboriosa: desmontar pieza a pieza, quitar fundas, cables, patillas de freno, cubiertas y neumáticos viejos, limpiar y desoxidar cuadro y llantas, ajustar radios, poner nuevos fondos de llanta y cubiertas nuevas, además de cableado en general.

En cuanto a las mejoras, no he podido resistirme a hacer algunas:reemplazar el viejo piñon de 5 velocidades por uno nuevo de 7, más cómodo para rodar, y cambiar las manetas de cambio en el cuadro por unas con pulsadores en el manillar. Para ello ha sido necesario conocar unos terminadores de funda en el cuadro, en la ubicación antigua de las manetas. Una lección ya aprendida de la restauración de la Super BH. El cambio de corona implicaba, como ya esperaba, el cambio del desviador trasero, que reemplacé por un Shimano Tourney. Y es aquí donde vino el punto más llamativo de la puesta en servicio:el cuadro Orbea no llevaba el sistema convencional de anclaje enroscado del desviador, sino un agujero pasante de ánima lisa, en el que se introducía un pasante del desviador, que se fijaba con una tuerca. Y que además era más estrecho que la rosca convencional. Eso provocaba que no pudiera colocar el desviador con su configuración original. Por suerte, tenía una solución para ello: la impresora 3D. Así que no me quedó otra que crear un diseño para el adaptador, y colocárselo al desviador. La suerte es que el modelo Tourney, de gama baja, permite eliminar el tornillo roscado, y pude reemplazarlo de manera sencilla por el impreso en 3D. El resultado no fue malo:

IMG_20190914_095955_867.jpg

Una vez solventado este problema, pude montar de nuevo la bici. El resultado ha sido sumamente bueno, en mi opinión. Los cromados han recuperado todo su esplendor tras haberlos pulido, y he podido quitar la mayoría de los puntos de óxido:

IMG_20190914_135820.jpg

Y aquí algo en más detalle la transmisión con la pieza 3D:

IMG_20190914_135840.jpg

Ha habido algunos componentes que tenía previsto desechar, pero que al final he conservado: los puños de goma del manillar, y el sillín con muelles. Éste último porque es mucho más cómodo de lo previsto, y los puños porque se amoldan mejor al poco espacio que ha quedado en el manillar al subir los cambios desde el cuadro. Y porque, la verdad, tanto uno como otros le dan a la bici un sabor clásico que sería una pena perder. Ahora sólo queda sacarle un poco de partido: :mrgreen:

VN:F [1.9.20_1166]
Rating: 10.0/10 (1 vote cast)

Etiquetas: , ,

26 ago 19 Segundo aniversario del retorno desde Irlanda

Tal día como hoy, hace dos años, abandonamos Irlanda para volver a España. Fueron dos años, exactamente dos, ya que llegamos a Dublín un 26 de agosto de 2015, los que estuvimos viviendo en la Isla Esmeralda. Y la última imagen que tuvimos de la isla fue la de la ciudad costera de Cobh.

Cobh. Última foto que tomé de Irlanda desde el ferry

Cobh. Última foto que tomé de Irlanda desde el ferry

Dos años han pasado desde entonces. Dos magníficos años, que han seguido a otros dos excepcionales. Y que me hacen recordar, con enorme cariño, a las excepcionales personas que conocí allí. Esta noche brindaré por ellos con un excelente whiskey. Irlandés, por supuesto. Sláinte!

VN:F [1.9.20_1166]
Rating: 10.0/10 (1 vote cast)

Etiquetas: , ,

22 ago 19 Mis primeras piezas para la bici creadas con impresora 3D

Sí, tengo una impresora 3D. Hace algunas semanas me compré una impresora 3D, después de estarlo rumiando durante meses, a raíz de que en el trabajo compráramos un brazo robótico, que tuviera como una de sus funciones la impresión 3D. El caso es que el robot es una maravilla en general, pero a la hora de imprimir no es que destaque precisamente. Hasta ahora he estado usando la impresora 3D principalmente para temas de domótica (y que requieren otro artículo aparte) además de para algunas pequeñas figuras, soportes, etc… Pero ayer llegó el tema del ciclismo. Hace ya algún tiempo puse de nuevo en servicio el viejo cuadro de la Fuji como bici urbana, principalmente para ir y venir del trabajo, si bien con algunos cambios sutiles: transportín y alforjas, horquilla rígida, cubiertas lisas, corona de 9 piñones de carretera, manillar de paseo… y un monoplato de 48 dientes. Que como idea está bastante bien, pero que me ha traído bastante de cabeza.

Fuji en modo urbano

Fuji en modo urbano

El principal problema es que cuesta un poco adaptar un eje de pedalier y plato monstruoso, pensados para una bicicleta de pista, a un cuadro de bicicleta de montaña, ya que este último tiene la irritante tendencia a pegar con las vainas inferiores del cuadro. En su momento lo solucioné poniendo más espaciadores en el lado del plato, con lo que conseguí evitar que los dientes del plato dieran en el cuadro, pero generé un nuevo problema, y es que la biela contraria tiene una irritante tendencia a soltarse. De hecho, esto provocó que a punto estuviera de no poder terminar el viaje de alforjas de este año entre Teruel y Valencia (pero de nuevo, esta es otra historia, y deberá ser contada en otro momento). Ayer, dándome ya por vencido, llevé la bici a un taller en Sevilla, y si bien no me pudieron solucionar el problema, me dieron una pista para solucionarlo: el problema es que el pasante del eje del pedalier en el que se atornilla la biela quedaba demasiado adentro, y era necesario que quitara algún espaciador del eje. Y para evitar que el plato tocara en el cuadro, que pusiera espaciadores entre el plato y la biela. Y es aquí donde entra la impresora 3D.

Espaciadores en eje y plato

Espaciadores en eje y plato

Mi primera idea era usar unas simples arandelas metálicas para dar más espacio entre plato y biela, pero no tenía ninguna de los diámetros (interno y externo) necesarios. Pero el problema gordo vino al aflojar el eje del pedalier: los espaciadores de plástico de fábrica estaban desintegrados. Se cayeron a pedazos en cuanto aflojé el eje. Y ahí, puestos a comprar unos simples espaciadores de plástico, me vino la inspiración. ¿Por qué no crearlos en la impresora 3D? Total, peores que los que venían originalmente no iban a ser. Dicho y hecho. En un rato tenía diseñados los espaciadores a medida, y no tardé mucho más en imprimirlos. Ajustados a la décima de milímetro. Y en blanco, eso sí. Ahora a ver cuánto duran. :mrgreen:

VN:F [1.9.20_1166]
Rating: 10.0/10 (1 vote cast)

Etiquetas: , , ,

22 ago 19 Hacking lab sobre Modbus TCP. Lecciones aprendidas

Esta entrada es la parte 4 de 4 de la serie Hacking Lab Modbus TCP

A modo de finalización de esta serie de artículos, a continuación se describen las lecciones aprendidas de esta práctica, que fueron las siguientes:

  • El protocolo MODBUS es un protocolo enormemente inseguro, al no haber sido planteado en su diseño un sistema de autenticación o comprobación de protocolos. Cualquier elemento que esté en la misma red que un sistema PLC que se comunique con MODBUS sobre TCP tiene la capacidad de influir y alterar los valores de dicho PLC.
  • En función de la implementación del sistema HMI puede ser más o menos sencillo percibir cambios en los valores del PLC. En este caso, al leerse los cambios cada 500ms, es difícil ocultarse a dichas variaciones.
  • Es esencial una adecuada segmentación de la red, para evitar explotación de amenazas mediante movimientos laterales E-O. Esta segmentación puede realizarse mediante un sistema cortafuegos, bien ruggerizado o no, con inspección de protocolos a nivel industrial. Dicha inspección profunda de paquetes, además de crear las reglas convencionales de tráfico permitido en función del origen y destino, permite crear reglas más finas, como por ejemplo otorgar permiso para realizar sólo operaciones de lectura para determinados orígenes (ej.: sistemas de monitorización), y permisos de lectura y escritura para los sistemas de control (HMI), además de denegación para el resto de elementos de la red.
Cortafuegos Check Point de categoría industrial

Cortafuegos Check Point de categoría industrial

  • Una buena manera de proteger un dispositivo PLC, además de la anteriormente expuesta, es mediante un Gateway que permita implementar las funciones adicionales de autenticación que el propio PLC puede no permitir en función de su implementación.
  • En lo referente a los sistemas de reconocimiento utilizados, como nmap, es necesario afinar con la configuración del escaneo, ya que un escaneo masivo como el planteado puede levantar alertas en el sistema de correlación de alertas, si existe, al realizar conexiones masivas a los elementos de la red.
VN:F [1.9.20_1166]
Rating: 10.0/10 (1 vote cast)

Etiquetas: , , , ,

10 jul 19 Hacking lab sobre Modbus TCP. Proceso de intrusión en el sistema

Esta entrada es la parte 3 de 4 de la serie Hacking Lab Modbus TCP

El tercer capítulo de esta serie describe el proceso a seguir para lograr una intrusión en el sistema. Para realizar este proceso, se han seguido los pasos descritos en la metodología de hacking ético desarrollados por el Centro de Ciberseguridad Industrial. En concreto, las fases realizadas son las siguientes:

Fase de Reconocimiento

La fase de reconocimiento consistió en determinar qué equipo de la red de sistema escuchaba tráfico MODBUS. Para ello, se hizo uso de ZenMap, interfaz gráfica para NMAP. Se realizó un escaneo a la red entre los puertos 1 y 2000, para el segmento 192.168.0.0/24, determinándose que el equipo con IP 192.168.0.39 escuchaba en el puerto 1502/TCP. Ninguno de los demás equipos descubiertos en la red escuchaba en dicho puerto.

Resultado del comando NMAP ejecutado en Zenmap

Resultado del comando NMAP ejecutado en Zenmap

Comando ejecutado: nmap -p 1-2000 -T4 -A -v 192.168.0.0/24

El resultado de nmap para dicho servidor fue el siguiente:

Initiating SYN Stealth Scan at 23:24
Scanning 192.168.0.39 [1 port]
Discovered open port 1502/tcp on 192.168.0.39
Completed SYN Stealth Scan at 23:24, 0.30s elapsed (1 total ports)
Initiating Service scan at 23:24
Scanning 1 service on 192.168.0.39
Completed Service scan at 23:25, 68.99s elapsed (1 service on 1 host)
Initiating OS detection (try #1) against 192.168.0.39
WARNING: RST from 192.168.0.39 port 1502 -- is this port really open?
WARNING: RST from 192.168.0.39 port 1502 -- is this port really open?
WARNING: RST from 192.168.0.39 port 1502 -- is this port really open?
WARNING: RST from 192.168.0.39 port 1502 -- is this port really open?
WARNING: RST from 192.168.0.39 port 1502 -- is this port really open?
WARNING: RST from 192.168.0.39 port 1502 -- is this port really open?
NSE: Script scanning 192.168.0.39.
Initiating NSE at 23:25
Completed NSE at 23:25, 0.04s elapsed
Initiating NSE at 23:25
Completed NSE at 23:25, 0.04s elapsed
Nmap scan report for 192.168.0.39
Host is up (0.00023s latency).
PORT STATE SERVICE VERSION
1502/tcp open shivadiscovery?
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Linux 2.4.X
OS CPE: cpe:/o:linux:linux_kernel:2.4.21
OS details: Linux 2.4.21
Network Distance: 0 hops

Se puede apreciar cómo se ha encontrado abierto el puerto 1502/tcp en el elemento de red 192.168.0.39, que según nuestro diagrama, corresponder al PLC simulado que recibe los comandos para encender y apagar las luces.

Fase de escaneo

Una vez determinado el equipo que actúa como PLC recibiendo comunicaciones Modbus, se utilizó la herramienta modbus-cli disponible en Kali con el fin de intentar determinar las bobinas que controlaban el sistema de iluminación. Se hizo una lectura de las 20 primeras direcciones de memoria del PLC identificado. Tras sucesivas pruebas, se pudo determinar que los valores que variaban eran las relativas a las direcciones de memoria 2 a 4:

Resultados de los escaneos con modbus-cli

Resultados de los escaneos con modbus-cli

De acuerdo a la especificación del protocolo Modbus, los primeros 9999 registros de memoria corresponden a bobinas con valores TRUE o FALSE (1 o 0):

Tipos de registros de memoria en función de su dirección

Tipos de registros de memoria en función de su dirección

Una vez determinados estos valores, pudo pasarse a la siguiente fase del ataque.

Fase de ganado de acceso
En el caso de protocolo Modbus, al ser un protocolo que no tuvo en cuenta en su fase de desarrollo ninguna medida en especial de seguridad, es tremendamente sencillo acceder al sistema para realizar cambios. Se trata tan sólo de inyectar los valores correspondientes mediante las oportunas señales de control, ya que no se hace verificación alguna de origen, identidad, permisos, ni se realiza autenticación alguna. En este caso, basta con ejecutar el mismo modbus-cli en modo escritura para alterar los valores registrados en el PLC:

# modbus write -p 1502 192.168.0.39 2 0 0 0

Sucesivos comandos de cambio de estado

Sucesivos comandos de cambio de estado

Estado final del sistema de iluminación

Estado final del sistema de iluminación

El resultado de dichos comandos fue, en primer lugar, el apagado completo de la iluminación, y posteriormente, el encendido de la iluminación en verde, controlada por la bobina 3. Estos cambios se vieron reflejados en la interfaz HMI del sistema, por lo que un operador podría haber determinado la existencia de un comportamiento anómalo del sistema.

Interfaz HMI reflejando el cambio de estado

Interfaz HMI reflejando el cambio de estado

Sin embargo, no es tan sencillo introducir valores fuera de rango. Al intentar inyectar valores distintos de 0 o 1 en las bobinas, la herramienta devolvió un mensaje de error, y no se alteró el funcionamiento del sistema:

root@raspberrypi:/home/pi# modbus write -p 1502 192.168.0.39 2 10 10 10
ERROR: parameter 'VALUES ...': Value should be in the range 0..1

See: 'modbus write --help'

En lo referente a las dos últimas fases (Mantener Accesso y Borrar Huellas) excedía el ámbito de lo buscado en este piloto, por lo que no se han desarrollado de manera explícita.

VN:F [1.9.20_1166]
Rating: 10.0/10 (1 vote cast)

Etiquetas: , , , , , , ,