Looking for some advice.

General technological topics without their own forum go here

Looking for some advice.

Post by SentientApple on Wed Jan 14, 2015 10:33 pm
([msg=86287]see Looking for some advice.[/msg])

Hello, this is my first post. Here is what I have for you guys for now. I am a complete beginner however I have had minor experiences with programming in the past so learning a new language is going fast. My primary goal is to work in the healthcare field so this is just a hobby (unless things change but I doubt it). Do you think starting up with this at age 25 is too old? I can think back to teenagers who were already wizards at this stuff launching hacking software for online games at the age of 15 back in the Diablo 1, Warcraft 2, and Starcraft 1 days.

I have read many posts similar to the one I am creating and have started on a few projects already from their instruction. I have chosen Python as a starter language and have begun to learn it already. My alternate computer has an installation of Ubuntu. I have familiarized myself with utilizing BASH but doing simple things on a Linux operating system is still difficult. After I learn Python, get better at BASH, and learn to navigate the Linux operating with more ease, I intend to specialize in a sub-field of hacking. I am interested in game hacking. I want to be able to do simple things like fix the AI coding on someone's bot, make my own, manipulate single player games, and eventually get into hacking online games and dealing with their anti-cheat devices. My purposes are to make grinding easier instead of impacting game-play itself. I am personally not sure if game hacking requires a Linux distributions since the bulk of gaming is done on Windows/console but I decided to follow the write ups put out there already. They all say go for Linux so I did. If I should reverse this decision for my objective please let me know because my primary target is Windows games and (maybe) consoles. I also want to be able to crack various applications to donate it to communities around the web.

I would like some guidance on where to look for good information on these hacking sub-topics.

My goal is not to perform malicious attacks and the knowledge to do so utilizing already made tools such as Metasploit and port scanning is already within my scope of knowledge (would just have to refresh myself for an hour, unless my methods are all out-dated) and I have no interest in it. Utilizing tools without understanding the wizardry occurring behind the scenes is also unsatisfying and unimpressive to me. Thank you.
SentientApple
New User
New User
 
Posts: 5
Joined: Wed Jan 14, 2015 10:17 pm
Blog: View Blog (0)


Re: Looking for some advice.

Post by Iblist on Wed Jan 14, 2015 10:46 pm
([msg=86290]see Re: Looking for some advice.[/msg])

First off, welcome to the HTS! Enjoy your stay, yadda yadda. Now that that's out of the way, on to the meat of the topic.

Do you need Linux to hack video games? In short, probably not, but it helps.

If you're going to be hacking video games, tearing into the source code, deobfuscating, and finding out how everything works, that is a talk probably better done on a linux box. You can do it on windows, sure, but you'll find more/better tools to do the job on linux, so that will make your life easier.

With that said, I am by no means an expert in video game hacking, and what I just wrote could be completely wrong! Buuuut, from what I've learned about software hacking, linux is the way to go.
Those who create and rely upon brilliant and complex creations are often destroyed by some idiot plugging an infected usb stick somewhere they shouldn't have.
User avatar
Iblist
Experienced User
Experienced User
 
Posts: 68
Joined: Fri Jul 11, 2014 12:05 pm
Blog: View Blog (0)


Re: Looking for some advice.

Post by SentientApple on Wed Jan 14, 2015 11:42 pm
([msg=86292]see Re: Looking for some advice.[/msg])

Thanks for the input. Some guidance from people who know much about this area will be well appreciated. Since gaming is so popular, I take it there might be quite a few people out there (especially on this populated forum) who could also use the pointers. There are a lot of hacking sub-disciplines out there but most don't deal with this in ways that are obvious and I think some love might be needed. If no guidance is received, expect more from me but not until a much later date. It will take time.
SentientApple
New User
New User
 
Posts: 5
Joined: Wed Jan 14, 2015 10:17 pm
Blog: View Blog (0)


Re: Looking for some advice.

Post by ghost107 on Thu Jan 15, 2015 1:57 am
([msg=86294]see Re: Looking for some advice.[/msg])

If you want to go into game hacking, C/C++ and ASM are the languages you'll want to learn. if you really want to hack the game that was wrote into 32/64 bit binary, you would need to know how the inner working of the binary.

