Hacking Post your ideas regarding how to hack the 3DS, here

Rydian

Resident Furvert™
Member
Joined
Feb 4, 2010
Messages
27,880
Trophies
0
Age
36
Location
Cave Entrance, Watching Cyan Write Letters
Website
rydian.net
XP
9,111
Country
United States
Hi, I haven't really read through this thread, but I was wondering. Since the nintendo eshop downloads demos and games onto the SD card, why can't we just take one of those downloaded demos and repackage a rom into it? Or patch a rom so it that the eshop thinks it was downloaded from the eshop?
If you modify a program/game, the signatures will become invalid and the 3DS won't run it.
 

Syphurith

Beginner
Member
Joined
Mar 8, 2013
Messages
641
Trophies
0
Location
Xi'an, Shaanxi Province
XP
364
Country
Switzerland
If you modify a program/game, the signatures will become invalid and the 3DS won't run it.
Morning Rydian. That must be boring to explain them why and why again. Would you stick a FAQ then.
Also Please check my latest post above.. That guy shows that the private key may just be 16Bytes long and it may be bombed.
Now i'm wondering about how to fetch some Appdata.bin to try decryption then..
Eh.. Will we open another thread when this goes to 100 pages?
Wow it's pity that CDNScan seems useless to get those apps for dev unit. Just got 401.
When a file doesn't exist on CDN it reterns 401.. So we can not guess if it existed.
 

Rydian

Resident Furvert™
Member
Joined
Feb 4, 2010
Messages
27,880
Trophies
0
Age
36
Location
Cave Entrance, Watching Cyan Write Letters
Website
rydian.net
XP
9,111
Country
United States
Morning Rydian. That must be boring to explain them why and why again. Would you stick a FAQ then.
Also Please check my latest post above.. That guy shows that the private key may just be 16Bytes long and it may be bombed.
Now i'm wondering about how to fetch some Appdata.bin to try decryption then..
Eh.. Will we open another thread when this goes to 100 pages?
Wow it's pity that CDNScan seems useless to get those apps for dev unit. Just got 401.
When a file doesn't exist on CDN it reterns 401.. So we can not guess if it existed.
Eh, this will do until any major progress is made. This thread was made to hold all the suggestions by people that don't know what's going on but will post anyways.
 

Syphurith

Beginner
Member
Joined
Mar 8, 2013
Messages
641
Trophies
0
Location
Xi'an, Shaanxi Province
XP
364
Country
Switzerland
As we know there is two key for RSA. one Private key to identify the sender, one Public key to decrypt.
then. Would that be possible >>
I get a usable private key for encryption. Then i check my backups and decrypt it with my console public key.
I got unsigned content, then i encrypt it with the private key. The result file can run for it is signed.
Or will there be any other methods we need to inject to this story.
I think a 16Bytes long (128Bits) key is possible to be bombed if we know more about the encryption procedure.

It that is really 128Bits We can make a simple Webpage with REST Javascript client and let all the users help the distributed key bombing. Also It helps when we get lots of signatures.
 

PsyBlade

Snake Charmer
Member
Joined
Jul 30, 2009
Messages
2,204
Trophies
0
Location
Sol III
XP
458
Country
Gambia, The
Nobody in their right mind would use 128bit RSA key
please post the source again I cant find it

Btw IF that were the case then setting up that webpage would take WAY longer than factoring it on my crap phone
 

Syphurith

