Quote:
Originally Posted by Mind Fuck
as not using the client at all ? fine that easy once u get to know all the packet structure and can get the seal/encryption/authsequence but how u will get to those ?
|
No.. Bypassing what I mean is you redirect your conquer client to your localhost so that in can connect to your proxy.
Quote:
Originally Posted by Mind Fuck
that's not a direct connection and built on the answer above
|
After you bypass your client means your proxy should be able to receive the request connection from conquer client. So you need to build a client/server application then you will need to study the authentication process and the keyexchange at gameserver. At this point, you should study the authentication en/de which you can find from this forum also. Once you can decrypt the login packet sent from server, you should be able to see the IP of the game server on which you will be replacing it with the IP of your localhost, encrypt the packet back and send to conquer client. At same time you should be able to start the gameserver on your proxy which will be listening to the gameserver port(This port also you can find from the packet sent by the server during authentication). Some people actually start there gameserver and loginserver at same time because they know already the port for the gameserver. But its your choice.
At the game server, the first packet that you receive from gameserver shall be decrypted by cast cipher.(You can also search from this forum or from private server). On that packet you will find the handshake data for your DH exchange. You will compute your new key and then replace the public key send from the server with your generated public key then send the packet going to conquer client. You will set your cast cipher again with the new key computed from your DH, plus you need to incorporate an md5 on that new key. The client process is same, the first packet that you will be receiving you will get also the handshake data from conquer client. Almost same process, then if you successfully setup the key exchange you should be able to see already the packet with TQServer or TQClient from your logs.
Quote:
Originally Posted by Mind Fuck
yeah im learning more asm to get the private dh key from client but it needs real skills at reverse engineering
|
I will tell you reverse engineering is tough my friend and you don't need to do that because most of the information needed for your proxy is available here unless TQ will change the encryption again.
Quote:
Originally Posted by Mind Fuck
well there is old packet structure at kov. fang pages and wikis , pretty much helpful but not up to date but still good enough as start
|
Yes, but the packet structure change a lot, so you will need to figure out by yourself on the latest packet.
Quote:
Originally Posted by Mind Fuck
who can get blowfish with rev engineering can easily patch and nop that checks , cuz i dun think tq do save logs and add checks (like none archer kill 100 monster in 5 second get botjailed) but yes i know about click client checks and stuff like that
|
Nah, it is not that simple. TQ anti bot can detect both memory based exploitation and proxy. As what Ihawtness said, there are thousand of ways to detect the debugger so memory based has no escape for this anti bot except that you will give your time studying how their anti bot work on the memory and nop all those execution(I am newbie on this stuff btw). What puzzled me is how they detect the proxy, I manage to bypass the conquer client without using any hooking but they still can detect my proxy after 35mins. And what make it worst, they will send it immediately to botjail. Well, you can study and crack the packet that they use to send in server and patch it with correct reply.