Python is good too, if you want to make scripts and tools, for the game.

For instance:
You want to modify something in the game, like the user interface, and the game stores the user interface into a file, without knowing the structure of the file, it is a little hard to unsderstand, but it is possible, the easiest way to do this is to debug and analyze the game while reading that file structure. Once you understand the structure you can always write a script or a small editor for it(this is called of Game Moding but it is still a part of game hacking).
User avatar
ghost107
Poster
Poster
 
Posts: 321
Joined: Wed Jul 02, 2008 7:57 am
Blog: View Blog (0)


Re: Looking for some advice.

Post by SentientApple on Thu Jan 15, 2015 2:26 am
([msg=86295]see Re: Looking for some advice.[/msg])

ghost107 wrote:If you want to go into game hacking, C/C++ and ASM are the languages you'll want to learn. if you really want to hack the game that was wrote into 32/64 bit binary, you would need to know how the inner working of the binary.

Python is good too, if you want to make scripts and tools, for the game.

For instance:
You want to modify something in the game, like the user interface, and the game stores the user interface into a file, without knowing the structure of the file, it is a little hard to unsderstand, but it is possible, the easiest way to do this is to debug and analyze the game while reading that file structure. Once you understand the structure you can always write a script or a small editor for it(this is called of Game Moding but it is still a part of game hacking).


Thanks for the reply. I figured after Python I'd have to branch out to one of the C languages. I don't know about ASM but I'll look into it. And yes, I want to start small with Python. I'll add the part about binaries into my buzz words to Google later. What is your opinion on using Linux distributions for this? The target games are Windows/Console. It just makes sense I should remain with Windows unless I want to do more with a skill set of programming languages, shell, and Linux. I recall, years ago, BASH was useful and easy for cracking WiFi and exploiting software vulnerabilities. For educational purposes of course.
SentientApple
New User
New User
 
Posts: 5
Joined: Wed Jan 14, 2015 10:17 pm
Blog: View Blog (0)


Re: Looking for some advice.

Post by cyberdrain on Thu Jan 15, 2015 11:04 am
([msg=86299]see Re: Looking for some advice.[/msg])

SentientApple wrote:Do you think starting up with this at age 25 is too old?

You're never too old to be what you never were. Enjoy your stay :)
Free your mind / Think clearly
User avatar
cyberdrain
Expert
Expert
 
Posts: 2160
Joined: Sun Nov 27, 2011 1:58 pm
Blog: View Blog (0)


Re: Looking for some advice.

Post by ghost107 on Thu Jan 15, 2015 11:57 am
([msg=86302]see Re: Looking for some advice.[/msg])

SentientApple wrote:Thanks for the reply. I figured after Python I'd have to branch out to one of the C languages. I don't know about ASM but I'll look into it. And yes, I want to start small with Python. I'll add the part about binaries into my buzz words to Google later. What is your opinion on using Linux distributions for this? The target games are Windows/Console. It just makes sense I should remain with Windows unless I want to do more with a skill set of programming languages, shell, and Linux. I recall, years ago, BASH was useful and easy for cracking WiFi and exploiting software vulnerabilities. For educational purposes of course.


You should go with the OS the games are made in, linux has wine, but wine it's not 100% compatible with windows applications, there are some features that wine does not support, for example File Mapping(Named Shared Memory), which wine does not support, I met some cases in my past experiences, you can patch wine to fix this, but you will lose a lot of time in fixing bugs just to make the application work.

You can also dual boot linux with windows, if you want to have them both, also you can add linux into a virtual machine, if you don't want to reboot your computer every time you want to do something in linux.
User avatar
ghost107
Poster
Poster
 
Posts: 321
Joined: Wed Jul 02, 2008 7:57 am
Blog: View Blog (0)


Re: Looking for some advice.

Post by SentientApple on Tue Jan 20, 2015 12:28 am
([msg=86381]see Re: Looking for some advice.[/msg])

