Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding
You last visited: Today at 20:05

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Tech help with Packet Sniffing

Discussion on Tech help with Packet Sniffing within the General Coding forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Aug 2006
Posts: 1
Received Thanks: 0
I play a game called TerraWorld Online (terragaming.net). Its a game which you download to your computer and play it from there. I want to know if I could cheat the game by intercepting packets that I send to the server and sending them over and over. Also the game that I am talking about does not have any cheaters/macroers. So I dont think that the security is too high.

I was minning and these are the packets that I recieved and sent:

The first logs are from when I logged in. The username that I used was quilby. After the login I was minning.


Here I was minning and standing around. Also after you mine in terraworld sometimes you will get items. But they will be on the floor and you have to pick them.


I used Wpe Pro. If you want me to give you details of each packet then I will do that later.

Thanks for the help!
Quilby is offline  
Old 09/01/2006, 17:03   #2
 
unknownone's Avatar
 
elite*gold: 20
Join Date: Jun 2005
Posts: 1,013
Received Thanks: 381
I've not looked at the game or anything, so I can't do everything for you. Looking at your logs, I can see there is a clear solid structure that ALL packets follow (except the HTTP// ones in there for downloading pages.images). The structure is simple, and it just describes 4 individual strings. There are sizes and markers for the strings in the packets, although they are completely unneccesary, as they are all null terminated, and they are always in the correct order. (I wouldn't be proud to write that protocol anyway). All the unnecceasry crap is probably there for validation to try and detect people modding the packets.

//
//Start of packet
//

Each packet starts with 0x72. Its only use is to identify the start of a new packet. Each time you call recv(), you may receive multiple packets in one (because TCP is a streaming protocol. there are no markers at the start and end of each packet). This flag is in little-endian, which is the strange part, because the rest of the data is in big-endian.

Next, there is an int containing the size of the packet. This is in big endian now (use ntohl(). It contains the size of the packet from this point on. (the size of the whole packet minus the header (6 bytes), we've already read.

8 bytes of blank space. (May be for optional header information. useless anyway.

4 bytes big-e containing the size of the proceeding string. (The size does not include the NULL '\0')

String containing some kind of command. aka, Login, Attack, etc.

4 bytes big-e containing the size of the proceeding string.

String containing a username. ( ? ). null terminated again.

4 byte big-e containing 0x01. This always appears to be the same value. It looks like it marks the start of the main chunk of data, but look rather unneccesary, because the data has a fixed structure in each packet.

4 byte big-e containing size of next string.

String may contain coordinates in the form @x-[%x]y-[%y], or a target (for attacking, talking), or maybe other data.

1 byte containing 0x03. Again, looks pretty useless. just there as a seperator it appears.

4 byte big-e containing size of the next sting

String containing a second piece of data that relates to the last string (ie, password when the first string is the login name. null terminated.

//
//end of packet.
//


As for the strings, I can't clearly make them all out. It seems there is some kind of code/encrypted data/time at the start of most strings. I dunno what its for, but it looks like something you'd have to dig deeper into the client for. Find a debugger. Chances are you'll need to understand this before you can send anything, because its different in every packet, you'd be detected spamming certain packets. If you manage to hook the client in the right places, it may be possible to send the 4 strings and have the client automatically add the random values. That takes alot of hard work though.

Best thing to do after that, is look at packets when you trigger a certain event. for example, if you talk on global and say "Hi!", you're 4 strings in the packet will be something like
"broadcast", "quilby", "@allusers", "Hi!". //with the (random) digit info in it aswell.
Collect enough data like this and you will be able to do countless things. There may be server side protections, but chances are you'll find some bugs to exploit, and you'll be able to bot freey.

hope that helps a bit.
unknownone is offline  
Reply


Similar Threads Similar Threads
Packet sniffing
06/06/2010 - Atlantica Online - 0 Replies
Anyone tried to capture packets and resend them using wireshark or something?
packet sniffing
03/17/2009 - Dekaron - 9 Replies
wat packet sniffing program would be the best for 2moons
Packet Sniffing
11/09/2007 - Dekaron - 1 Replies
Can someone point me to the correct path to learn more about packet sniffing/sending? Or a few heads up on what I'm dealing with? Mainly my goal is to open the Parka Shrine commission dialog from anywhere within Parka Shrine (but not limited to there).
Packet sniffing
02/12/2006 - Lineage 2 - 0 Replies
i was experamenting with some packetsniffing i can get the packets and all but i dont know what to send back for enchanting like what packet there is so many ... so if any one can help or noes which one it is plz help me and the community out im not sure if this is old or ew but i know it works well on other games



All times are GMT +1. The time now is 20:06.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.