Quote:
Originally Posted by goldencoolsam
i guess it's useless, until you got a proxy server wich will unencrypt you the packet when you're unable to do it yourself xD
|
Im sure thats what he's trying to do ;)
1) The Encryption method is AES Rijndael, That alone still wont help you because you need to know the Encryption keys (* Key1 and Key2 *) to still be able to decrypt the packet.
2) Its Proxy, not "Proxy server", Its used to do the Packet Encryption and decrypting for you so yes, you can alter/inject your own packets at will.
3) Etheral and other "Sniffers" are no good for sniffing Encrypted MMORPG packets, Id suggest writing a C# sniffer to hook the Winsock Rec function in the Cabal.exe, just to let you log enough packets to work out the Key2 (* Clue : First packet contains it ;) *) and to work out the Packet structs
4) Codecaving is used to make the Exe have modified functions, i.e. Timestamp check added to the bottom of the exe which takes the current time and adds .45ms to the current time, then simply point all refrences to WinGetTime to this new WinGetTime code written at the bottom :cool:
5) Dll Injection is the best method for loading your Proxy/Bot as Gameguard being the hunk of shit that it is doesnt check refrenced dlls, the clue here btw is to Inject your dll via modifiying the oggvorbis.dll :rolleyes: Or easiar yet just Codecave Gameguard itself to call your bot program and then itll "Protect" your bots processes :D :rolleyes: :cool:
Quote:
Originally Posted by dlnqt
nice thread, hmm -2? So if I convert every hex then I'll minus every byte by 2, I'll get the unencrypted packet? Hmm.. So every time I catch a packet, I'll minus it by 2? I guess you need a proxy server for this kind of hacks..
My understanding of a proxy server is that it will catch packets client to server and vice versa, proxy server catches a packet then unencrypts the packet, edit the unencrypted packet, then encrypts it again so the client or server will accept it. You would really need a lot of knowledge and I think the hardest part is the encryption and time stamping..
For code caving, involves asm/debugging like the function of CE. I believe this is the way to go for newbies? Since we just need to point which goes to which address, nop jne jmp whatever. and I've also read that at some point in the program, the packet will be pointed to the encryption process inside cabalmain.exe, so if we can find that point, just dump the code before it's encrypted? Or if you made a code cave, just point it to the encryption address..
|
Nope, the -2 is part of the Algo used in the Modified AES Rijndael method Cabal uses
Nothing hard about it really, the Encryption is AES rijndael, the Key1 is in the Cabal.exe itself and the Key2 is recieved in the first packet from Server>Client... Timestamping is basically Calling the current time with WinGetTime and adding .45ms to the current time before sending the packet on to the server
Ollydbg is the PRO's Tool of choice for researching values and performing research to advance other areas of botting
You shouldnt try Flying before you can Walk, let alone run! but yes, you can inject packets into the exe itself so the exe does the Encryption for you,, but this is far from basic!
Quote:
|
For example in the chat game I said "hello" 5 times and I got 5 diferent but with the same size
|
Thats because the Timestamp changed in each packet, which would make the whole string be encrypted diffrently not just part of it...