ghost107 wrote:You should go with the OS the games are made in, linux has wine, but wine it's not 100% compatible with windows applications, there are some features that wine does not support, for example File Mapping(Named Shared Memory), which wine does not support, I met some cases in my past experiences, you can patch wine to fix this, but you will lose a lot of time in fixing bugs just to make the application work.

You can also dual boot linux with windows, if you want to have them both, also you can add linux into a virtual machine, if you don't want to reboot your computer every time you want to do something in linux.


Thanks again for the helpful advice. I've had experiences with Wine several years ago and it was a pain but I'm sure they've improved by now. At least, I am assuming. I will stick to Windows for now since it makes most sense to my objective.
SentientApple
New User
New User
 
Posts: 5
Joined: Wed Jan 14, 2015 10:17 pm
Blog: View Blog (0)


Re: Looking for some advice.

Post by QtDevl on Tue Jan 20, 2015 9:33 am
([msg=86384]see Re: Looking for some advice.[/msg])

I can give you a few good pointers. You seem to talk both about cracking and hacking, but since they're 2 different things they both take quite different paths.
Cracking: cracking a game means removing any protection it has including DRM, CD-CHECKS, CD-KEY checks. You usually need a good knowledge of Assembly and mostly a debugger( analyzing in realtime is way easier and faster than doing it offline, also unpacking usually needs to run the game at least once ). Ollydbg does a pretty good job at this, but others are good too. You should first start learning assembly, doing some crackmes and such then moving gradually from easy protections ( simple cd-checks, simple packers like UPX even if not related to games ) then doing Tages, Safecast, Older Securom, Safedisc 1,2,3, Safedisc 4 ,Newer Securom, all in this order. If you manage to make it up to the latest Securom ( which has a custom VM as protection btw ) you'll pretty much be ready to take on anything out there. But actually stopping at safedisc 3 should be enough to be advanced. On a sidenote most of current games are on steam and use a combination of steam DRM and steam CEG. The latter which in most of the implementations can be defeated with a simple process dump ( heh ).
Search for tutorials around ( tuts4you has a lot of them, arteam has some too ) and get going!

Hacking: hacking a game usually means making it work in a way not intended by it's original developers. You need both a good knowledge of Assembly and a programming language. Doing it is usually split in two steps, analysis and coding. The first one is done in realtime with a debugger or a tool ( like cheatengine ). Offline analysis can be done to get data structures but it's just so much harder. The second step involves using the offsets found in step1 to create a program that modifies them ( like getting more gold ) or locks them ( like no decreasing life ). Any programming language that can attach to a process or read memory are good. My personal favuorite is c#, but whatever moves your soul is ok.
A trainer can be simple or hard depending on what you want to do. For example giving the player say 1000 gold can be as easy as changing one address, creating a bot for a game means changing a bit more addresses ( do take a look at wow bots for example ). Some more advanced trainers mimick entire objects instead of simple offsets( like a player object having various properties mapped to various offsets).
There are a lot of starting resources out there, I'd start taking a look at cheatengine, at the various sample trainers it has, then google-ing around.
You don't REALLY need ASM to be honest, Cheatengine+ a programming language "could" be enough for most games.

When you start experiment if you get stuck at any point do feel free to ask, whatever path you take!
If freedom is outlawed, only outlaws will have freedom...
QtDevl
New User
New User
 
Posts: 40
Joined: Sat May 17, 2008 3:50 pm
Location: my own world
Blog: View Blog (0)


Re: Looking for some advice.

Post by SentientApple on Tue Jan 20, 2015 7:32 pm
([msg=86389]see Re: Looking for some advice.[/msg])

Thanks for the useful information QtDevl. Since there was a lot of good info here I went ahead and saved it all for faster access. After I finish learning all of the fundamentals of Python, I will look into assembly and debugging since both of those seem to be what comes next in the pipeline. When I am comfortable with these things, I will start branching into actual applications and will be sure to remember your name that day. For now, I need to break off some dust and lay down the basics. So far, I was looking for a rough guideline and the information presented thus far is good.
SentientApple
New User
New User
 
Posts: 5
Joined: Wed Jan 14, 2015 10:17 pm
Blog: View Blog (0)


Next

Return to General

Who is online

Users browsing this forum: No registered users and 0 guests