A (perhaps) better question: How does it work?

03/09/2012 01:20 Penba#1
If anyone would be willing to give me a little haxor history lesson:

What exactly is the magic behind the mods/hacks? I know a lot of people enjoy using them to pretend they are elite pvpers (see what i did there?), and a lot of people just download and use the hacks black box, not knowing how they work.

I don't particularly want to be a leech, but I also don't particularly know enough yet to not be one. Any background, helpful links, and minimally-trollish replies are much appreciated. Thanks in advance for any assistance
03/09/2012 01:39 adam_j#2
Quote:
Originally Posted by Penba View Post
Any background, helpful links, and minimally-trollish replies are much appreciated.
What a conflicting statement.

You SAY you don't want to be trolled, yet, you post on Epvp.
03/09/2012 02:51 jas161#3
Quote:
Originally Posted by Penba View Post
If anyone would be willing to give me a little haxor history lesson:

What exactly is the magic behind the mods/hacks? I know a lot of people enjoy using them to pretend they are elite pvpers (see what i did there?), and a lot of people just download and use the hacks black box, not knowing how they work.

I don't particularly want to be a leech, but I also don't particularly know enough yet to not be one. Any background, helpful links, and minimally-trollish replies are much appreciated. Thanks in advance for any assistance
Research packets.
03/09/2012 03:22 Kevsprk#4
General mods work by modifying the code that the client is using in memory. First, a little primer on general code..

The programmers over at Devcat write the game in C++. Then they run it through something called a compiler to get the actual, runnable files that we use to play. The compiler takes this nice, easy to read C++ code and translates it into the language that our computers understand. This language is pretty difficult for humans to read, but its possible.

Mods just modify the code that the game is reading in memory. For example, the data folder mod. That exists in the game already, its just disabled. The mod that enables it modifies the games memory to re-enable it.

Pake mods, mods that interfere with the packets themselves work a bit different.

The game client communicates to the server in little bursts of data, called packets. When you move, you send a certain packet, telling the server what you want to do. The server works its magic, and if the move was valid, sends packets to all other characters around you, telling them about your move. Then their clients show you moving.

Mabipake 'hooks' the game's functions for sending and receiving these packets. This means that instead of a packet being read ONLY by the client, it is detoured into Mabipake first. Mabipake can do whatever it wants to the packet before the client ever sees it. Mabipake also 'hooks' the game's send function, so it can inject its own packets into normal communication. These packets can be malicious, as the client didn't create them to be compatible with the server.

The server understands some packets that were never meant to be used, or were used a long time ago. These packets are huge security holes in the server. They often aren't checked for malicious activity or can be used to give the player a huge advantage. Two examples are the status modification packet and the invisibility packets.

I found a packet, long ago, that let me activate any status on my character. From exp boosts to demigod status. It was quite an amazing find, of course it was just a few months until others figured out how I did it through guessing until they got it, so now its patched up and no longer recognized by the server.

Another interesting packet was the pet hide packet. I was looking at the packets pets used and was trying to apply them to my actual character.. Then I tried the pet 'fetch' packet, it allows pets to become invisible for a while, while they fetch an item for you. The server didn't check if you were a pet when you sent that packet, so I was able to become completely invisible using this. Of course, again, it was only a matter of time before others figured out how I did this, and because of abuse it is now patched up.

If you have any questions or I wasn't clear about something, feel free to PM me or ask here.
03/09/2012 03:34 initHag#5
But isn't that hide status used for a lot of other crap?

Like say, when you go on an rp, you real character actually stays at the entrance doesn't it? Just hiding?
03/09/2012 03:37 Kevsprk#6
Well, I'm talking about the original packet, it was just used for pet hide. The new 0x526 (or whatever) one was never naturally used, it was discovered after I introduced the idea of brute force packet scanning.

I'm pretty sure you're right about characters staying at the entrance, but I don't think you send a packet for that; pretty sure the server does all that.
03/09/2012 03:41 initHag#7
Well I'm not saying you send a packet for that, just referring to the name given to hide.

I'm just curious, was that auto rez function based on a packet?
03/09/2012 03:47 Kevsprk#8
Yeah, it would wait for the server to send you the "you're dead" packet, and revive you by sending the "revive me" packet instantly.
03/09/2012 04:05 initHag#9
Thanks.

Now this is something I can't really think of a way to google.
You said 0x526, now Idk stuff about this but the simplest simplest simplest crap.

How could you end up with such opcode without having to scan?
Or to rephrase that, could you relate an opcode # it self to an ingame function and vice-versa?


Also, you have msn/aim and/or cryptocat?
03/09/2012 08:28 shadowsforu#10
Quote:
Originally Posted by initHag View Post
Thanks.

Now this is something I can't really think of a way to google.
You said 0x526, now Idk stuff about this but the simplest simplest simplest crap.

How could you end up with such opcode without having to scan?
Or to rephrase that, could you relate an opcode # it self to an ingame function and vice-versa?


Also, you have msn/aim and/or cryptocat?
Yes, if you knew what you were looking for you could view the disassembly and build packets based off the data. Although you would have no idea what they were used for.
03/09/2012 14:08 lukinhas6197#11
is the actual GM hide patched, alwaho? Or just the bird fetch hide?
03/09/2012 15:13 jas161#12
Quote:
Originally Posted by lukinhas6197 View Post
is the actual GM hide patched, alwaho? Or just the bird fetch hide?
"Gm hide" is fetch hide.
03/09/2012 21:43 Kevsprk#13
Well, the original packet that I found first was. Now there's the 0x526 packet that hasn't ever been used in the client, to my knowledge. (I wonder why Alwaho would know if its patched.. He doesn't even have pake right now)
03/09/2012 22:07 lukinhas6197#14
Quote:
Originally Posted by jas161 View Post
"Gm hide" is fetch hide.
eh.. no it isnt. There is an actual GM hide packet
03/09/2012 22:39 Kevsprk#15
No, there is no actual GM packet we can use other than the one accessible via the GM panel, which you cannot activate without having GM status set to your account.

The 0x526 SEEMS like real GM hide because you can get it to last forever by sending it twice in a short time.