How to make mig33 software Packet analysis [Part 5]
Dear Mig33 Developers ,
How are you all ?? what’s about your mig33 programming practice ??
02 00 C8 00 01 00 00 00 7E 00 13 00 00 00 01 00 …….. ~…….
00 10 00 00 00 04 00 00 00 15 00 0F 00 00 00 05 …….. ……..
65 6E 2D 55 53 00 0D 00 00 00 04 00 00 00 A9 00 en-US… ……..
0C 00 00 00 04 00 00 00 AA 00 0B 00 00 00 04 00 …….. ……..
00 00 0E 00 09 00 00 00 01 01 00 08 00 00 00 04 …….. ……..
6A 32 6D 65 00 07 00 00 00 0D 4A 32 4D 45 76 34 j2me…. ..J2MEv4
2E 32 30 2E 32 39 31 00 05 00 00 00 03 62 65 31 .20.291. …..be1
00 03 00 00 00 02 01 A4 00 02 00 00 00 01 02 00 …….. ……..
01 00 00 00 02 00 01 …….
Are you familiar with the above mig33 packet ?? You should be known about it if you want to be a Real Mig33 software developer. Ya this Mig33 login packet. I have used smart sniffer, Sjboy and Mig33 4.2 to capture this packet. Let’s try to understand the Mig33 login packet Pattern.
02 00
This header is always “02 00″ for Mig33 login packet, other header than “02 00″ will not be processed.
C8
This packet type will depend on what packet it is, “C8″ means this is a Mig33 Login Packet.
00 01
Something, but let’s call it a 1 bytes Increment for now. Sometimes this 2 bytes always has the same value in packets.
00 00 00 7E
4 byte packet’s Length. This is the Packet’s total length byte, count from the first to the end byte of the packet, including this Packet’s length byte. 00 00 00 7E = 126 Decimal. this packet has 126 bytes in total. Any confusion ? count it yourself 😛
00 13 00 00 00 01 00
00 10 00 00 00 04 00 00 00 15 00 0F 00 00 00 05
65 6E 2D 55 53 00 0D 00 00 00 04 00 00 00 A9 00
0C 00 00 00 04 00 00 00 AA 00 0B 00 00 00 04 00
00 00 0E 00 09 00 00 00 01 01 00 08 00 00 00 04
6A 32 6D 65 00 07 00 00 00 0D 4A 32 4D 45 76 34
2E 32 30 2E 32 39 31 00 05
This is additional part of the packet, a packet can contain this part or not, depend on that packet’s type, example, in a Keep alive packet, it doesn’t have this additional part.
00 00 00 03
4 byte Sub item’s Length. That means the length of Mig33 users name
This Tell Client or server the length of Sub item 1 block content.
62 65 31
Sub item’s content, its lenght determine by sub item’s Lenght before (3).
Tell client or server This is the Subitem block content.
00 03 00 00 00 02 01 A4 00 02 00 00 00 01 02 00
01 00 00 00 02 00 01 02 00 CA 00 02 00 00 00 0A
00 01 00 00 00 04 F5 92 89 06
In order to get easy conception we Take the above code as a constant additional content. Hope Basic analysis of Mig33 login Packet is Done. This is the Sending packet of mig33
That means I’m (be1) requesting Mig33 server for login Permission. After successful sending login packet Mig33 will Send an objective question to check your Login process.
—————————————————————————————————-
—————————————————————————————————-
02 00 c9 00 01 00 00 00 55 00 01 00 00 00 09 63 ……..U……c
79 43 32 66 61 38 66 33 00 02 00 00 00 40 66 36 yC2fa8f3…..@f6
33 31 31 39 39 65 32 37 61 63 34 66 34 35 62 39 31199e27ac4f45b9
37 35 65 32 31 31 37 37 61 62 37 63 64 62 66 37 75e21177ab7cdbf7
34 65 31 63 30 30 31 39 62 37 34 33 35 61 39 38 4e1c0019b7435a98
33 33 63 32 32 65 34 63 33 35 34 33 38 61 33c22e4c35438a
—————————————————————————————————-
—————————————————————————————————-
This is the Objective Question. 😛 Surprised !!!! where is my question ?? 😛
OK ok Let’s try to Describe it. look at the above packet carefully.
02 00 c9 Header of Question.
There are 2 answers One is 00 01 sub header answer and another is 00 02 sub header answer.
Keep in Mind 00 01 is perfect Sub Header for Detecting correct Answer. SO can you mention which is the correct length for Detecting Answer now ? > 00 00 00 09 < This :) So 63 79 43 32 66 61 38 66 33 This is the Correct answer. Right ?
Function hashCode(Value)
Dim i As Integer
Const maxInt = 4294967295#
Const maxPostInt = 2147483647
Dim h As Currency
Dim div As Long
h = 0
For i = 1 To Len(Value)
h = h * 31 + Asc(Mid(Value, i, 1))
If (h > maxInt) Then
div = Int(h / (maxInt + 1))
h = h – (div * (maxInt + 1))
End If
Next i
If h > maxPostInt Then
h = h – maxInt – 1
End If
hashCode = h
End Function
This is the hash Code generator Function. We have to collect the Right answer and Make a Hash code with this answer.
Public Function KirimHashCorrect_Answer(password As String, Correct_Answer As String)
KirimHashCorrect_Answer = (HextoAscii(“02 00 CA 00 02 00 00 00 0A 00 01 00 00 00 04 ” & Left(Hex(hashCorrect_Answer(Correct_Answer$ & password$)), 2) & ” ” & Mid(Hex(hashCorrect_Answer(Correct_Answer &
End Function
This is the hash Code sending Function. No need to Copy those functions it’s already downloaded 😀 No need to remember it. just try to Understand the Login Process. The above functions are the Most Important functions of mig33 software development. It’s simple description of login packet We can get it easily by googling But Some Greatest Mig33 software Developers spent hundred of hours to make it. Respect for them who contributed to Discovered those Nice functions. This Tutorial has been dedicated to them.
How to make mig33 pc software [Part 1]
How to make mig33 pc software [Part 2]
How to make mig33 pc software [Part 3]
[@_@]