rC3 Talk: Hacking the Game & Watch

Поделиться
HTML-код
  • Опубликовано: 3 июл 2024
  • At this year's Chaos Computer Club congress, called the rC3, I gave a talk about the adventures of hacking the Game & Watch. This is the recording of that talk, I hope you enjoy it!
    The official recording, including Q&A can be found here: media.ccc.de/v/rc3-11527-hack...
    Timestamps:
    00:00:00 - Intro
    00:06:00 - The hardware
    00:08:30 - Debugging port
    00:11:10 - RAM dump analysis
    00:12:35 - Dumping the flash
    00:19:48 - Dumping the original firmware
    00:24:40 - Getting Homebrew and DOOM onto the device
    00:30:05 - Emulators
    00:32:54 - The community
    Links:
    - Twitter: / ghidraninja
  • НаукаНаука

Комментарии • 180

  • @richardhead8264
    @richardhead8264 3 года назад +165

    _It just makes sense that a device with such a nice screen and powerful processor should be able to play more than a couple factory-installed games._ 🤔

    • @RWL2012
      @RWL2012 3 года назад +4

      *yes it does!*

  • @nicco1690
    @nicco1690 3 года назад +135

    I'm glad that people like you make these things and hack these seemingly unhackable things. Without people like you, we wouldn't have all these things that we use today pretty regularly. Thank you!

    • @DrEmmettBr0wn
      @DrEmmettBr0wn 3 года назад +4

      Hacking is easy. Explaining and making a video is the hard part.

    • @nicco1690
      @nicco1690 3 года назад

      @@DrEmmettBr0wn Yes, but I'm just some random dude on the internet who knows a little HTML and CSS. Although I will admit, the video editing is very good here. I can say for certain this content is a lot better than something I could put out right now.

  • @ty2k
    @ty2k 3 года назад +63

    I can't believe how well the community has pulled together to extend this awesome device. Thanks for all your hard work!

    • @Lilly24244
      @Lilly24244 3 года назад +1

      I can't believe how hands off Nintendo has been 🤣

    • @Lar_ry
      @Lar_ry 3 года назад

      @@Lilly24244 this aint anything new communities come together all the time for this stuff. Think iphone jailbreak devs, or even gaming communites. The 3ds was blown wide open to the point you could download any game from Nintendo e-shop server and they could not stop you. still works to this day. The PS1 classic was was done pretty quickly along with the SNES/NES min's and even the Mini sega.

    • @mikejosh4563
      @mikejosh4563 3 года назад

      @@Lilly24244 well if you still need help I recommend Rackzhack on Instagram he got all my device fixed

    • @fiswis2
      @fiswis2 3 года назад

      @@Lar_ry what's your point Larry?

  • @abysJaq
    @abysJaq 3 года назад +23

    I have followed your progress since day one on twitter and RUclips, Watched the live Rc3 with a great intro! Great talk, fun and informative!

  • @dewbiedew
    @dewbiedew 3 года назад +7

    Loved the intro! I am not that technical, but I found this video to be very informative and well paced. Glad that you put this video together! Appreciate all the work on this even if it is more of a curiosity for me than anything else.

  • @Dogelition
    @Dogelition 3 года назад +8

    Great talk!
    There's a small mistake around 17:11 :
    When you have a ciphertext encrypted with AES-CBC and you flip n bits in one of the encrypted blocks, only the corresponding plaintext block + the bits at the same indices in the next plaintext block will be corrupt. The following blocks will decrypt normally. So if you set n bytes to zero (assuming they all belong to the same block), you'd get 16 + n corrupted bytes in the plaintext.

  • @dccelly1615
    @dccelly1615 3 года назад +4

    It has been said but, great intro! Thank you for all the hard work you’ve put in for this. No way I can duplicate the process to try this myself.

  • @Evercade_Effect
    @Evercade_Effect 3 года назад +18

    I'm impressed this project has come a long way. It's only a matter of time before hacked ones show up on Ebay.

  • @itsworkinprogress
    @itsworkinprogress 3 года назад +3

    Thank you for this very informative video. I've never looked into hardware hacking before, but you are a very good, easy-to-listen-to teacher.

  • @sucotronic
    @sucotronic 3 года назад +3

    That was a great presentation and summary of a lot of time and hard work invested in the game and watch. Thanks for sharing it with us and opening everything ;)

  • @afox4254
    @afox4254 3 года назад +28

    Dispite the fact that i have the technical knowledge of a potato i found this video very interesting and informative thank you!

  • @nsp6590
    @nsp6590 3 года назад +3

    I wish I could give this video a thousand likes. Absolutely amazing mate! Great video! And what a community you have built around this little device. I can't wait to see more.

  • @0xbenedikt
    @0xbenedikt 3 года назад +1

    Hands down the best CCC talk this year!

  • @PexySancakes
    @PexySancakes 3 года назад +20

    People like you survive the apocalypse. Good job.

  • @pitust
    @pitust 3 года назад +6

    This talk was awesome (I watched it during rC3).

  • @alantrotter6762
    @alantrotter6762 3 года назад +1

    Awesome video! Very well explained and entertaining!

  • @TensorWave
    @TensorWave Год назад

    8:17 I love how you moved your whole setup to make the view clear for the right side.

  • @eleuthi813
    @eleuthi813 3 года назад +1

    This just popped up in my reommended, and I gotta say... This is REALLY Cool!

  • @TheAppelsiini123
    @TheAppelsiini123 3 года назад +17

    This must be the best console reverse-engineering talk ever! The game & watch turns out to be a great fit in terms of complexity for hardware hacking and homebrew!

    • @Lar_ry
      @Lar_ry 3 года назад

      It's not a bad talk. But there are some really good ones that really break it down more. But no doubt he did a wonderful job.

  • @mathlxiv1525
    @mathlxiv1525 3 года назад

    Man your videos are great, your projects are great, YOU are great ! Seriously this is really entertaining but also really instructive, your explainations are clear and understandable by what I would assume to be everybody and that's really cool ! Good job man, you have a lot of talent !

  • @scottybrown7741
    @scottybrown7741 3 года назад

    So awesome - the content but the delivery/deck too! Thanks!

  • @wheelotimexqwepoiqwe1082
    @wheelotimexqwepoiqwe1082 3 года назад +1

    wonderful video with very detail information, thanks

  • @jengelenm
    @jengelenm 3 года назад +1

    Great summary! Thanks!

  • @santasl
    @santasl 3 года назад +2

    Great talk. Thank you!

  • @threethej_rock
    @threethej_rock 3 года назад

    super helpful and informative video, thank youu

  • @jarod10100
    @jarod10100 3 года назад +1

    great job , great video.
    Thank you.

  • @rashidz97100
    @rashidz97100 3 года назад +2

    Something worth watching!

  • @slipperstree
    @slipperstree 2 года назад

    great work! you teached me a lot!

  • @edgeeffect
    @edgeeffect 3 года назад

    Thanks for the NOP Slide.... that's the best thing I've learned in months!

  • @DacoTaco
    @DacoTaco 3 года назад +1

    and no picture of your costume in the Q&A?
    that was hilarious! xD
    good job though, i enjoyed the talk.

  • @kargaroc386
    @kargaroc386 3 года назад

    This is insanely well written and understandable for beginners.

  • @1TimTheEnchanter1
    @1TimTheEnchanter1 3 года назад

    Absolutely fantastic!

  • @-zer122
    @-zer122 3 года назад

    Good presentation ! Thanks

  • @christophhelms4905
    @christophhelms4905 3 года назад +1

    Great presentation my man!

  • @Mr._Sandman
    @Mr._Sandman 3 года назад +10

    I can't wait to see what else comes from this! My hope is to turn mine into a classic mario
    intendo\g&w item.

  • @valshaped
    @valshaped 3 года назад +1

    You've inspired me to get a G&W of my own. Super excited to unlock it and use it for Nefarious Purposes, like super-low-quality DOOM

  • @yeffrisalazar9721
    @yeffrisalazar9721 3 года назад

    lo digo en spanish porque es mas facil, es lo mejor que he visto acerca de hardware hacking sos mi idolo

  • @hyperteknoman6602
    @hyperteknoman6602 3 года назад +1

    Very explanatory 👍

  • @henryatkinson1479
    @henryatkinson1479 3 года назад +1

    Love the intro!

  • @hdofu
    @hdofu Год назад

    That is quite the intro overview.

  • @chadwolf3840
    @chadwolf3840 3 года назад

    Amazing video and explanation.

  • @philrod1
    @philrod1 3 года назад

    Great talk and amazing work! I bought one of these for my son for Christmas and had to buy myself one after seeing this unfold. I'm very much looking forward to hacking this. I'll be happy with emulation but would love to have a go at writing a homebrew game for it. As for the USB ... you just need to shrink the MiniPRO down until it fits inside the case :D

  • @antonminyailo5976
    @antonminyailo5976 3 года назад

    Awesome talk, thanks.

  • @Howard2k79
    @Howard2k79 3 года назад

    This Intro man! Love it!

  • @tejonBiker
    @tejonBiker 3 года назад

    Nice summary of your work, the GBSMB is now selling in Mexico, I think I have a nice idea for a gift to myself :D

  • @stantheman1998
    @stantheman1998 3 года назад +1

    Amazing video!

  • @TheKluxi1
    @TheKluxi1 3 года назад +16

    best TED talk of 2020 in my opinion

    • @canaDavid1
      @canaDavid1 3 года назад

      This isn't a ted talk?

    • @TheKluxi1
      @TheKluxi1 3 года назад +1

      @@canaDavid1 yeah I know, it's just a little joke ;)

  • @arlwiss5110
    @arlwiss5110 Год назад

    mindblowing stuff

  • @FirstLast-jg3um
    @FirstLast-jg3um 3 года назад +2

    Nice,
    I'd like to see more about IoT'Devices, thks.

  • @1e1001
    @1e1001 3 года назад +1

    This is art

  • @Stonehead94
    @Stonehead94 3 года назад

    Hey ich wollte auch einfach mal danke sagen! Ich kann leider nichts zur community beitragen außer die hacks nach Anleitung durchzuführen, aber ich bin so dankbar für Leute wie dich, die das möglich machen, UND erklären wie man zum Ergebnis kommt! Definitv der Wahnsinn und hat mein Interesse geweckt selbst mal bisschen zu hacken.

  • @belaidmabrouk1631
    @belaidmabrouk1631 3 года назад +1

    i can just say,
    you are amazing

  • @TigerVent
    @TigerVent 3 года назад +24

    HAHA intro was hilarious

  • @ReavoEnd
    @ReavoEnd 3 года назад

    Just got my G&W! I look forward to snagging a debugger and start poking around.

  • @at29c040a
    @at29c040a 3 года назад +1

    Thanks for the great talk! Is there a way to wire usb data lines to MCU?

  • @retrogame5807
    @retrogame5807 3 года назад

    very amazing

  • @reaper84
    @reaper84 3 года назад

    Great Work

  • @jackmaginnes7497
    @jackmaginnes7497 3 года назад +8

    Hell yes I am so hyped on this. Working on moving into some hardware hacking, and who doesn't love pissing off Nintendo

  • @hidden7soul
    @hidden7soul 3 года назад +1

    0:18 that was epic 🤣

  • @taskanawa9604
    @taskanawa9604 3 года назад +1

    awesome

  • @Lar_ry
    @Lar_ry 3 года назад

    it's surprising how many times this method works on so many different platforms. I used to have a job hacking keyless entry systems and we broken encryptions and did dumps in almost the same way.

  • @mistermark8755
    @mistermark8755 3 года назад

    great video be nice if we had videos on step by step and tools to use on how to flash and setup that would be ace for learners like myself

  • @tuorectors7102
    @tuorectors7102 2 года назад

    This channel is so underrated :(

  • @colt5189
    @colt5189 3 года назад +6

    I wasn't planning on getting this, as it doesn't have all of those original Game & Watch games on it. But I will probably get one to have when there is a way for the regular person to be able to easily put on those MAME Game & Watch recreated games on it. Thanks.

  • @TN_AU
    @TN_AU 3 года назад +11

    All the dislikes are from the security team over at Nintendo.
    Nintendo: Great job team, its secure, they'll never hack this.
    stacksmashing: Hold my bowl of cereal.

    • @orchishgrunt7888
      @orchishgrunt7888 3 года назад +1

      Honestly, I feel like it's more that they wanted to crank out a fun portable device on the cheap. They weren't defeated; rather, people figured out a hundred other ways to have fun :)

    • @johnnymartini1072
      @johnnymartini1072 3 года назад +1

      Doesnt seems that they put much effort into seucring it to be honest.

  • @fredrikjaensson7350
    @fredrikjaensson7350 3 года назад +1

    Awesome. I had love to get Zelda from NES into my game&watch😁👍

    • @fredrikjaensson7350
      @fredrikjaensson7350 3 года назад

      How can i get Zelda?

    • @Spelter
      @Spelter 3 года назад

      Problem would be the savestates. If I understood him right, this is just a readable rom that can not save data because its loaded into ram and when you switch it off, it's gone.

  • @afx7696
    @afx7696 3 года назад

    You are Awesome 👏

  • @alexandrohdez3982
    @alexandrohdez3982 3 года назад

    great job.. too many ours spended in this project .. but work it out !

  • @e4James
    @e4James 3 года назад +2

    I was trying to find the guide to upgrade the storage to 60MB and the discord but no luck.

  • @traida111
    @traida111 3 года назад +1

    Id love to see the developers reaction to your video. Im sure at some point there would be a '' DAMN IT ''. haha

  • @dubernauta
    @dubernauta 3 года назад

    👏👏👏👏👏

  • @tijuanatacotoker
    @tijuanatacotoker 3 года назад

    I bought this hoping i'd be able to soft mod it. Whelp, so much for that! Its still gonna be cool pulling this from the inside pocket of my Mario Levi denim jacket :)

  • @bgw_thule
    @bgw_thule 3 года назад

    Plenty of Geek Points for you . Quite amazing what you are able to do "because you can" .

  • @WhatsOnMyShelf
    @WhatsOnMyShelf 8 месяцев назад

    What are those probes you connected to the through-hole points of the debug port?

  • @nathangitz2674
    @nathangitz2674 3 года назад

    Would love to see how people will preserve Super Mario Maker for the Wii U (yes, the Wii U) and Super Mario 35 (the eShop download)'s online functionality after March.

  • @Saghetti
    @Saghetti 3 года назад +1

    Nice thumbnail, NOP slide

  • @Spyd77
    @Spyd77 3 года назад

    I was thinking that to use the USB plug for data purposes, the only thing needed was to wire the two data pins from the microcontroller to the USB connector, but I just read the datasheet for that microcontroller, and while it has USB 2.0 OTG capabilities, there's no pins for it in the 100-pin package version Nintendo used for the game and watch.
    What a pity.

  • @angeles2425
    @angeles2425 3 года назад

    Sander Van Der Wel Game & Watch backplate needs a pull-out stand.

  • @WilliamLDeRieuxIV
    @WilliamLDeRieuxIV 3 года назад

    I'm just going to take stab-in-the-dark, but....
    How difficult would it be to fix the usb data lines so that they work ?
    (EG. soldering the data lines to the proper pins on the CPU, etc, and modifying the firmware to allow communication)

  • @thetankie007
    @thetankie007 2 года назад

    Hi, I am trying to follow along and use this video as a guide to replicate how the encryption was broken. I am a little stuck at comparing the RAM vs ROM. I have downloaded the ram at memory addresses 0x20000000, 0x240000000 and 0x30000000, but where did you find the original (unencrypted) rom in memory? I have an original rom and I cannot find this anywhere when comparing against the ram snapshot. I have used your bitmap extraction program and I can see the frame buffer and get a nice picture of the video but I can't find the unencrypted rom. you seem to have one ram file as well instead of 3? did you just combine the 3 ram addresses into one file? but mine still seem a lot smaller in size even when combined when compared to yours. ( although I am using the Zelda version game and watch)

  • @KSITREVS
    @KSITREVS 3 года назад

    You mentioned you were a trainer towards the beginning of the video. Could I get you to provide me with a little more information about this? Kind regards,

  • @MizuhoChan
    @MizuhoChan 3 года назад

    Can you use a usbasp or usb blaster for this?

  • @nonplayercharacter596
    @nonplayercharacter596 3 года назад

    Brevity is the soul of wit

  • @Pesthuf
    @Pesthuf 3 года назад +1

    I had no idea you could get the encryption key if you know both ciphertext and part of the clear text. Does this only apply to AES-CTR? Do you think it would have been possible to hack this if Nintendo had used authenticated encryption?

    • @stacksmashing
      @stacksmashing  3 года назад

      You can't get the encryption key, you can only get the XOR-stream that was generated by AES-CTR - hence the need to have a unique nonce.

    • @Pesthuf
      @Pesthuf 3 года назад

      I see. Does that mean that you could only replace the bytes that make up the ROMs (the cleartext that you know) in the flash? The streams differ in each block due to the counter, no?
      Did you later find the encryption key in the firmware dump?
      I also don't quite understand how this relates to iv reuse - did they not encrypt the entire flash in one go, but the ROMs independently, both times with the same key and iv and the counter reset to 0?
      I think I have some serious reading to do on encryption.

    • @RWL2012
      @RWL2012 3 года назад

      @@Pesthuf yes you do :P

    • @Pesthuf
      @Pesthuf 3 года назад

      @@RWL2012 Are the things I concluced wrong? If so, why?
      AES-CTR uses a different XOR stream for every block (128 bits) due to the counter being increased. And since he didn't have the encryption key, there should be no way for him to get the XOR streams for blocks outside of the plain texts he knows (the ROMs).
      And IV reuse can only be a problem if you encrypt two different messages with the same IV. I don't see how that applies here - the Flash is one single thing to encrypt. Or did they actually have a filesystem on there and encrypt every file with the same Key & IV?

    • @big0bad0brad
      @big0bad0brad 3 года назад

      @@Pesthuf All he needed was the plaintext he knew from RAM dumping - this allowed him to change the data in those areas and one was enough to get control of code execution. But sometimes there are further attacks where you can brute force specific areas, etc, so if you know something is running AES-CTR, you have abilities to flip individual bits if you know where you need to be trying to flip them. You can just flip a section until you get the right combination via some futher effect, though it might take many attempts.

  • @TechMalaya
    @TechMalaya 3 года назад +1

    I thought that nintendo already given strike to video that promote nintendo hacking

  • @RobinLegacy
    @RobinLegacy 3 года назад

    Can we have some links to the hardware required to hack it?

  • @jeremyfortunethe1st
    @jeremyfortunethe1st 3 года назад

    It must kill someone to see their code ripped open and molested like this! Great work

  • @Caolan114
    @Caolan114 3 года назад +4

    Got my game and watch for christmas and yeah It Is limited as It Is but a nice size and I love playing mario with infinite lives and being able to turn it on and continue any time
    but gameboy on this thing would be amazing!!

  • @davegsm82
    @davegsm82 3 года назад

    @stacksmashing - do you know if anyone has considered swapping the SPI flash for a Micro-SD card? The SPI protocol is the same as basic SD-card I/O. Fairly sure you could make a removable storage solution like this to store multiple games.

    • @stacksmashing
      @stacksmashing  3 года назад +1

      Couple of issues with that:
      - SDIO is 3.3V, so would need level shifters
      - A lot of microSD do not support that protocol anymore
      - The memory mapped mode does only work with SPI flash :)

    • @davegsm82
      @davegsm82 3 года назад

      @@stacksmashing interesting, every

    • @0xbenedikt
      @0xbenedikt 3 года назад +1

      @@davegsm82 He didn't mean that the voltage levels of the G&W could damage the micro SD card, but rather they are too low to be properly registered by the micro SD card's input circuitry.

  • @Some-guy-on-the-internet
    @Some-guy-on-the-internet 3 года назад

    Would it be possible to add a headphone jack to the Game & Watch?

  • @retrodoodmanx7161
    @retrodoodmanx7161 3 года назад

    take your time man. make it a better system.

  • @PowerPandaMods
    @PowerPandaMods 3 года назад

    The Mario romhacking community is one of the oldest and the largest, with a ton of hacks on SMB1. So, my question is, is it possible to run these without loading an emulator? For example, could you load a Mario Romhack on top of Ball? I personally want to load "Super Mario Bros Special for NES", an NES conversion of Hudsonsoft's SMB Special.

  • @renakunisaki
    @renakunisaki 3 года назад +1

    Plot twist: Ninty's putting out these cheap retro consoles to evaluate the security flaws in their designs before using them in future devices.

  • @tenchuu007
    @tenchuu007 3 года назад

    I can't wait until the RAM change is pretty much all you need to do to get it running emulators. Really the device just needs to emulate all NES and Game and Watch games and it's perfect.

  • @alejandroalzatesanchez
    @alejandroalzatesanchez Год назад

    why the blur? NINTENDO DONT EVEN THINK ABOUT IT!

  • @ZipplyZane
    @ZipplyZane 3 года назад

    Why do you think Nintendo went with RDP protection level 1 instead of 2? They seem to have gone to more rep how this time to try and prevent hacks, so why not lock it down completely?

    • @0xbenedikt
      @0xbenedikt 3 года назад

      I'm not entirely sure if RDP level 2 completely disables the debug port or just additionally locks RAM, but if it disables the port, leaving it at level 1 might help them to either fix bugs in unsold stock by allowing its reflashing (very unlikely), or allows them to debug issues with the product in the field to mitigate them in a later batch (more likely).
      They were probably not very concerned with this device getting hacked, as it does not contain much IP that was not already shared everywhere on the internet. And also since there are no new games to buy for it, as well as no internet connection, it getting hacked would neither affect sales nor their infrastructure so wouldn't be any concern to them.
      Encrypting the flash was most likely just to make it not too easy to just dump the ROM, but not to affect the performance and requirements on the CPU too much.

    • @ZipplyZane
      @ZipplyZane 3 года назад

      @@0xbenedikt I understand the idea of leaving themselves a way to debug. However, if they don't care about it being hacked, then it would make sense to me to not bother with RDP at all (leaving it at 0), so it would be easier to debig. It seems they thought putting it on 1 would deter hackers in some way. I suspect they just underestimated programmer abilities, like they did back on the Wii U, thinking indie games wouldn't sell.

  • @benecosi2021
    @benecosi2021 3 года назад +9

    What are u doing? WHAT?
    Never. EVER. Blow in the cartridge.

  • @przemysawchwaszcz2318
    @przemysawchwaszcz2318 3 года назад

    Where i can buy 16mb chip to replace 1mb any website?

  • @ZipplyZane
    @ZipplyZane 3 года назад

    Surprised that, unless I missed it, you didn't cover why merely replacing the NES ROM wasn't viable. FTR, Nintendo dies an in place ROM patch to make some small alterations, and that patch would break most other ROMs.

    • @stacksmashing
      @stacksmashing  3 года назад

      I mentioned in another video that the ROM is patched - however patching out that patch is also trivial. However replacing the emu with your own gives you much more flexibility and you can iterate much faster without constant reverse engineering

  • @Djerique
    @Djerique 3 года назад

    lol @ intro