PDA

Ver la versión completa : Como Trabaja MSN, y Como crear tu Propio MSN usando VB



eLGiOva
26-10-2002, 05:03
Listo aqui les traigo un tutorial de como trabaja MSN y como podrias hacer tu propio MSN. listo este tutorial si tienes una web y lo quieres poner en tu web por fa avisame, eres libre de copiarlo pero por favor avisame aqui esta
-----------------------------o-------------------

COMO TRABAJA MSN Y COMO PUEDES HACER TU PROPIO MSN USANDO VB.

CREADO POR eLGiOva

Ya haz estado usando MSN por un tiempo mirando como trabajo. este documento no solo te va a decir como MSn trabaja, pero tambien te va a decir como hacer tu propio MSN.

listo vamos a dividir el trabajo de MSN en dos faces.

*Fase de autenticasion

*Fase de Instataneofase

La fase de autentificación consiste en hacer login al servidor de MSN y
también agregar contactos en tu lista. de contastos de tu lista. La fase de mensaje instantaneo consiste mandar/aceptar inviataciones para iniciar una seccion de mensaje instantaneo y tambien mandando/reciviendo mensajess. El protocolo d MSN esta basado e ASCII, en otras palabras es en puro ingles.

La primera fase consisted en conectarte al servidor de MSN Messanger. En este caso nos devemos conectar a (64.4.13.58 en el puerto 1863 (MSN messenger trabaja atraves del puerto 1863).

Una vez la conexion esta hecha devemos iniciar el proceso del login. El primer paso es al version En este caso el cliente recive/manda la version que puede soportar al sevidor y espera a que el servidor responda.

VERO MSNP7 MSNP6 MSNP5 MSNP4 CURO

En el protocolo de MSN un "trial id" o una identificacion de intente es mandado con cada comando. The "trial Id" empiesa desde 0 y responde satisfactoriamente a los comandos que envia el cliente.

El servidor responde asi:

VERO MSNP7 MSNP6 MSNP5 MSNP4

El cliente y el servidor han acceptado la version en la cual se van a comunicar.



Ahora el cliente manda una orden al servidor preguntandole por el nombre del paquete de seguridad el cual soporte la autenticacion.

INF1

No como yahoo, rebitt y otrosm MSN messanger no manda el password com es. lo que pasa es que lo encripta.

El password mientras esta siendo enviado esta seguro por que no sera facil de desencriptar si alguien esta monitoriando tu puerto.

El servidor responde con esto:

INF5 MD5

MDS es el nombre del paquete de seguridad que el servidor soporta.

Aora el cliente manda el "user Id" o la identificacion del usuario en este casa el E-mail al servidor, asi:

USR2 MDS I [email protected]

Aqui el servidor hace un chequeo a ver si contiene todos los detalles sabre el usuario para la autenticasion

y si no, entonces manda la siguiente respuesta:

XFR 2 NS 64.4.13.55: 1863 0

Lo que el servidor quiere decir es que el cliente se deveria conectar al "Notification Server" o Servidor de Notificasion (NS) en 64.4.13.55 en el puerto 1863.

Cerramos todas las conexiones y repetimos todos los pasos mientras estamos conectados al otro servidor osea 64.4.13.55

(Cliente) VER 3 MSNP7 MSNP6 MSNP5 MSNP4 CVRO

(Server) VER 3 MSNP7 MSNP6 MSNP5 MSNP4

(Cliente) INF 4

(Servidor) INF 4 MD5

(Cliente) USR MD5 I [email protected]

Ahora el servidor al cual estamos conectando tiene la revelante informacion sobre el usuario tratando de entrar o login. El servidor responde ASI:

USR 5 MD5 S 98904851.1851137130

El String o la cadena mandada por el servidor es "MD5 Hash", es un "Hash" mandado por el servidor y es usado en el proceso de Autenticasion. Ahora el cliente tiene que mandar el password el cual esta encriptado usando MD5.

En efecto el cliente tiene que mandasr el unico MD5 equibalente de el MD5 "Hash" ejemplo: 989048851.1851137130 en este ejemplo, el caso y el password estan convinados ejemplo MD5 equibalente a (Hash+Pass). En este caso sale siendo 3b7926d277068ec4957a0c40598ff21.

USR 6 MD5 S 3b7926d277068ec4957a0c40598ff21

Si el password es correcto, entonces el servidor responde ASI:

USR 6 OK [email protected] eLGiOva

La ultima palabra es el nick o nickname con el cual el usuario es conosido.

->En la nueva version del protocolo (MSNP7) el servidor manda informacion adicional sobre el usuario y el codigo de autenticasion o algo similar a un cookie que puede ser usado para otras funciones.

MSG Hotmai Hotmail 362

MIME-Version: 1.0

Content-Type: Text/x-msmsgspro file; charset=UT

LoginTime: 1011252477

Email Enabled: 1

MemberIdHigh: 84736

MemeberIdLow: 1434729391

Lang_preference: 103

PreferredEmail 1: [email protected]

Country: US

PostalCode:

Gender: M

Kid: 0

Age: 15

Sid: 517

Kv: 2

MSP Auth: 2AAAAAAAADU0p4uxxxJtDJozJS1UTS0i7YpwnC9PUHRv56YKxx xCTWmg$$

Ahora ya estamos logged o conectados al servidor, pero nuestro Status o estado todavia es Offline o Sin Conexion. Nosotros devemos estar online o en linea para poder mandar y recivir mensajes. El cliente hace esto de la siguiente forma:

CH6 7 NLN

El servidor responde con los contactos que estan en linea y los varios estados:

CHG 7 NLN

ILN 7 NLN [email protected]

ILN 7 AWY [email protected]

ILN BSY [email protected]

MSG Hotmail Hotmail 223

MIME-VERSION: 1.0

Content-Type: Text/x msmsgsintialemailnotification; charset=UTF-8

Inbox-URL: /cgi-bin/HoTMail

Folders-URL: /cgi-bin/Folders

Port-URL: http://www.hotmail.com

EL siguiente comando para ser mandado pertenese a la version del cliente que actualmente esta siendo usado. El cliente manda al servidor el numero de la version y tambien informacion sobre la maquina como OS y los disenadores.

CVR 8x0409 win 4.10 i386 MSMSGS 4.5.0127 MSMSGS

aqui 0x409 win 4.10 i386 especifica que el cliente esta usando Win2 98 en una Intel Microprocessor y MSMSGS 4.5 0127 MSMSGS especifica la version y Fabricador no de msmsgs.exe (basicamente no la version de MSN Messenger)



El servidor responde con el URL para bajar la ultima version y otra informacion adicional.

Sin embargo no es necesario mandar este comando CVR, el protocolo de MSN va a trabajar correctamente a no ser de que mandes este comando.

Para cojer la lista de contactos devemos mandar este comando:

LST 9 RL

Al mandar este comando el servidor manda la lista de contactos en "Reverse form" o forma de vuelta, el "reverse form" es basicamente una lista de usuarios que te pueden ver cuando estas online o en linea y mandarte mensajes. Alternativamente tambien puedes pedirle al servidor un "forward list" o siquiente lista. con este comando: LST 9 FL. "Forward list" contiene una lista de todos los contactos que el usuario a anadido a su lista.

El servidor responde de esta manera:

LST RL 69 1 19 [email protected] eLGiOva

LST RL 69 2 19 [email protected] Acid

LST RL 69 3 19 [email protected] Rojodos

LST RL 69 4 19 [email protected] OdRa

LST RL 69 5 19 [email protected] eLGiOva

LST RL 69 6 19 [email protected] mauro

**Cada vez que un contacto cambia su estado a online o entra a MSN, el serbvidor (NS) nos manda a nosotros el siguiente comando:

NLN 10 NLN [email protected] AtRoj

Y cuando un contacto se desconecta o cambia su estado a Offline o Sin conexion, el serivor manda el siguiente comando:

FLN 10 FLN [email protected] MaUroLo

Con el protocolo MSNP7 MSN a introducido un nuevo reto de autenticasion del mecanismo, el servidor de MSN manda la clave de autenticasion en la cual el usuario tiene que acertar correctamente para continuar con la seccion:

CHL 0 20881396011366812350

El cliente tiene que mandar el MD5 equibalente de esta cadena, la cual es formada al anadir el "hash" o el picadillo con la cadena "Q1P7W2E4J9R8U3S5". Entonces la cadena final va a ser mandada al servidor va a ser el md5 equibalente de 20881396011366812350Q1P7W2E4J9R8U3S5

Ejemplo :

MD5string(20881396011366812350Q1P7W2E4J9R8U3S5 )

entonces la respuesta del Cliente va a ser algo asi:

QRY 18 [email protected] 32
0212eaad0876afb8505859ca75d21a78

aqui el 18 es un "Trial Id" o una Identificasion de Intento. Remplazalo por el "trail id" de tu programa.

EL servidor va a responder de la siguiente forma si la Autenticasion es correcta:

QRY 18

Visita www.MaCroTech.tk Para ver la segunda Face

juanma.m.d
26-10-2002, 09:01
Revisale las faltas de ortografia y las frases sin sentido q no lo he podido leer

eLGiOva
26-10-2002, 22:39
Pues si no lo puedes leer no lo leas, por que en todas las webs que lo e puesto lo han entendido muy bien, y lo que pasa es que hay muchos novatos y necesitan saber que se ignifican las cosas bien, entonces relajate y si no lo puedes leer pues te jodistes

The_chacal
27-10-2002, 01:57
xDDD

Giskard
27-10-2002, 02:32
el tutorial está muy bien, felicidades :)
Pero tiene razón juanma, es recomendable que procures cuidar la ortografía y la gramática.
Por ejemplo:

