elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


  Mostrar Temas
Páginas: [1]
1  Foros Generales / Dudas Generales / P2P dinamico? en: 4 Febrero 2012, 19:49 pm
Buena, he estado leyendo algo de p2p, y en la wikipedia la definicion de red p2p pura viene algo como:

Citar
[...] Todas las comunicaciones son directamente de usuario a usuario con ayuda de un nodo (que es otro usuario, con una dirección IP y puerto conocidos) quien permite enlazar esas comunicaciones. [...]

Ahora bien, que ocurriría si todos los host de la red tienen ips dinámicas? Nadie conocería ninguna ip. Y si se intentase cerrar esta red p2p, podrían cortar la comunicación con esa lista de ips fijas, y la red se iría al garete.

Se me ocurrió una idea algo rara, pero tal vez funcione. El programa p2p del ordenador A no sabe quien hay en la red, es mas la red aún ni existe. Sólo conoce su propia ip.
Para tratar de buscar más nodos hace una especie de "ping" a las ips a partir de la suya. Una a una tardaría mucho en encontrar algún nodo, a si que quizás se pueda hacer varios pings a las vez de 10 en 10, o 100 en 100, eso no se muy bien como se haría.

Para simplificar tenemos los siguientes datos:
Código:
Nodo | IP
 A   | 10
 B   | 20
 C   | 22
 D   | 29

Todos comienzan a buscar en la siguiente ip a ver si hay alguien. En el primer intento ninguno va a tener suerte. Al segundo el nodo B que buscaba en la 22 va a encontrar al nodo C que en ese momento estaba buscando en la 24. En este momento el nodo B y C se enlazan, y ambos guardan las ips del otro, creando una lista, que se comprobará periódicamente para comprobar que el nodo sigue conectado.
En este momento, B comparte su lista de nodos con C y viceversa. Como aun no tenían ningun nodo en la lista, pues no van a conocer a ningún nodo más. Pero el nodo C le dice al B que ya ha explorado de 22 a 24, y al parecer no hay nadie por ahi. Por lo tanto el nodo B en vez de volver a hacer ping a esas ips puede aliarse con C y decidir que B buscará las impares y C las pares. Así tardarán menos.

Ahora mismo llevamos 2 pings, continuamos con 3 pings, A exploró (11,12,13); B(21,22,25); C(22,23,24); D(29,30,31).
cuatro A(11,12,13,14); B(21,22,25,27); C(22,23,24,26); D(29,30,31,32),
cinco A(11,12,13,14,15); B(21,22,25,27,29); C(22,23,24,26,28); D(29,30,31,32,33),
seis A(11,12,13,14,15,16); B(21,22,25,27,29,31); C(22,23,24,26,28,30); D(29,30,31,32,33), ahora sí que se han encontrado C con D, de modo que C añade a su lista a D, y envia a todos los nodos de su lista, su propia lista. Entonces B recibiría la ip de D, y viceversa. Ahora pueden aliarse los tres nodos para continuar buscando.

Todo esto ocurre en el transcurso de 6 pings. Pero en una red real quizás hagan falta miles de ellos.

Una vez que se hayan conectado todos, si alguien se conectase a la red, tendría que buscar al nodo más cercano, y que ese le ofreciese la lista de nodos actuales.

Cuando un nodo se desconecta, guarda toda la lista de ips, y al volver a conectarse, trata de averiguar si esas ips están online. Si alguna lo esta, le transfiere la lista de nodos.

Una mejora que se me ocurre es que el programa, pueda reconocer si se trata de una ip fija, y comunicarselo a los demás para que busquen por el primero que las dinamicas.

Será posible crear una red así? Partiendo de cero?

Saludos! ;D
2  Comunicaciones / Redes / Conectar varios vecinos con internet, por LAN en: 22 Enero 2012, 04:45 am
Hola, resulta que se me ha planteado una idea, pero no tengo mucha idea de si es viable. En una calle con imaginemos 15 vecinos, donde cada uno tiene contratada su tarifa de internet. Es posible, que creen una red lan entre ellos, usando sus propios routers, enlazando con los vecinos circundantes? En caso de que las señales wifi lo permitan, y manteniendo cada uno su propia conexion a internet. Y en ese caso, es posible "unir" sus conexiones a internet para tener una mayor velocidad? Hay algun protocolo que permita esto? Saludos!
3  Foros Generales / Dudas Generales / Ayuda en la conexion del WhatsApp en: 18 Agosto 2011, 02:12 am
Veamos, soy bastante novato aquí, a si que disculpen si he colocado mal el post, o si es indebido.

Resulta que tras mucho pensar, no doy descubierto cual es la manera de autenticar el whats app, para que se conecte.

El whats utiliza el protocolo xmpp, pero cambiado, de forma que a todas las palabras clave se les asigna un número hexadecimal, y luego, se transforma como si fuese un diccionario.

La tabla: http://pastebin.com/EGmkazRj

El proceso de autentificacion es el mismo que xmpp con digest md5.
Primero se envia una peticion con los bytes:
Código:
0x57, 0x41, 0x01, 0x00
que son (W A 0x01 0x00)

A continuación, se envía otro paquete con los datos del telefono, y los métodos de autentificacion disponibles (DIGEST-MD5-1)

Código:
0000   00 19 f8 05 01 a0 8a 84 fc 11 69 50 68 6f 6e 65  ..........iPhone
0010   2d 32 2e 36 2e 34 2d 35 32 32 32 00 08 f8 02 96  -2.6.4-5222.....
0020   f8 01 f8 01 7e 00 07 f8 05 0f 5a 2a bd a7        ....~.....Z*..

Despues de esto, recibimos 3 paquetes.
 
El primero:

Código:
0000   00 05 f8 03 01 38 8a                             .....8.

El segundo:

Código:
0000   00 08 f8 02 96 f8 01 f8 01 7e                    .........~

El tercero:

Código:
0000   00 5b f8 04 1a bd a7 fc 54 62 6d 39 75 59 32 55  .[......Tbm9uY2U
0010   39 49 6a 4d 34 4d 44 63 78 4d 54 45 79 4d 44 45  9IjM4MDcxMTEyMDE
0020   69 4c 48 46 76 63 44 30 69 59 58 56 30 61 43 49  iLHFvcD0iYXV0aCI
0030   73 59 32 68 68 63 6e 4e 6c 64 44 31 31 64 47 59  sY2hhcnNldD11dGY
0040   74 4f 43 78 68 62 47 64 76 63 6d 6c 30 61 47 30  tOCxhbGdvcml0aG0
0050   39 62 57 51 31 4c 58 4e 6c 63 33 4d 3d           9bWQ1LXNlc3M=

En el ultimo paquete hay una cadena codificada en base64, que contiene los siguientes datos:

Código:
nonce="3807111201",qop="auth",charset=utf-8,algorithm=md5-sess

A partir de aquí, una función se encarga de elaborar una cadena de texto, que sera la que realice la autentificación. El proceso es muy similar al descrito aqui:
http://www.cyberhades.com/2011/07/20/solucion-al-reto-zeropwn-wgsbd2/
Pero hay un pequeño problema, que no encuentro la contraseña por ningún sitio. Aqui la función que se encarga de ello, en el whats:
http://pastebin.com/nKxX3vzc

Llama a la variable password en Lwhatsapp/FunXMPP$Connection; Sin embargo, en esa clase, no se define por ninguna parte.

http://ifile.it/ifn396p
http://www.gigasize.com/get/2vn56xdffsc

Las clases de encuentran en la carpeta classes/Whatsapp

La funcion de la página de cyberhades, que interesa es:

Código:
def sasl_md5_chall(uname, pass, realm, nonce, cnonce, nc, digest_uri, qop)

    hA1data = Digest::MD5.digest("#{uname}:#{realm}:#{pass}")
    hA1data = hA1data + ":#{nonce}:#{cnonce}".force_encoding("UTF-8")
    hA1 = Digest::MD5.hexdigest(hA1data)
    hA2 = Digest::MD5.hexdigest("AUTHENTICATE:#{digest_uri}")
    hash = Digest::MD5.hexdigest("#{hA1}:#{nonce}:#{nc}:#{cnonce}:#{qop}:#{hA2}")

    return hash

end


A continuacion se forma el paquete donde va el response, que es el dato que me falta por generar, y que va cifrado en base64:

Código:
dXNlcm5hbWU9IlhYWFhYWFhYWFhYIixyZWFsbT0icy53aGF0c2FwcC5uZXQiLG5vbmNlPSIzODA3MTExMjAxIixjbm9uY2U9IjVBNzU4OUI4LTk0MkItNDlBRi1CMDJCLTdCREZBNjEzMjA0OSIsbmM9MDAwMDAwMDEscW9wPWF1dGgsZGlnZXN0LXVyaT0ieG1wcC9zLndoYXRzYXBwLm5ldCIscmVzcG9uc2U9NjhiMGYwMTQ2MjZhODBlYjcxN2FkYzE0M2I1NTdlMDksY2hhcnNldD11dGYtOA==

que si se descifra es:

Código:
username="XXXXXXXXXXX",realm="s.whatsapp.net",nonce="3807111201",cnonce="5A7589B8-942B-49AF-B02B-7BDFA6132049",nc=00000001,qop=auth,digest-uri="xmpp/s.whatsapp.net",response=68b0f014626a80eb717adc143b557e09,charset=utf-8

Donde obviamente en vez de XXXXXX pone tu número de teléfono.

Mi intención es hacer un programa que me permita enviar un mensaje a un móvil determinado usando el whatsapp.
Si alguien me puede ayudar en esto se lo agradecería

4  Seguridad Informática / Wireless en Windows / Capturar IVS con NetMon 3.3 ? en: 20 Mayo 2010, 21:18 pm
Hola he posteado hace poco con un problema en linux de una broadcom 43225.

El problema es que esta tarjeta:
02:00.0 Network controller: Broadcom Corporation Device 4357 (rev 01)
NO tiene ningun driver ni metodo para ponerla en modo monitor por lo menos en linux.

Sin embargo parece que he conseguido que funcione con el driver de serie en windows 7 con el NetMon 3.3 en modo monitor.
Ahora mismo estoy capturando paquetes ivs de mi mismo navegando con otro adaptador y la Broadcom esta en monitor



Hasta ahi todo bien pero el problema es que solo puedo guardar las capturas en .cap y en formato NetMon
Si las abro con el wireshark y las guardo en formato .cap del aircrack
me sale el suiguiente error



Como puedo guardar estas capturas para que el aircrack las reconozca?
5  Seguridad Informática / Wireless en Linux / Broadcom 43225 en Linux modo monitor en: 17 Mayo 2010, 00:41 am
Hola buenas noches a todos.

Tengo un portatil con una tarjeta Broadcom 43225 y he instalado la ultima version de ubuntu 10.04 que parece que lleva los drivers de fabrica.
He conseguido ponerla en modo managed pero quisiera saber si se puede poner en modo monitor. Compilando el driver o algo similar. De ultimo estaria comprar otra tarjeta.
Pd: Wifislax 3.1 no la carga, ni bactrack, solo el nuevo paquete Broadcom STA: http://www.broadcom.com/support/802.11/linux_sta.php

Muchas gracias desde ya.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines