anales del tiempo

17
Anales del Tiempo Informático Manu Alén Abstract: Nuestros sistemas informáticos necesitan del tiempo para subsistir, por esto mismo, es importante preocuparse por la seguridad de los relojes atómicos situados en los GPS, pues un sistema informático realiza diversas peticiones NTP a estos relojes atómicos. En este artículo se enunciará como, gracias a una fórmula obtenida tras el periodo de investigación, se podría manipular el tiempo de cualquier sistema informático, lo que conllevaría problemas importantes en cuanto a seguridad, pues podría suponer que un atacante pudiese obtener nuestras credenciales.

Upload: malvadoalen

Post on 23-Jan-2017

141 views

Category:

Internet


0 download

TRANSCRIPT

Page 1: Anales del tiempo

Anales del

Tiempo Informático

Manu Alén

Abstract: Nuestros sistemas informáticos necesitan del tiempo

para subsistir, por esto mismo, es importante preocuparse por la

seguridad de los relojes atómicos situados en los GPS, pues un

sistema informático realiza diversas peticiones NTP a estos

relojes atómicos. En este artículo se enunciará como, gracias a

una fórmula obtenida tras el periodo de investigación, se podría

manipular el tiempo de cualquier sistema informático, lo que

conllevaría problemas importantes en cuanto a seguridad, pues

podría suponer que un atacante pudiese obtener nuestras

credenciales.

Page 2: Anales del tiempo

1. Introducción:

Este trabajo de investigación ha sido motivado gracias a trabajos

de José Selvi y más recientemente de Kang Wang, Shuhua Chen y

Aimin Pan. En este artículo se intentará resolver a la pregunta que

me planteé al leer dichos trabajos “¿por qué?”, y tras más de 4

meses de investigación, he llegado a un planteamiento con

fundamento matemático y físico, el cual considero necesario para

conseguir resolver la pregunta planteada con anterioridad.

Así pues, serán necesarios conocimientos amplios sobre

Relatividad, pues los sistemas GPS se apoyan de la Teoría

enunciada por Albert Einstein. Es en este punto donde yo he

encontrado que los trabajos anteriores, pues consideran, entre

otras cosas, que la luz en el espacio viaja en línea recta, cuando se

conoce que debido a la presencia de un cuerpo masivo, éste curva

el espacio-tiempo.

Este artículo no precisará de mucha teoría Informática, pues como

se ha hecho alusión con anterioridad, es un trabajo motivada por

trabajos como el de José Selvi, por esto el ataque será muy

parecido, con algunas modificaciones las cuales se mostrarán en

un próximo artículo, a los ataques realizados en el trabajo llamado

“Time and Position Spoofin with Open Source Projects”.

Page 3: Anales del tiempo

2.HSTS:

Como todo Informático debe saber sobre dicho Protocolo, HSTS

provoca que el agente de usuario acceda al servidor únicamente

de forma segura, es decir, mediante HTTP sobre TLS/SSL. Esto

quiere decir que:

-Si yo me conecto a http://www.miweb.es y preciso del protocolo

HSTS, me redirigirá a httpS://www.miweb.es y a todos los

subdominios de “miweb.es”

Esto dificultó la opción de que un atacante pudiese realizar un

Man In The Middle, pero eso, lo dificultó, no lo imposibilitó.

Antes si una web estaba en HTTPS, bastaba con “quitar la S del

HTTPS”, es decir, realizar un SSL Strip. Esto es lo que con HSTS

se dificultó.

3.Fundamento Matemático y Físico:

Este punto es el más importante, pues sin tener claro este punto,

los ataques que realicemos, primero, no sabremos por qué lo

haceos ni qué ocurre “por debajo” y segundo, nos dificultaría

mucho realizar un ataque efectivo. Realizada esta breve

introducción, comenzamos con las Matemáticas y la Física.

Page 4: Anales del tiempo

Los sistemas GPS, funcionan gracias a la Teoría de la Relatividad

de Albert Einstein, y esto es algo que todo ataque debe tener en

cuenta, no se puede pasar ni inventar que la luz de un punto A

masivo a un punto B masivo, viaja en línea recta, pues por el

campo gravitatorio y por el hecho de poseer masa, ese cuerpo,

curva el espacio-tiempo.

t=t0Ճ

Esta es la expresión del tiempo relativo enunciado por Albert

Einstein. Si continuaos desarrollando la expresión nos quedaría:

t= 𝑡𝑜

√(1−𝑣2

𝑐2)

Para que no queden dudas, la raíz cuadrada es de todo el

paréntesis, y el numerador es t0.

Para demostrar esta expresión, podemos ayudarnos de un

enunciado inventado, por ejemplo:

“Una nave viaja a 5∙106 ms-1 y una persona en la Tierra ve la nave

volando durante 2 minutos ¿Cuánto tiempo mide el astronauta en

la nave-es decir, calcular t0-?”

c=3∙108 ms-1

2 minutos=120 segundos

t√1 −𝑣2

𝑐2 = t0

Page 5: Anales del tiempo

Así que solamente debemos sustituir los datos en nuestra fórmula

despejada.

120∙ √1 −5∙106 𝑥 5∙106

3∙108𝑥 3∙108 = t0

120√0.9997 = t0 t0= 119.98332 segundos

Como podemos observar, nuestro astronauta, al ir a mayor

velocidad que el observador en la Tierra, percibe algo menos de 2

minutos (120 segundos). La diferencia es mínima aun yendo a tal

velocidad, por eso, nosotros al caminar/ir en coche/ir en tren/ir en

avión, también sufrimos una dilatación del tiempo, pero

sumamente pequeña, debido a nuestra “escasa velocidad”.

Esto mismo, es lo que he decidido aplicar en mi teoría, y

teniendo en cuenta sobre todo, que las señales que se realicen

desde la Tierra a los satélites, serán señales lumínicas, lo que

implica que dichas señales van a velocidad c, velocidad de la luz.

Así que ahora es nuestro reloj el que se sube sobre un haz de luz,

y este tiempo es el que percibe nuestro reloj encima de un haz de

luz, respecto a nosotros, que somos los usuarios que navegan en

Internet.

Aplicamos fórmula.

Page 6: Anales del tiempo

Y puesto que lo único que sabemos es que v=c, deberemos

sustituir nuestro único dato en nuestra fórmula, con lo que nos

quedaría:

t√1 −𝑐2

𝑐2 = t0

Y si efectuamos nuestra expresión, tendríamos:

t√1 − 1 = t0

t√0=t0

t∙0=t0 Nos quedaría… t0=0 segundos

Es decir, para nuestro reloj, el cual recibirá las peticiones NTP

enviadas por nuestro sistema operativo, será igual a 0, y esto será

importante, pues ya que hemos conseguido que el tiempo sea 0,

necesitaremos “algo más” para poder añadir una fecha que

nosotros queramos y que nuestra víctima no sospeche.

4. La Curvatura del espacio-tiempo:

Este punto es otro factor de gran importancia, y es aquí donde

más de un investigador de seguridad, se le ha olvidado incluir

Page 7: Anales del tiempo

dicho factor en sus ecuaciones, suponiendo que el rayo de luz

viaja en línea recta, ya que para que la velocidad de la luz en el

vacío permanezca constante, el espacio y el tiempo deben de

contraerse, no olvidemos que la velocidad de la luz, es eso, una

velocidad.

V= 𝑑𝑒

𝑑𝑡 ms-1

Siendo “e” el espacio y “t” el tiempo, así pues la velocidad será la

derivada del espacio respeto al tiempo y para que c sea constante,

deberá de dilatarse el espacio-tiempo.

Esto es muy importante tenerlo presente, ya que la luz se curvará

debido a la presencia de un cuerpo masivo. Esto se percibe mejor

con la siguiente figura.

Page 8: Anales del tiempo

Evidentemente, esto podrá suponer un pequeño cambio, pero que

es necesario tener en cuenta, imaginemos que queremos viajar a

una estrella y por suponer que es una superficie lisa, no

llegaremos al final de nuestro trayecto.

Ahora cambiemos el destino, y en vez de ser una estrella,

imaginemos que queremos ir a un satélite GPS, donde están

situados los relojes atómicos, pues si tenemos en mente una

superficie lisa en vez de cuerva, nos equivocaríamos con dónde

Page 9: Anales del tiempo

está realmente nuestros satélites, un error que no nos podemos

permitir si fuésemos unos atacantes.

Dicho esto, necesitaremos saber qué ecuación explica la curvatura

espacio-temporal. De esto también se encargó Albert Einstein,

formulando lo siguiente.

Ԍ𝜇v= R𝜇v -1

2Rgµv + ˄gµv

Donde:

Ԍ𝜇v es el tensor de curvatura de Einstein, R𝜇v el Tensor de

curvatura de Ricci, R el escalar de curvatura de Ricci y ˄ es la

constante cosmológica.

Pero toda es expresión queda reducida a:

Ԍ𝜇v= 8𝜋𝐺

𝑐4 Tµv

Siendo G la Constante de Gravitación universal, c la velocidad de

la Luz y Tµv es el tensor momento-energía.

Teniendo esto en cuenta, deberíamos realizar un experimento

mental, y es que a mayor curvatura más esfuerzo nos conllevará

enviar nuestras señales de un punto A hasta un punto B, ese

esfuerzo en física se llama trabajo y viene dado por la fórmula de:

W=F∙r

Page 10: Anales del tiempo

Pero no podemos considerar la fuerza de Newton, pues hay

curvatura:

F=G𝑀𝑚

𝑟2

La nueva fuerza sería:

g= -c2 (1-2𝐺𝑀

𝑐2𝑟)dtXdt + (1-

2𝐺𝑀

𝑐2𝑟)-1drXdr+r2(d∅X d∅+sen2∅d𝜑Xd𝜑)

Todo esto nos podría quedar de la siguiente manera:

d2r1

𝑑𝜏2=-(r-2𝐺𝑀

𝑐2 )𝐺𝑀

𝑟3 (𝑑𝑡

𝑑𝜏)2= -

𝐺𝑀

𝑟2 [(1-2𝐺𝑀

𝑐2𝑟)(

𝑑𝑡

𝑑𝜏)2]≈-

𝐺𝑀

𝑟2

Teniendo en cuenta la dilatación del tiempo gravitatorio, coincide

con la de Newton.

(𝑑𝑡

𝑑𝜏)2= (1-

2𝐺𝑀

𝑐2𝑟)-1

Así que nuestro trabajo nos quedaría:

W=(𝑑𝑡

𝑑𝜏)2r W=(1-

2𝐺𝑀

𝑐2𝑟)-1r=

1

𝑟-

𝑐2

2𝐺𝑀

Page 11: Anales del tiempo

5. El ataque:

No nos podemos olvidar de que se trata de una teoría informática

para poder cambiar el espacio y el tiempo de una máquina tal

como un ordenador. Debido a esto, deberemos de disponer de una

constante del ataque. Esta constante será z, ya que se desarrollará

una herramienta llamada Zasca. Esta constante se obtiene

mediante el determinante de la matriz z.

z=

𝐶𝑎𝑤𝑡 + 𝑆𝑝 0 00 𝐷𝑠 00 0 𝑊𝑠

Así pues el determinante de z sería el producto de la diagonal

principal, debido a una de las propiedades de los determinantes,

ya que disponemos un números de 0 formando un triángulo

rectángulo en ambas esquinas.

z=(Cawt+Sp) ∙ Ds∙ Ws

Siendo Cawt Change Atomic Watches-en español el cambio del

tiempo de los relojes atómicos, Sp, Steal Passwords-en español

Robar contraseñas, Ds, Denegation Service-en español

Denegación de Servicio y finalmente Ws Wifi Spoofing.

Page 12: Anales del tiempo

Como se puede observar, el software a desarrollar incluiría los

ataques enunciados y mostrados por los investigadores de

seguridad enunciado anteriormente, incluyendo alguna que otra

modificación.

Con todo lo enunciado disponemos así pues de A 𝜇 v= Ԍ𝜇vW+Z

Es decir, que hasta el momento tenemos que el tiempo cambiado

sería:

Tc= A 𝜇 v

Y si por lo que sea t0≠0, deberíamos sumarle el t0, es decir, esto

quedaría de la siguiente forma:

Tc= A 𝜇 v + t0=( Ԍ𝜇vW+Z) + t√1 −𝑣2

𝑐2

Si sabemos un poco de física, física muy muy básica, podemos

plantear uno de los escenarios posibles que se pueden plantear a la

hora de la disposición de los satélites GPS, que como se debe

saber, seguirán la Geometría no euclidiana.

Page 13: Anales del tiempo

Y si disponemos de 4 satélites formando un círculo, nos resultará

el trabajo nulo, es decir W=0. Pero no nos importa pues aun así, al

contener la Z sumando al producto del trabajo con el tensor de

curvatura de Einstein-producto el cual se anulará a ser W=0- aun

así dispondremos de Z, el ataque en sí, con lo cual nuestro ataque

será exitoso.

Tc=( Ԍ𝜇v∙0+Z)

Tc= Z=(Cawt+Sp) ∙ Ds∙ Ws

Esta fórmula podría considerarse como cerrada, pero aún nos

queda algo que es de vital importancia y es que cada sistema

operativo es especial, pues cada sistema dispone de unas

peculiaridades para cambiar la hora, por ejemplo en Linux, se

realizan las peticiones NTP cada vez que se reinicia o se conecta a

una red wifi. En base a esto, yo me he ayudado para concluir mi

teoría de una parte específica de las ondas.

Page 14: Anales del tiempo

Cuando un rayo incide en una superficie, dependiendo del índice

de refracción, se alejará o se acercará a la normal. Una de las

propiedades es que la frecuencia no varía, independientemente del

medio, la frecuencia es constante, lo que cambia es la longitud de

onda y la velocidad. Recuerdo que la velocidad es c.

Disponemos como fórmula de la frecuencia lo siguiente:

𝜗= 𝑐

𝜆

Siendo 𝜗 la frecuencia, c la velocidad de la luz y λ la longitud de

onda.

En base a esto, podemos aplicar esta teoría a lo que se ha

enunciado anteriormente en cuanto que cada sistema operativo

realiza las peticiones NTP. Con esto podemos entender que λ será

ahora la longitud del ataque que cada sistema operativo nos

“permita” realizar, y 𝜗 será la frecuencia del ataque.

La longitud del ataque variará dependiendo del sistema operativo,

por ejemplo en el caso de Windows sería λw=103. Estos índices se

asignarán dependiendo de la seguridad de cada sistema operativo,

así pues, el 3 se le asigna al sistema operativo “más seguro” y el 1

al menos seguro. Nuestras distintas longitudes de ondas serían:

λwindows=103

λmac=102

λlinux=10

Page 15: Anales del tiempo

Evidentemente al ser una relación inversamente proporcional, a

una longitud de ataque menor, mayor frecuencia de ataque, con lo

que obtendríamos un mejor cambio de tiempo con un sistema

Linux.

Y a mayor frecuencia de ataque, mayor cambio de ataque, con lo

que obtenemos una relación directamente proporcional y nuestra

fórmula del cambio del tiempo quedaría:

Tc= A 𝜇 v∙ 𝜗= =( Ԍ𝜇vW+Z) 𝑐

𝜆

Si t0≠0 entonces a la fórmula final que hemos obtenido

deberíamos sumarle el t0.

Para que el ataque tenga mayor efectividad, el software será una

especie de inteligencia artificial que detecte si t0 es igual o no a 0,

es decir “if t0=0 hacer esto” y si no fuese igual a cero, tendríamos

que incluir el “else”, programación básica.

Para concluir, deberemos de apoyarnos de la ecuación más

célebre de Einstein:

m=m0Ճ= 𝑚0

√1−𝑣2

𝑐2

Page 16: Anales del tiempo

P=mv=𝑚0

√1−𝑣2

𝑐2

v

W=∆Ec=∫ 𝑓𝑑𝑠𝑠

0=∫

𝑑(𝑚𝑣)

𝑑𝑡

𝑠

0ds=∫ 𝑣𝑑(𝑚𝑣)

𝑚𝑣

0=∫ 𝑣𝑑𝑃

𝑚𝑣

0=

∫ 𝑣𝑑(𝑚0𝑣

√1−𝑣2

𝑐2

)𝑠

0

∆Ec=𝑚0

√1−𝑣2

𝑐2

v2-m0∫𝑣𝑑𝑣

√1−𝑣2

𝑐2

𝑣

0 =𝑚0

√1−𝑣2

𝑐2

c2-m0c2

∆Ec=Ec-Ec0=mc2-m0c2

Si inicialmente está en reposo Ec0=0 así que nos quedaría:

E=mc2-0

E=mc2

Ayudados de la ecuación de la energía de Einstein, lo podemos

aplicar en lo que entendemos por una Denegación de servicio, es

decir que a más direcciones IP, a más masa de direcciones IP

entrantes en una web y a una gran velocidad, la denegación de

servicio será mayor, es decir:

Ds=mIPc2

En otras palabras, imaginemos que disponemos de una caja en la

cual cabe 10 objetos-independientemente de la forma- y vamos e

introducimos 12 objetos, la caja se irá rompiendo, pero si

introducimos 100 objetos y muy rápido, la caja se romperá en mil

pedazos. Lo mismo ocurriría con una web.

Page 17: Anales del tiempo

Así se da por concluido este artículo, el cual trataba de explicar

cómo se podría manipular el espacio-tiempo informático,

provocando que ya no sepamos ni la hora ni dónde nos

conectamos a Internet.

La herramienta se usará en un principio internamente y no hay

intención de publicarla para que lo pueda usar todo el mundo, al

menos hasta que no siga con la investigación para ver cómo se

puede prevenir esto.

Ahora unas imágenes para demostrar que este, aplicando esta

fórmula, provoca lo que he narrado. El ataque se ha realizado a un

smartwatch.