La fase de autenticasion consisted el logion al servidor de MSN y
tambien o el cojido de contastos de tu lista

debería quedar algo así:
La fase de autentificación consiste en hacer login al servidor de MSN y
también agregar contactos en tu lista.

sólo es mi opinión, haz hecho un gran trabajo.
saludos

THE_CROW
27-10-2002, 12:36
cuidad a este chaval que es el orgullo de mi team!!!! :D:D:D.
Q faltas ni que leches???eLGiOva!!eLGiOva!! :D:D:D.

POSIX
27-10-2002, 20:17
Dejadl a mierda del VB y programad en un lenguaje de verdad.

juanma.m.d
27-10-2002, 22:57
A ver lo primero con esos conocimientos tan elevados y con la mierda de las faltas de ortografia de los niños de 1º de primaria tio no t flipes ok ¿? y ese modo de hablar a los q conozcas ***********a mi q no me conoces me respetas ok ??? encima q t aconsejo ...

THE_CROW
28-10-2002, 17:45
aqui se respira amorr.... enga dejemos de picarnos de una vez ;) . Mierda VB?? y me lo dices cuando me compro un manual de 1000 páginas?? por cierto q mamones q te dicen q los códigos fuente de los ejemplos están en la web....404 not found :_-( .

TseTse
29-10-2002, 09:11
Pues cojes y te largas analfabeto.

TseTse

CrAcKzMe
29-10-2002, 10:11
eLGiOva, este foro tiene sus normas y hay que respetarlas, ya que es un aforo publico, entiendes? Si no te acojes al respeto estás fuera de las normas y por lo tanto fuera de HackHispano
Salu2

eXcalibur
29-10-2002, 11:05
elgiova, tus intenciones han sido buenas al principio, no lo estropees.

THE_CROW
29-10-2002, 14:19
Giova: recuerda q soy moderador de aqui, y a este foro y sus miembros les tengo mucho cariño, así q a ver si te comportas please.

Por cierto.. Giova vive en EEUU y hace un esfuerzo al traducirlo al español.
Hay q ser tiquismiquis.... xq se entiende perfectamente.
La info es muy buena y nos quejamos de la ortografia...

jocanor
18-11-2002, 19:45
hola, lo primero es decir a elgiova k me gusta muchisimo su manual, tengo una web, i si me da su consentimiento me gustaria publicarlo...
la url de la web r ego me dicen k hago publicidad XDDD

la segunda cosa, es mas bien una tonteria,pero es k vereis...
yo hace mucho mucho tiempo (mas de 5 meses)
o mas... cogi i ice un escaneo de ips infectadas por netbus, en fin k pille una, era de alguien k taba jugando a un juego de coches, sake otro capturarpantalla i vi k taba abierto el msn messenger, i estaba conectao alguien con el nick the_crow el dueño del pc infectado llevaba el nick : rafita, entonces al siguiente screendump vi k habia echo un netstat, i no se si me pillo la ip, desde entonces estoi preocupao i del miedo no he vuelto a usar un netbus en mi vida, pido mil disculpas a rafita, i pido k si me pillaron la ip, k no me hagan nada por favor ( k penoso k soy, pero es k me asustao) ueno, espero k me entendais, ya hace mucho de eso, espero k este olvidado

un saludo!!!:(


p.d. por si por casualidad, el the_crow akel era el de HH me gustaria decrile k este ordenata de trabajo, i k no le haga na... (ueno hace 5 meses pero no se...)

rockbyte
15-11-2005, 07:39
yo no me me conecto ,pero en cuanto tiro una frase para enlazar ,se desconecta, q toy haciendo mal?

saludos

nando.rockbyte

j8k6f4v9j
15-11-2005, 07:44
yo no me me conecto ,pero en cuanto tiro una frase para enlazar ,se desconecta, q toy haciendo mal?

saludos

nando.rockbyte
¿Te has fijado en la fecha del último post?

dtsolterin
26-01-2006, 11:33
Hola amigos
leyendo el tutorial me ha surgido entre otras las siguientes dudas
¿Es aplicable esto al mesenger de yahoo?
y esta otra mas importante y que persigo hace tiempo pero que voy despacito:
con este tutorial y algo de idea
¿se podria crear un booter?
con permiso del moredador expondre algo muy brebe
pertenesco a una liga de juegos en las salas de yahoo
y claro en estas salas entra cualquiera al ser publicas
pues bien, de vez en cuando entra algun comemierda a molestar la tranquilidad de los que ahy estamos reuniudos jugando torneos
y mi pregunta es
si hay porgramas que tiran de las salas de chat , podria existir o crearse alguno que tire de estas salas a esos comemierdas.
¿o no es posible? , yo no se que datos nesesito para comenzar a estudiar el asunto y agradeciria cualquier ayuda
muchas gracias y disculpen mis errores ortograficos.
espero haberme expresado correctamente

CrAcKzMe
26-01-2006, 12:35
Hola dtsolterin. Pese a que el tema está abierto se inició hace años, lo que lo convierte en un post lleno de polvo.
Es conveniente fijarse en las fechas de los mensajes, en este caso te recomendaría que hubieras expuesto tus dudas en un nuevo post (tal vez mejor en Seguridad General que no en programación.)
Saludos y suerte.


CrAcKzMe desde el polvo :D

dtsolterin
26-01-2006, 19:35
okis amigo muchas gracias por tu aclaracion y consejo , a ver si cambiando de sitio consigo algo de informacion al respecto
nuevamente gracias a todos.

ChotaJr
23-03-2006, 15:20
:mad: Bravo Giovanni muy buen manual, no hagas caso de esas tonterias de la falta de ortografia, a cualquier compilador le vale |#"!#$"#$%"#$ si escribes bonito o no , lo importante es usar las sentencias adecuadas y todos los novatos (me incluyo) es obvio que a veces no entendemos todo lo que se escriba pero por favor para ser un buen programador hay que usar el cerebro y estudiar un poco por cuenta propia si todo nos lo dan digerido querra decir que no estamos alimentando de puro vomito de otras personas y creo que ha llegado la hora de que nosotros seamos los que vomitemos para otros, es solo un punto de vista.

ChotaJr
23-03-2006, 15:21
:mad: Bravo Giovanni muy buen manual, no hagas caso de esas tonterias de la falta de ortografia, a cualquier compilador le vale |#"!#$"#$%"#$ si escribes bonito o no , lo importante es usar las sentencias adecuadas y todos los novatos (me incluyo) es obvio que a veces no entendemos todo lo que se escriba pero por favor para ser un buen programador hay que usar el cerebro y estudiar un poco por cuenta propia si todo nos lo dan digerido querra decir que no estamos alimentando de puro vomito de otras personas y creo que ha llegado la hora de que nosotros seamos los que vomitemos para otros, es solo un punto de vista.
bravisimo Giovanni

DEATH_RIDER
21-07-2006, 00:04
Alguien saben donde esta el resto del manual?.....!!!! la URL no funciona....

Marchi
21-07-2006, 01:04
Es tu primer post, deberias leerte las normas.
www.google.com responde cualquier pregunta.

http://www.venkydude.com/articles/msn.htm

Cierro el post.