Beginner
Member
Joined
Mar 8, 2013
Messages
641
Trophies
0
Location
Xi'an, Shaanxi Province
XP
364
Country
Switzerland
Nobody in their right mind would use 128bit RSA key
please post the source again I cant find it
Btw IF that were the case then setting up that webpage would take WAY longer than factoring it on my crap phone
Here you go, In this repo [https://github.com/ps3hen/CTR-TOOLS],
Then Head to [CTR-Keys\Decrypted TitleKeys] and Look at the file length.
Yes I'm also wondering why it assumes that is a 128bits key..
Even using a key less than 1024 bits is making danger for yourself..
Maybe they just thought that they used RSA and SHA so It would not be very easy to break?
Oh? the owner of that repo use the same avatar as 3dsguy..
Let me look at the title id.. Well i'll try to fetch that TMD matches to the id..
Generated: CDNScan sys 0010 00.. I'll add the file when i get it.
I got its TMD. Wondering what this title is..Please check the TMD.
 

Attachments

PsyBlade

Snake Charmer
Member
Joined
Jul 30, 2009
Messages
2,204
Trophies
0
Location
Sol III
XP
458
Country
Gambia, The
Don't know about 3ds but on Wii the title key is a 128bit AES key.
It was used to make the game data unreadable to:
-make hacking more complicated
-stop extraction of assets

Totally different beast compared to RSA.
128bit AES is still good enough for uncritical things
Its symetric, meaning the same key is used for encryption and decryption.
It must be available on the device and thus can be leaked if it's hacked.

This is completely different from the signing stuff
 
  • Like
Reactions: Syphurith

Syphurith

Beginner
Member
Joined
Mar 8, 2013
Messages
641
Trophies
0
Location
Xi'an, Shaanxi Province
XP
364
Country
Switzerland
Don't know about 3ds but on Wii the title key is a 128bit AES key.
It was used to make the game data unreadable to:
-make hacking more complicated
-stop extraction of assets

Totally different beast compared to RSA.
128bit AES is still good enough for uncritical things
Its symetric, meaning the same key is used for encryption and decryption.
It must be available on the device and thus can be leaked if it's hacked.

This is completely different from the signing stuff
Well is there any clue to find some short text encrypted by that AES key then?
if it is only 128Bits it will be easier for somebody to bomb >>
Because you can generate the keys and try to check if the key is correct. With such a method it will cost certainly less time than you bomb some key longer than 1024Bits. If that is used to sign those package holding on CDN it may help the analysing. Wow we still have to find that key..Device.. Orz.
 

PsyBlade

Snake Charmer
Member
Joined
Jul 30, 2009
Messages
2,204
Trophies
0
Location
Sol III
XP
458
Country
Gambia, The
lol, no

assuming the best possible case by grossly overestimating everything

there are some attacks on aes-128 leaving a complexitly >2^126 (2^2)
everyone (2^33)
has a 8 core (2^3)
4ghz pc capable of testing 1 key every cycle (2^32/s)
running continously

still leaves you with 2^58s running time
hmm, no earth, probably bad news

lets say everyone does a yearly upgrade to a twice as good pc*
still 34a, well at least the second game will be decoded faster then

*:
Code:
n = 2**58/60/60/24/356
a = 0
while n > 0:
    n-=2**a
    a+=1
print(a)
 
  • Like
Reactions: Syphurith

gokuguy

Well-Known Member
Member
Joined
Dec 5, 2008
Messages
424
Trophies
1
Age
30
XP
1,054
Country
United States
When the bootloader cannot load the firmware from the NAND and gives an error message, does it attempt to process anything afterward? If so, could that be exploited? Heh, I dunno. Just a question.
 

Syphurith

Beginner
Member
Joined
Mar 8, 2013
Messages
641
Trophies
0
Location
Xi'an, Shaanxi Province
XP
364
Country
Switzerland
lol, no

assuming the best possible case by grossly overestimating everything

there are some attacks on aes-128 leaving a complexitly >2^126 (2^2)
everyone (2^33)
has a 8 core (2^3)
4ghz pc capable of testing 1 key every cycle (2^32/s)
running continously

still leaves you with 2^58s running time
hmm, no earth, probably bad news

lets say everyone does a yearly upgrade to a twice as good pc*
still 34a, well at least the second game will be decoded faster then

*:
Code:
n = 2**58/60/60/24/356
a = 0
while n > 0:
    n-=2**a
    a+=1
print(a)
Well i see. i tried to calculate its time however i don't think such a method helps then because there is many that keys to explode. Well maybe you can guess what it is of a 16Bytes string in CETK, if you'd like to check you can get it here. [>>Skydrive: [CETK]<< 0x01cf + 0x10<<] Or take away the 'tmd' from tmd link and end that with 'cetk'.
BTW. How many types of keys has been used in 3ds, and where they are used? Got any idea?
 

SifJar

Not a pirate
Member
Joined
Apr 4, 2009
Messages
6,022
Trophies
0
Website
Visit site
XP
1,175
Country
When the bootloader cannot load the firmware from the NAND and gives an error message, does it attempt to process anything afterward? If so, could that be exploited? Heh, I dunno. Just a question.
I see no reason why it would. It would simply be stupid for Nintendo to have it do anything more, as it is quite clear at that point that the console is not in a usable condition.
 
  • Like
Reactions: pelago

MegaBassBX

The Noble Sate User
Member
Joined
Nov 7, 2011
Messages
330
Trophies
1
Location
Abu Dhabi
XP
209
Country
like any hard to hack game system it will need a flash to pass thru the AP measures, although I wish that it will be hacked using softmod instead of hardmod.
 

henn64

I don't know what I'm doing with my life.
Member
Joined
Dec 26, 2012
Messages
680
Trophies
0
Age
25
Location
The Great White South
XP
470
Country
Canada
Really doubt this but what would happen if every member (assuming they are willing) was to run a program to brute force the keys for the 3DS. Would it really take less time?
 

Rydian

Resident Furvert™
Member
Joined
Feb 4, 2010
Messages
27,880
Trophies
0
Age
36
Location
Cave Entrance, Watching Cyan Write Letters
Website
rydian.net
XP
9,111
Country
United States
Really doubt this but what would happen if every member (assuming they are willing) was to run a program to brute force the keys for the 3DS. Would it really take less time?
Here's my copy-paste on DSi encryption.

I present to you: "DSi Encryption Put In Perspective", also known as "I Love Crushing People's Dreams".

The DSi uses 128-bit encryption (IIRC).
How do you break it? You find the correct encryption key.

How many encryption keys are there? 2 (binary, a bit) to the 128th power (number of bits), divided by 8 (8 bits in a byte).
That's so many that the calculator that comes with windows (at least XP) can't even display the number without reverting to scientific notation.

128-bits is...
340,282,366,920,938,463,463,374,607,431,768,211,456 possible values in binary.
However, Since there's 8 bits in a byte, you divide 128 by 8 and get 16. That's 16 bytes, 16 characters.
That's 18,446,744,073,709,552,000 possible values, ranging from 0x0000000000000000 to 0xFFFFFFFFFFFFFFFF. Eighteen quintillion possible keys.
The actual number is a bit less less since a key will be a certain number of digits and be designed to not have repeating segments, but this puts it in perspective.

Let's say that you have a computer program which can try 50,000 unique keys a second.
That's 3,000,000 keys a minute.
180,000,000 keys in an hour.
4,320,000,000 keys a day.
1,576,800,000,000 keys in one year.

It would take 11,698,848 years to try all the keys at that speed.

And 3DS encryption is even worse.
 

PsyBlade

Snake Charmer
Member
Joined
Jul 30, 2009
Messages
2,204
Trophies
0
Location
Sol III
XP
458
Country
Gambia, The
It would take 11,698,848 years to try all the keys at that speed.
at that speed, yes
but you have to account for the fact that computing power increases over time

lets assume that a weaker form of moores law holds and computing power doubles every two years
thats 5849424 two year periods,
half that again because you will compute half the possibilities in the last period (geometric progression)
half again to get the halflife (50% chance of being cracked) of the key instead of the maximum (optionally)

then compute log_2 (because of doubling) of that
and you have 21.5 periods (or 20.5 for the halflife)
that means it would take more like 41 years to crack the first game
(but after you reached that point aditional keys could be cracked much faster)

note that you can't simply half that by using two such computers
(because they then have less time to "become better")
you would need to acount for that before the log
(meaning that every doubling in number would only substract one period)

someone needs to double check that but im reasonably certain its ok
 
  • Like
Reactions: Rydian

Syphurith

Beginner
Member
Joined
Mar 8, 2013
Messages
641
Trophies
0
Location
Xi'an, Shaanxi Province
XP
364
Country
Switzerland
WTF is that '3ds Common Key'. Where do you think that may been? It can never be easily changed due to its role in CDN title decryption, and some other things. I hope there is magic number in runtime-ram or in some other storage on the board. but that may be not for they can make that key solid in chip (as a constant or even gates).
If you are interested enough please read some of this story to see if you can catch some inspiration.
you see, we can fetch cetk (that holds the titlekey needs to be decrypted with that 'Common Key', even you can only find 3 cetk files related to 3ds/nds/gba firmware titles) and the firmwares. So if we get that key from somewhere (from hardware?)(or try to use some special exploits (ie one can check the timestamp and cause timing attack, or as some shown with other OS [how can it be/Another/Scanner?/A Collection/AttackDevice]) and decrypt that content (3ds firmware update data) from CDN. we will be able to decode the firmware update and try to find out many exploits. Where it is a bug fix, there may be exploits for those not updated.
Then we check apis and develop homebrews to reveal more of them. even there is chance for us to flash some modified firmware direct to the system manually and gain the max power. I know it may encounter some problems with law, however we do not use any part of its original code. we just take a reverse analysis on that F** firmware that we owned and backed up from our console. then the era of homebrew will come.
What a good story i've made above. Good imagination.. well. Then how can we find firmware location and access. But the differences between firmware of different versions, still mean a thing interesting. If you've tested all the ways to attack that RSA and only got failure, that's pity.
If there has not been any record of finding such a key yet (in all normal storage on board), i must say where is it is clear to us now.
Well how much possibility do you guys think there will be if someone modified his RAM chips (on board) to export those runtime for him. (if the main chip can not holds all the mem then, well.) Also you can try to find some newer methods by checking its authorized time. I remember 3ds is out years ago, so the new methods after that may not be able to be fixed. If that is in fact solid i would, lol.
Not interested? check something about a certificate inside 3ds below.
Yep. I extracted those certificates (4 valid ones in total) from the SSL to eshop and got one with description as "CTR Common Prod 1" (that is sent when 3ds tries to connect to remote). would it ever been related to that 3ds Common Key, i doubt. (because no matter how many times i tried to extract and install and compare, they are exactly the same, like something solid. I will try to have another guy test the extraction and compare the certificate with me to check if that is very common. if that is the one we need, will there be chance of setup a test server use HTTPS to connect then attack) If i misunderstood that name, sorry.
I used to think about how can i take use of it, and now i'll try to identify it first.
Well if somebody knows about where is the firmware (decrypted, i mean installed already) and how to access it (IO, but need to find out which chip holds that first), why don't they try to analyse.
 

henn64

I don't know what I'm doing with my life.
Member
Joined
Dec 26, 2012
Messages
680
Trophies
0
Age
25
Location
The Great White South
XP
470
Country
Canada
Here's my copy-paste on DSi encryption.
I present to you: "DSi Encryption Put In Perspective", also known as "I Love Crushing People's Dreams".
Well thanks a lot. :D
And 3DS encryption is even worse."
I'm both glad Nintendo is stepping up their game, and...well, not so glad that they're going total tryhard pro on this. Now, someone make a game with a bunch security holes NOW (Assuming N doesn't proofread the code (OF COURSE they do genius!)) Then submit it as an indie dev, because it is just THAT easy.
 

Syphurith

Beginner
Member
Joined
Mar 8, 2013
Messages
641
Trophies
0
Location
Xi'an, Shaanxi Province
XP
364
Country
Switzerland
I've check those certs (named 'CTR Common Prod 1'that 3ds used to connect to eshop with ssl) and found no difference between that of my Japanese one and that of my friend's USA one. Can we infer that they have the exactly same private key?
Why is such a certificate so common? can it be stored with that '3ds Common Key' somewhere in chips on board? or even its private key is just the '3ds Common Key'.. I highly doubt, 'cause that all those certs is signed by 'Nintendo CA - G3' of 'Nintendo of America Inc' in Washington, USA. (All the same, including the expire date and serial, lol)
If you think you have a hint of where its private key is please reply. If that won't help u hacking, please just ignore this.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • K3Nv2 @ K3Nv2:
    Thanks for signing up at LinusTechTips
  • QuarterCut @ QuarterCut:
    holey shmoley!
  • BigOnYa @ BigOnYa:
    Your credit card has been charged. Thank you.
  • K3Nv2 @ K3Nv2:
    Your screwdriverPlus will arrive in three weeks
    +1
  • QuarterCut @ QuarterCut:
    K64_Waddle_Dee_Artwork_1.jpg

    my reaction to such information
    +2
  • BigOnYa @ BigOnYa:
    Press 1 for English. Press 2 for Pig Latin. Or press 3 to speak to a representative.
  • BakerMan @ BakerMan:
    guys, i need help, i got into an argument about what genre radioactive is, and i forgot who made it
  • Sicklyboy @ Sicklyboy:
    @BakerMan, Imagine Dragons
  • Sicklyboy @ Sicklyboy:
    Dragon deez nuts across yo face GOTEEM
  • Sicklyboy @ Sicklyboy:
    lmao now I realize that was probably the joke in the first place
    +1
  • BakerMan @ BakerMan:
    IMAGINE DRAGON DEEZ NUTS ACROSS YO- FUCK HE BEAT ME TO IT
  • BigOnYa @ BigOnYa:
    You have selected 4 - Death by Snu Snu, please stand by...
    +1
  • BakerMan @ BakerMan:
    lucky bastard
    +1
  • Sicklyboy @ Sicklyboy:
    hahahaha I'm half way through a bag off my Volcano and my tolerance is way down because I haven't been smoking much lately, so I was a little slow to catch that that was what your angle was 🤣🤣
    +1
  • Sicklyboy @ Sicklyboy:
    Also I was just excited to know a music reference for once (I am the LAST person in the world that you want on your trivia team)
    +2
  • K3Nv2 @ K3Nv2:
    Bummer webos 7.4 isnt working with dejavuln-autoroot
  • Sicklyboy @ Sicklyboy:
    PS4 right? I think that's what mine's on. Or 5.6, maybe.
  • K3Nv2 @ K3Nv2:
    [!] Installation failed (devmode_enabled not recognized)
  • K3Nv2 @ K3Nv2:
    0.5 seemed to work whatever lol i wont bitch
  • Alysh_Graham @ Alysh_Graham:
    Hehehe
    Alysh_Graham @ Alysh_Graham: Hehehe