miércoles, 23 de noviembre de 2011

Hackeando la hora

Vamos a ver. ¿Alguien ha configurado alguna vez NTP en su ordenador? Aunque sea en un equipo que haga de servidor, ahi, aparcado en un rincón. De esos que llaman headless. Yo lo hice hace tiempo. ¿Cómo? No me acuerdo, la verdad. Era en Linux. Toqué dos ficheros que formaban el cliente y el servidor, los añadí al init.d y teniendo bien configurada la localización para la hora ya estaba hecho.

Una de las cosas que había que buscar era el servidor NTP. Este servidor era el que te iba a dar la hora a tí. Y, a su vez, tu podías hacer de servidor. En mi caso, del propio equipo, que sería el cliente. Para eso, había que ir a la página de ntp.org y buscar el país o continente. En España había 2 o 3 servidores. Eran algo así:

0.es.pool.ntp.org
1.es.pool.ntp.org
2.es.pool.ntp.org
3.es.pool.ntp.org (uno más)

Se pueden encontrar en esta zona de es página.

Y, a partir de ahí, ya tenías puesta la hora exacta en el sistema. Bastante chulo si querías que se cambiase cuando nos hiciesen el cambio del horario de verano/invierno y viceversa.

También, en teoría, algunos de esos relojes que actúan de servidor, se dice que son relojes atómicos. De esos que no se retrasan ni un segundo en nosecuantos miles de años.

Vamos a lanzar varias preguntas al vuelo. ¿Utilizarías un sistema crítico un "reloj" de estos? ¿Te fiarías? ¿Qué sucedería si se viese comprometida la hora de ese reloj? ¿Pasaría algo si decidiese que "no le gusta" la hora de invierno y se quedase donde está? La verdad, se armaría una buena, ¿eh? Desde los equipos que tienen que estar sincronizados al segundo pasando por Kerberos de Microsoft, que permite un "lapsus" de... 5 minutos, si no me acuerdo mal.... Hasta... Hasta... Puffff... Hasta "yo qué se". Es más. Esto sería muy grave si tuviésemos que firmar algún fichero con validez legal. Hace tiempo leí un artículo muy interesante al respecto en Security by Default.

He de decir que estas divagaciones no se me habían ocurrido hasta ahora. Sólo quería hacer una pequeña introducción sobre NTP para ir al tema que quería tratar y he llegado hasta aquí.

Todo esto es a raiz de que mi despertador, que la hora se pone solita con las señales horarias, ha cambiado durante la noche y ha adelantado una hora. Esta mañana (3 de noviembre) ha sonado, lo he apagado y la inercia ha hecho que siguiera con la rutina de siempre. Hasta que ha llegado la hora de lavarme los dientes y he visto que, realmente, era una hora antes. Ya de perdidos al río... he continuado.

Lo primero de todo. Las señales horarias son esos pitidos que suenan en la radio cada hora. Sí. Esos 5 pitidos cortos y uno largo. Eso son las señales horarias.

Las primeras informaciones que veo es que las señales de radio que se envían están en la frecuncia VLF (Very Low Frequency) y LF (Low Frequency). Leyendo la descripción de la Hora ROA, cuyo enlace estaba incluido en el artículo de SbD, se indica que ésta es la hora oficial de España. Ahí hablan precisamente del NTP (hora.roa.es) que comentaba antes.

Por eso yo me pregunto: ¿Se puede hackear un reloj de estos? ¿Qué hay que hacer para emitir una señal que le fuerce a poner la hora que nosotros queramos? Eso es lo que tengo que buscar.

Es muy interesante este artículo. Una de las partes más curiosas es que las señales de baja frecuencia pueden verse alteradas por cualquier chorrada que se tenga en casa. Cómo se comporten estos relojes depende de cómo estén aislados o fabricados. Nos podemos encontrar con que una señal desvirtuada por una interferencia la descarte, pero otra se la quede poniendo mal la hora o no haciendo nada. Pero esto no creo que tenga nada que ver con nada de lo que me sucedió. En otras ocasiones se le ha cambiado la hora y a media noche, ha vuelto a la normalidad. En este caso no sucedió así.

También hay que ponerse en situación. Las estaciones que las transmiten no tienen por qué hacerlo todo el rato. Es más, cada una lo hace cuando le da más o menos la gana. La tónica general es que se hace cada hora. Otras, además, incluyen las medias. Incluso, unas pocas, los cuartos. U otra información adicional mientras que no se emite la hora. Como información meteorológica. Todo esto lo he ido localizando a medida que he ido encontrando sitios que hablaban prácticamente de lo mismo.

Ahora. Sigo con la duda de si una persona de a pie, puede montarse su propia estación horaria. No se trata de montar una como la que nos ponen de ejemplo en Alemania (de hecho, creo que mi despertado se pone por Gran Bretaña, pero tendría que buscarlo), pero, si difundiese a 100 metros o 200 metros. ¿Se podría liar una parda? Por ejemplo, retrasar la hora de los equipos que estén cerca.

Un problema que se me ocurre es que ante dos señales iguales, supongo que prevalecerá la que tenga más potencia o "calidad" de señal. ¿Es posible que, de ser capaces de montar un transmisor de estos doméstico, tenga más potencia que uno "profesional"?

No se. Me da la sensación de que no puede ser tan sencillo enviar una señal de estas. Posiblemente habrá que tener en cuenta la frecuencia en la que se quiere transmitir, la distancia a la que se quiere llegar (en mi caso, con unas decenas de metros, o 100, más o menos), el trasto que nos hará falta, y sus implicaciones legales. Nada. Aquí dejo mis divagaciones. Si a alguien se le ocurre, ya sabe.

Y ahora. ¿Cómo puedo acabar? Pues con una curiosidad que he encontrado mientras buscaba datos para este post. O este otro blog o este otro (aunque acaban diciendo exactamente lo mismo).

2 comentarios:

  1. Buenos días Agux, muy buenas reflexiones, y creo que tienes razón, si pienso que debe ser posible alterar la hora de los aparatos que sincronicen su reloj mediante ese tipo de señales. Puede que al principio nos parezca extraño pero si algo tengo claro es que las cosas más chorras son las que funcionan.

    Yo llevo tiempo "mosqueado" con mi autoradio y con mi TDT ya que su reloj hace lo que le viene en gana. Por más que lo pongo en hora no hay manera, se cambia solito y marca la hora que le sale de las... no se si utiliza las señales horarias para sincronizar el reloj pero si me he dado cuenta, en el caso del autoradio, que marca horas diferentes dependiendo de la emisora que lo tenga puesto. En el TDT no es así pero si veo que se retrasa más o menos dependiendo del canal donde lo tengo puesto, es decir, si lo tengo casi todo el tiempo puesto en FDF parece que la hora se mantiene pero si hago zapping frecuentemente el reloj se va atrasando de una forma alucinante.

    No tengo conocimientos de electrónica como para montar el cacharrito que comentas pero ya te digo que seguro que es posible y apostaria a que funciona.

    Saludos

    ResponderEliminar
  2. Muchas gracias!!

    Creo recordar que también sucede con el teletexto: cada canal pone su hora. Pero hace mucho que no lo pongo, no sabría decir si sigue sucediendo.

    Para montar el trasto habría que investigar más. Como se puede ver en el post, tampoco es que pudiese encontrar mucho sobre qué circuetería haría falta para poder emitir este tipo de señal.

    Por cierto. Siento no haber podido responder antes al comentario. A ver si me las apaño mejor para responder y seguir trabajando en los nuevos posts o en los proyectos que tengo algo paralizados.

    ResponderEliminar