AMA: Computer Specialist

Mundane & Pointless Stuff I Must Share: The Off Topic Forum

Moderator: Moderators

krainboltgreene
Apprentice
Posts: 50
Joined: Sun May 30, 2010 6:15 am
Location: Eugene, Oregon
Contact:

AMA: Computer Specialist

Post by krainboltgreene »

AMA, or "Ask Me Anything", is a term from Livejournal/Reddit where the OP is in a position to answer questions about something specific.

Since lately there have been a few Shadowrun threads about the Matrix I thought I'd do this.

I'm a computer specialist which basically boils down to knowledge of all parts of computers, computer science, and related fields. I'm a professional programmer in 3 languages (Clojure, Python, and Ruby), academic follower of 7 more (Haskell, Erlang, Common LISP, F#, Forth, Modula-2/3, Scheme).

I've done Computer Security work as well as System Administration. I've even written my fair share of cracks and malware.

Ask me anything (Even RPG related).
User avatar
Cynic
Prince
Posts: 2776
Joined: Fri Mar 07, 2008 7:54 pm

Post by Cynic »

this might constitute as trolling because I'm not sure if it can be done or not.

But is there anyway to add a ultrasound mod to a phone or tablet pc.

I saw an app recently that shows a picture of what a baby at X level of pregnacy should look like in the stomach. But that's just that. I'm tryign to see if we can kick up a notch.
Ancient History wrote:We were working on Street Magic, and Frank asked me if a houngan had run over my dog.
krainboltgreene
Apprentice
Posts: 50
Joined: Sun May 30, 2010 6:15 am
Location: Eugene, Oregon
Contact:

Post by krainboltgreene »

It's not trolling unless you're trying to elicit an emotional (angry, pissed) response from me.

You're probably thinking about this: http://hackedgadgets.com/2009/05/12/cel ... ltrasound/
User avatar
Cynic
Prince
Posts: 2776
Joined: Fri Mar 07, 2008 7:54 pm

Post by Cynic »

awesome.
Ancient History wrote:We were working on Street Magic, and Frank asked me if a houngan had run over my dog.
RandomCasualty2
Prince
Posts: 3295
Joined: Sun May 25, 2008 4:22 pm

Post by RandomCasualty2 »

Here's a computer question I always wondered...

How do you go about writing hacks and stuff? Like lets say a simple maphack for Starcraft, since people have told me it's really easy.
krainboltgreene
Apprentice
Posts: 50
Joined: Sun May 30, 2010 6:15 am
Location: Eugene, Oregon
Contact:

Post by krainboltgreene »

This really depends on the situation. For Starcraft I'm going to assume it's a script that changes the files received over battlenet about the game.

You need to know a programming language, how the files are structured, and what to change.
RandomCasualty2
Prince
Posts: 3295
Joined: Sun May 25, 2008 4:22 pm

Post by RandomCasualty2 »

krainboltgreene wrote:This really depends on the situation. For Starcraft I'm going to assume it's a script that changes the files received over battlenet about the game.

You need to know a programming language, how the files are structured, and what to change.
Well in this case all the information is clientside, since your client basically has a copy of where all the units are, there's just a fog of war placed over your map basically which during the game prevents you from seeing everything. But you don't actually have to analyze any network traffic.

But my big question is how would you actively find that stuff in memory? Does it constitute going over the actual game .exe file in Assembly? or are we talking some kind of other method?

I'm familiar with some basic programming languages like C++ and Java. And I figure you could use pointers or something to change various addresses in memory. My main problem though is just actually figuring out what you change.
Last edited by RandomCasualty2 on Thu Jun 17, 2010 4:52 am, edited 1 time in total.
User avatar
Count Arioch the 28th
King
Posts: 6172
Joined: Fri Mar 07, 2008 7:54 pm

Post by Count Arioch the 28th »

Know of any drivers for an nVidia Geforce FX5200 that would work with Windows 7? I don't seem to be able to find one with my current computer skilz.
In this moment, I am Ur-phoric. Not because of any phony god’s blessing. But because, I am enlightened by my int score.
User avatar
RobbyPants
King
Posts: 5201
Joined: Wed Aug 06, 2008 6:11 pm

Post by RobbyPants »

RandomCasualty2 wrote:
krainboltgreene wrote:This really depends on the situation. For Starcraft I'm going to assume it's a script that changes the files received over battlenet about the game.

You need to know a programming language, how the files are structured, and what to change.
Well in this case all the information is clientside, since your client basically has a copy of where all the units are, there's just a fog of war placed over your map basically which during the game prevents you from seeing everything. But you don't actually have to analyze any network traffic.

But my big question is how would you actively find that stuff in memory? Does it constitute going over the actual game .exe file in Assembly? or are we talking some kind of other method?

I'm familiar with some basic programming languages like C++ and Java. And I figure you could use pointers or something to change various addresses in memory. My main problem though is just actually figuring out what you change.
I have a coworker who used to do that for fun, and he explained it to me once.

From my understanding, you can mod things to be able to get info you normally couldn't have, such as removing the fog of war, and possibly getting a list of all enemy troops.

I don't think you can easily add units or resources to your side, though, because I thought that each person running the game would track all of this info separately, and if at any point they weren't in sync, the game would know that someone had hacked it. I don't know what happens at this point, but I assume the match would just end.

As for the specifics of how to get at and read the info, I'll have to ask him to see if he remembers. I know it does involve going in and looking at the memory allocated for the game, but I don't know much more than that.
User avatar
Murtak
Duke
Posts: 1577
Joined: Fri Mar 07, 2008 7:54 pm

Post by Murtak »

RandomCasualty2 wrote:Here's a computer question I always wondered...

How do you go about writing hacks and stuff? Like lets say a simple maphack for Starcraft, since people have told me it's really easy.
- First you need to know how the game/program works. This will let you figure out what to change. (Educated guesses may suffice, particularly when you can rapidly refine your guess.)
- Then you need to find out how to change the value. This may be trivial (unencrypted files on your own disk), easy (unencrypted memory on your computer) or damn hard (properly verified values on a server not under your control).
- Finally you will probably want to automate your hack (and I guess try to make it as subtle as possible). Obviously this step is not needed if you only need your hack once.



An example I am somewhat familiar with:
Let's say you want to change a an entry on a wiki article without having access to the admin interface. First you find out how the article itself is displayed. You learn it is HTML, so you only need to change some plaintext.

Your next step depends on what kind of wiki you work with. If it is one of those local javascript-only wikis you can just search the file for the current text and replace it. Alternatively you can change the code for the admin interface so you do get the interface when you look at the article. If the wiki is online it gets harder. If you can get to the change form for a different entry you might be able to find out the pattern used to send data to the server and emulate it, the idea being that the server only verifies whether you are allowed to click on the "change article" button, not whether you are allowed to actually change the article (this is depressingly common). Failing that you will need to search for another vulnerability.

Once you find an approach that works you will probably want to automate it. This step should be trivial in that you no longer need to figure out what to do, but may still involve a substantial amount of work, especially if it is supposed to be easy to work with.



Those same steps should work to hack a game, whether online or offline. Basically you need to acquire domain knowledge, find a vulnerability and then automate the process.
Murtak
User avatar
Gelare
Knight-Baron
Posts: 594
Joined: Sun Aug 10, 2008 10:13 am

Post by Gelare »

As someone who has been eagerly awaiting Starcraft 2 for years and who got only a tantalizing taste of the beta, it depresses me to think how many people I'll be fighting will be using maphacks.

Here's a question: what are some common mistakes people make when assembling computers (such as, but not limited to, static shocking their hardware into paperweights), and how can they be avoided?
RandomCasualty2
Prince
Posts: 3295
Joined: Sun May 25, 2008 4:22 pm

Post by RandomCasualty2 »

Gelare wrote:As someone who has been eagerly awaiting Starcraft 2 for years and who got only a tantalizing taste of the beta, it depresses me to think how many people I'll be fighting will be using maphacks.
Yeah, heh. I'm just mostly curious how it's done. Not that I would actually use one. Mostly because I've heard it's "easy" from a variety of people, and I've taken several years of computer courses and still have no fucking idea where you'd even start. I actually know how you'd change values, I just don't have any idea how you'd find the value you need to change or how that would be remotely "easy", since mapdata isn't like searching for plain unencrypted text. Like you basically have no idea how it's stored or what you're even looking for, so like randomly probing memory wouldn't even work.

The good news in SC2 is that the CD-keys are going to be a bit more secure, and Blizzard is banning people for hacking, or at least they have since WC3 and will likely continue that trend in SC2. And it's much easier to ban people's accounts in the new battle.net I think.
Last edited by RandomCasualty2 on Thu Jun 17, 2010 6:47 pm, edited 2 times in total.
Surgo
Duke
Posts: 1924
Joined: Fri Mar 07, 2008 7:54 pm

Post by Surgo »

Gelare wrote:Here's a question: what are some common mistakes people make when assembling computers (such as, but not limited to, static shocking their hardware into paperweights), and how can they be avoided?
The #1 problem I've had is plugging in the positive/negative polarity of wires backwards. I've found on most motherboards and connectors I've used that they are marked very poorly among many other poorly marked pins, so you're never sure what goes where.
User avatar
Gelare
Knight-Baron
Posts: 594
Joined: Sun Aug 10, 2008 10:13 am

Post by Gelare »

Surgo wrote:The #1 problem I've had is plugging in the positive/negative polarity of wires backwards. I've found on most motherboards and connectors I've used that they are marked very poorly among many other poorly marked pins, so you're never sure what goes where.
Good to know. I'm planning to assemble a new computer (with the help of a friend who is way more knowledgeable on the subject than I) in preparation for Starcraft 2, and I'd like to avoid making rookie mistakes. Speaking of which, RC and anyone else who wants in, we should play sometime once it comes out.
RandomCasualty2
Prince
Posts: 3295
Joined: Sun May 25, 2008 4:22 pm

Post by RandomCasualty2 »

Gelare wrote: Good to know. I'm planning to assemble a new computer (with the help of a friend who is way more knowledgeable on the subject than I) in preparation for Starcraft 2, and I'd like to avoid making rookie mistakes. Speaking of which, RC and anyone else who wants in, we should play sometime once it comes out.
Hell yeah. I been playing the beta considerably ever since they started giving away beta keys for preorders. Though it's unfortunately shut down for a couple weeks right now until phase 2 of the beta... :(
Starmaker
Duke
Posts: 2402
Joined: Fri Mar 07, 2008 7:54 pm
Location: Redmonton
Contact:

Post by Starmaker »

I have a sorta dated PC (2005) that I need to reinstall WinXP on. Problem is, Windows does not see my SATA hard drive on install, and neither does Hiren's PE. I can however boot from the drive normally. A tech support lady at Seagate live chat told me to install chipset drivers for the motherboard, and ASUS is being an asshole as per their policy and is demanding a full list of hardware with serial numbers and whatnot before they consider answering my question.

And the question is this: assuming I find the correct driver for the chipset, how to install it with WinXP? (and another question: is lack of chipset drivers an actual possible problem or have they simply told me gibberish to close the ticket?)

Thank you.
User avatar
Gelare
Knight-Baron
Posts: 594
Joined: Sun Aug 10, 2008 10:13 am

Post by Gelare »

Question: Does reformatting a computer actually significantly improve performance? If so, why?
User avatar
Crissa
King
Posts: 6720
Joined: Fri Mar 07, 2008 7:54 pm
Location: Santa Cruz

Post by Crissa »

Gelare wrote:Question: Does reformatting a computer actually significantly improve performance? If so, why?
Yes. Less entries into tables and less files to sort through is just plain faster.

Specifically for PCs, there are many temporary files and virtual memory - as you use the computer, these files get pushed further and further back on the drive. The closer to the beginning of a physical drive (and to a lesser extent logical partition) the faster the files are located and can be physically read.

This is less of an issue for unix-based machines which have more hierarchy broadly built across applications, than for PCs which are more organic in structure.

-Crissa

(A+ certifications never expire)
TarkisFlux
Duke
Posts: 1147
Joined: Sun Jun 22, 2008 9:44 pm
Location: Magic Mountain, CA
Contact:

Post by TarkisFlux »

Starmaker wrote:I have a sorta dated PC (2005) that I need to reinstall WinXP on. Problem is, Windows does not see my SATA hard drive on install, and neither does Hiren's PE. I can however boot from the drive normally. A tech support lady at Seagate live chat told me to install chipset drivers for the motherboard, and ASUS is being an asshole as per their policy and is demanding a full list of hardware with serial numbers and whatnot before they consider answering my question.

And the question is this: assuming I find the correct driver for the chipset, how to install it with WinXP? (and another question: is lack of chipset drivers an actual possible problem or have they simply told me gibberish to close the ticket?)

Thank you.
You probably don't need the chipset drivers, just the 3rd party sata controller driver. There should be an F6 prompt (bottom line of the screen right after it goes all blue) to load the drivers early in the win xp install process, and you will need the driver on an old school floppy disk to load since that's all the install process accepts. You could actually build it into the install cd too, but I don't remember the procedure for that and you'd need an enterprise install.

Alternately you might be able to change the controller function in the bios until you get to one the installer will recognize with its default drivers. You might be stuck in sub-optimal disk running land after that, but better that than not getting it to install in the first place (I have had this issue with Dell PCs with variable sata / raid controllers).

And the seagate lady would be right about the chipset drivers if you had winxp installed already and then couldn't get it to recognize. Those aren't installed until after the OS though, so tehy will not help you with the install at all and she's all kinds of wrong in this case. The ticket shouldn't have gone to them anyway as it's not their hardware that isn't being recognized by the installer, so it's not a big deal. ASUS should have drivers for just the sata controller on their site though, and if they don't that's probably all you need to ask for if you get a ticket open.
Last edited by TarkisFlux on Fri Jun 18, 2010 3:25 am, edited 2 times in total.
The wiki you should be linking to when you need a wiki link - http://www.dnd-wiki.org

Fectin: "Ant, what is best in life?"
Ant: "Ethically, a task well-completed for the good of the colony. Experientially, endorphins."
krainboltgreene
Apprentice
Posts: 50
Joined: Sun May 30, 2010 6:15 am
Location: Eugene, Oregon
Contact:

Post by krainboltgreene »

[quote]Question: Does reformatting a computer actually significantly improve performance? If so, why?[/quote]

That is a dangerously vague question.
User avatar
Murtak
Duke
Posts: 1577
Joined: Fri Mar 07, 2008 7:54 pm

Post by Murtak »

Gelare wrote:Question: Does reformatting a computer actually significantly improve performance? If so, why?
When you freshly install your OS all files are neatly aligned on disk, none of them split. No extraneous programs are installed, no duplicate versions of files. As you use your computer you will install more and more programs. Files will get deleted, added, changed and moved, leading to fragmentation. You may even catch a virus or trojan, or failing that, install programs that block each other half of the time because of poor design.

So yes, for most users, formatting and installing from scratch is going to be a noticeable speedup. Of course so is not installing tons of crap and defragmenting your hard drive (assuming you are on windows and do not use a solid state disk).
Murtak
krainboltgreene
Apprentice
Posts: 50
Joined: Sun May 30, 2010 6:15 am
Location: Eugene, Oregon
Contact:

Post by krainboltgreene »

Note that this only has to do with the File System, not the OS. Ext4 can go for an impossibly long time before needing a defrag.
User avatar
RobbyPants
King
Posts: 5201
Joined: Wed Aug 06, 2008 6:11 pm

Post by RobbyPants »

Surgo wrote:
Gelare wrote:Here's a question: what are some common mistakes people make when assembling computers (such as, but not limited to, static shocking their hardware into paperweights), and how can they be avoided?
The #1 problem I've had is plugging in the positive/negative polarity of wires backwards. I've found on most motherboards and connectors I've used that they are marked very poorly among many other poorly marked pins, so you're never sure what goes where.
The ones I've used in the past usually have one side a slightly different shape, so you can tell the correct orientation.

krainboltgreene wrote:Note that this only has to do with the File System, not the OS. Ext4 can go for an impossibly long time before needing a defrag.
My understanding of part of why defagging helps is because when you delete files, they don't actually get deleted, but rather a bit is flipped. This makes it appear to be deleted. Is that handled on the OS level or the file system level? I've always assumed this was done by the OS.
Last edited by RobbyPants on Fri Jun 18, 2010 11:56 am, edited 1 time in total.
Surgo
Duke
Posts: 1924
Joined: Fri Mar 07, 2008 7:54 pm

Post by Surgo »

Gelare wrote:Question: Does reformatting a computer actually significantly improve performance? If so, why?
People mentioned all the classic justifications for defragging -- I'm not sure any of them are actually true anymore in the modern versions of NTFS.

NTFS isn't a full log filesystem, but it will attempt to put a new file (this includes new *versions* of files) in an area of free space big enough to fit it. This basically solves the classic fragmentation problem, so while it can and does happen (and happens in ext4 and the other Unix filesystems), it doesn't happen to the degree that you were forced to defrag like every week in Windows 98.

Also, a side note...they also have similar versioning support to ZFS, so if you want to you could do full copy-on-write...that's very non-standard though and not really part of the scope of what we're talking about.
Last edited by Surgo on Fri Jun 18, 2010 2:18 pm, edited 2 times in total.
User avatar
Crissa
King
Posts: 6720
Joined: Fri Mar 07, 2008 7:54 pm
Location: Santa Cruz

Post by Crissa »

However, it doesn't solve the problem of file sorting, just the issue of file fragmentation.

-Crissa
Post Reply