PS2 Exploit Allows Running of Unsigned Code
DrEldarion writes "This man has figured out a way to make the PS2 run unsigned code without a modchip. "To make a long story short, the exploit allows anyone with a memory card and
a valid, legal PS1 disc to hijack the boot process and run any piece of code.""
... to get arbitrary files on a memory card? I don't know about you, but *I* don't have anything like that. Will a small industry be created selling pre-altered memory cards?
"I will trust Google to 'do no evil' until the founders no longer run it." Hello Alphabet.
Now all we need is someone to write a legal playstation emulator for the X-Box, and we can run linux on it with no additional money going to microsoft for buying/renting a particular x-box game!
Ñ'
Like LINUX!?
In related news, Sony pays $499 per each PS2 sold to SCO. The rest of the compensation is the release of a smash-hit game "Superdaryl and the Invasion of the IBM Drones", in which Daryl saves America from IBM-aided terrorists.
Oh, if you or your company are looking for a low-level PS2 or GC hacker, I am available for immediate contract work or other offers. My e-mail is the best way to contact me.
We'll get right on that.
After Sony's attorneys finish with you, "immediate contract work" is exactly what you'll need.
If I can get my American PS2 to run Japanese PS2 games without having to pay $100 and do a lot of fiddly soldering, that's worth it. I don't know how much it would actually cost to get a memory card reader, since I don't have one, but I doubt one would have to pay $200.
Dan Aris
Fun. Free. Online. RPG. BattleMaster.
This provides to PS2 what has existed for the X-box for a while now. It was mentioned on slashdot and allows the X-box to run unsigned code after some preparation.
It replaces some font files (which are not checksummed) with ones that use an exploit in X-box firmware.
I hadn't even thought about playing non-us games. Shoots a hole through my rant. Are US playstations able to output PAL?
"Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
sony's ps2 linux kit is crippled. read THE PLAYSTATION LINUX FAQ for more info. i'm assuming with this, someone can run a regular linux distro on the ps2.
So what? I've been running custom code on my unmodded PS2 using Sony's Linux kit for awhile now, even crunching Distributed.net with it. If you want to run custom code, buy the Linux kit. Show Sony people do want a Linux kit, that way they might release one for PS3 or even PSP. I'd rather use an official kit instead of a hack.
Oh boy, we can count to 4294967295 billion now!
"Learning is not compulsory... neither is survival."
--Dr.W.Edwards Deming
Border, n: in C64, area of screen where no graphics can be displayed. Therefore it's the favourite place for all Commodore demoscene coders to display various graphics, causing engineers who designed it rip their hair from their heads and jump out through the windows, yelling "THIS CAN'T BE WORKING".
Understand now?
45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
Quoted from the page:
PS1DRV parses a file called mc0:/BXDATA-SYSTEM/TITLE.DB (the X represents the
PS2's region code) to load graphic parameters for the PS1 game that was loaded
from the disc drive. There is a catastrophic buffer overflow in the parsing
routine that allows one to overflow the stack and execute arbitrary code by
rewriting the $RA register. If we load up our own TITLE.DB, with an entry for
every PS1 disc that we want to trigger the exploit, then we can take over the
PS2 boot process as soon as the disc is recognized and PS1DRV is executed.
So this hack would allow Backed up and Import games to run on an unmodded system? Basically all one needs is a USB/Mem card interface to put the files on a PS1 memcard and then use a legit PS1 game to boot the machine?
I've got a stack of games from SE Asia that I would love to play on my PS2 and this hack seems like the most non-invasive way to do it.
"There is no time, sir, at which ties do not matter," Jeeves, (Jeeves and the Impending Doom)
"An agreement of law", Are you drunk?
One of the biggest problems with consoles and DVDs these days is that companies put region coding in them. If you live in a certain area of the world you get to play the games and watch the movies that they want you to, and no others.
This is a hideous practice and we must all publicly flaunt our disobedience of it at every opportunity. Otherwise they'll sneak it beneath the radar of the masses and make it part of the international copyright agreements.
Currently, region coding has no legal weight, though dishonest laws like the DMCA might have make bypassing it illegal in some jurisdictions.
If you believe you have the right to use your possessions however and whereever you wish, fight dishonest companies who do this!
You can already run Linux on the playstation by paying for the PS2 Linux kit at http://playstation2-linux.com/
That kit allows you to run any code that you want to anyway. Plus getting one allows companies to see that there is a paying group of individuals that would like configurable/extensible electronic products.
It's funny that many people criticize the software and media industry for promoting DRM and DMCA type laws, but then the same people turn around and promote/utilize cracks like this.
What do you expect the companies to do? Sit there and watch this happen?
Based on upvotes, Ageism is the only "-ism" Slashdotters care about and think isn't SJW
As I've mentioned a couple of times before in this thread, I want to use this (and was planning to get a modchip) to play games I have legally imported from Japan. I know that many people won't believe me, and that, unfortunately, that won't be the primary use of this exploit, but I know of no law that prohibits running region-locked games out of their region. I realize that it's possible the DMCA covers this, but if so, it really shouldn't. I paid for the PS2, I paid for the game, so why the heck shouldn't I be able to run it?
If this can really work (I haven't gotten the guy's code to compile, see one of my posts, above), it would be really great. I could use a $30 memory card reader/writer to let me play imported games, rather than a $100 modchip kit, which I would have to solder onto the PS2's motherboard. And those things look extremely fiddly.
So, yes, there is at least one legitimate use. And the point of our opposition to the DMCA is not (at least not for anyone who would have any chance against it) "so I can keep pirating stuff." My argument against it is that it probably will allow Sony to sue anyone who uses this hack, whatever purpose they put it to. It stops you from using certain devices or processes because they could be used for piracy or copyright infringement, even if you would truly, honestly, never use them for that purpose.
Dan Aris
Fun. Free. Online. RPG. BattleMaster.
Yesterday,
Algorithms programmed in any way
Now it looks as though there's liabilit-ay
And, it's 'cause of the D-M-C-A
Suddenly,
I'm not allowed to speak in C
There's a shadow hanging over me
Oh how D-M-C-A makes silence be
How some bits do flow, you can't know,
We couldn't say
I said something wrong
now I'm among, law D-M-C-A-ay-ay-ay
Yesterday,
"code" was such an easy game to play
Now I need a place to hide away
And, it's 'cause of the D-M-C-A
I suspect that there will eventually be a PS2 dashboard with functionality similar to EvoX on Xbox. By running unsigned code, you could probably initialize the PS2 HDD - or maybe even Firewire HDD(s) - and load a PS2 native menu with options for then loading Linux, your PS1/2 game backups, native emulators and media players, and homebrew games, demos, and applications. In some ways the Xbox might be better for this; it has newer and more powerful processors, more Ram, and the x86-based architechture is a familiar hardware and software environment to many developers. But the PS2 Firewire port in particular does seem full of potential.
A USB -> PS 1&2 memory card adapter from Lik Sang can be found here.
I have PS2 linux, but the PS2 linux memory card drivers are crippleware, dunno how I'd write to the raw memory card from that environment. Do I need special hardware to program a PS1 memory card? Perhaps now a real PS2 linux distribution will be developed, that will unlock the full capability of the hardware. For example, under Sony's crippleware linux drivers, there is no support for ieee1394 or the hardware MPEG-2 codec. r4lv3k
Border, n: in C64, area of screen where no graphics can be displayed. Therefore it's the favourite place for all Commodore demoscene coders to display various graphics, causing engineers who designed it rip their hair from their heads and jump out through the windows, yelling "THIS CAN'T BE WORKING".
The C64 wasn't restrictive. It allowed hackers (as in coders) to do whatever they could think of with the hardware. There were crazy optimizations where two instructions executed at once, 27 sprites could be displayed at once (the hardware is limited to 8), 240 colors could be displayed (the hardware was limited to 16), and not once did the commodore engineers come and say, "Stop doing that! It wasn't designed for that!"
Fast forward 20 years, and take a look at major console manufacturers bitching if we exploit the hardware or software to install something they didn't intend.
Heck, even being a developer, you can't do to modern consoles that you could do to the C64... To get an XDK, or PDK, you have to adhere to all sorts of restrictions about what you can and cannot do in your code (no fancy ASM hacking to do cool stuff)... what's the point? No wonder all we have is cookie-cutter games... Developers aren't allowed to innovate, unless it meets with Sony or Microsoft's predetermined vision... bah, gimme a modern day C64 dammit!
---
Programming is like sex... Make one mistake and support it the rest of your life.
To summarize, stop blaming sony! They did a great thing by releasing ps2linux, and all the related info. That's impressive. You know, a few years ago, the hardware manuals where so secret that there was my company name printed across each page..
PS2linux is far from perfect, but it is up to you to enhance it, because of its open source nature.
And if you don't want to use linux, because of its bloat, there are even bootloader projects hosted on sony's own website(playstation2-linux.com) that allows you get raw low-level access.
According to me, sony's biggest mistake was to target linux zealots, instead of focusing on console programming enthusiasts, as they did with yaroze. So they got a lot of disapointed customers... But if you want to do console programming, ps2linux is still a great thing, with lots of things to create (and that's the interesting part!).
Calm down! First of all, if I understand correctly, this exploit takes a valid PSX game, stops it from booting, then loads 'any piece of code' _right off the memory card_. It does not provide for any sort of disc swap. This means you can not use it to load any game which the PS2 would not normally load; you can only load an .elf (I think) file which is _on the memory card_.
:)
Meaning this is only useful for _small_ homebrew apps.
Second of all, it is unlikely this will ever be expanded to allow loading out-of-region/copied games. Sony uses a special copy-protection trick... as far as I know it involves a tiny sector in the beginning of a disc which has a checksum of zero. Inside this sector there is the data containing region information (should be impossible to contain any data if the checksum is zero, but it does). CD burners 'correct' this sector by writing the actual checksum, and hence PSX/PS2 games cannot be copied correctly. When you insert any disc into a PSX or PS2, the unmodified hardware checks that sector to see if the checksum is zero and if the region code is correct, and refuses to read any further data, _no matter what_, if that sector isn't just right. A mod chip works by injecting the correct data into the CPU at the right time.
This means, even though you could use the exploit to read abritrary data off something other than the disc the console was going to read from, you can't read it from another disc: if you eject that valid disc and put in another, the PS2 is going to check that special sector. Unless I misunderstand something, this exploit _does not_ address that, and so you can only load code off a memory card. Maybe someone will come out with a way to load stuff off a hard drive with it, but it's unlikely you'll ever be able to load stuff off a different (invalid) disc.
I should also point out that the terms 'signed' and 'unsigned' are possibly incorrect for this sort of thing, as the copy protection isn't really in the form of an encrypted key, per se... just a crazy sector containing simple data, with a checksum of zero.
This is how it has been explained to me over the years by a variety of people and is AFAIK the generally accepted understanding of the Sony copy protection method. I have never worked for Sony so I cannot verify it. If you have any corrections here, feel free to speak up
~ Aero
The c-64 games I wrote in the late eighties displayed over 40 flicker-free hardware sprites. The basic technique was to reposition the hardware position settings of each of the 8 hardware sprites with the raster interrupt. The tricky bit was sorting the raster lines for the handler (I used a bucket sort on the stack).
When doing scrolling you set a bit to make the borders come in so you wouldn't see the scrolling characters just pop on. If you used the raster interrupt to set this off again when the raster scan was in this region, the whole border disappeared.
I am doing equivalent hacks these days for the PS2, NGC and XBOX to get extra performance when I need it. Yes it is fancy ASM hacking - and no, they don't stop you doing it.
The difference is that these aren't open platforms - which sucks. Hard.
I don't typically read or post on /. these days, but since you folks were so kind as to saturate my cable connection :P, I read through the comments and wanted to clarify a few things:
Oh, about all the Linux posts: I've been developing a way to get ps2linux to boot without Sony's kit, and it will all tie into this. No ETA on that yet.
Cheers to all who've stepped up with the positive posts.