Using Security Vulnerabilities to Get Every World Record in Mario Kart Wii

Поделиться
HTML-код
  • Опубликовано: 22 дек 2024

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

  • @MrBean35000vr
    @MrBean35000vr Год назад +880

    An interesting fact that some people probably don't know is that Wiimmfi also abuses this buffer overrun in order to run code on your console when you connect with the DNS method. This is how the server facilitates providing security patches to the game - as this is not the only way one can get code running on MKW over the network. The game is played peer-to-peer, and there are at least 2 exploits that would permit your online opponents to run any code they wanted on your game, and the server would be none the wiser that this had happened! The side effects of which could be genuinely awful, as you could easily brick a Wii console by running malicious code on it. So, before you can even connect to an opponent, the server uses this bug demonstrated in the video to temporarily take control of your game, remove those exploits, and only after that allows you to find opponents.
    It's also worth noting that every single Wii game ever released has this buffer overrun in it. It's a fundamental flaw in the networking library they used. So you could actually mess with literally any WFC-enabled Wii game in this manner - assuming you can get them logged in, your mileage may vary depending on required IOS.

    • @romajimamulo
      @romajimamulo Год назад +20

      What networking library did they use so I can be sure to avoid it?

    • @MrBean35000vr
      @MrBean35000vr Год назад +86

      @@romajimamulo It's a Nintendo-developed one that we know as "DWC", not the kind of thing that'd be publicly available anyways.

    • @betaswithWack0
      @betaswithWack0 Год назад +41

      RCE in a Nintendo networking library?
      yeah, that sounds about right, they did it again years later with pia on 3DS (and I guess switch/wii u too?)

    • @calvinlittle7
      @calvinlittle7 Год назад +9

      Hey MrBean35000vr- just wanted to say thank you for all the quality content over the years!

    • @warmCabin
      @warmCabin Год назад +45

      Using vulnerabilies to patch more vulnerabilities. The ultimate gray hat move.

  • @what_is_loaf
    @what_is_loaf Год назад +336

    MKW needs more technical videos like this

  • @Alphie_
    @Alphie_ Год назад +172

    I've been struggling to understand DNS servers for the longest time. Like, genuinely. The instant you said "it's like an internet phone book" my mind was blown at how many dots connected. Thank you.

    • @MudakTheMultiplier
      @MudakTheMultiplier Год назад +26

      It's such a good analogy and I'm scared that it might not work for long because nobody makes phonebooks anymore.

    • @Alphie_
      @Alphie_ Год назад +4

      @@MudakTheMultiplier That was my fear as well. I am right at the mark of the generation where I know what a phone book is and used one when I was younger.

    • @JuneNafziger
      @JuneNafziger Год назад +2

      I mean contact book also works, and that’s the metaphor/analogy phones and such use

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

      @@JuneNafziger but to anyone that age "contacts" means "the list of people you can call" so many of them don't even interface with phone numbers at all anymore.

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

      @@MudakTheMultiplier from my experience they still understand that a phone number is an address for calls/SMS though, even if they rarely manually enter them and don’t understand the structure.

  • @mkwLuke
    @mkwLuke Год назад +296

    animations were super cute and helped me understand a lot of concepts much easier. Great vid

  • @calvinlittle7
    @calvinlittle7 Год назад +201

    Malleo just showed up, dropped pandora's box of code into the community as a whole, and dipped. what a legend

  • @Nightcaat
    @Nightcaat Год назад +622

    This may be the single nerdiest video to ever grace this game’s community. Incredible work

    • @BallinBoy008
      @BallinBoy008 Год назад +2

      I’m guessing you haven’t seen a Bismuth video. 😂

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

      must have never heard of zelda oot srm either

    • @Nightcaat
      @Nightcaat Год назад +20

      I’m talking about Mario Kart Wii here, I don’t get why people are interpreting it as Mario or Nintendo as a whole

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

      what does that have to do with "this game's community" as said in the comment@@luca4k484

    • @chicha400
      @chicha400 10 месяцев назад

      @@Nightcaathonestly no idea, but anyways I think you might be right. Did you ever see the bcwii glitch physics video by wrath? That was a classic

  • @mattshnoop
    @mattshnoop Год назад +109

    I'm finishing up my Computer Science undergrad in the coming spring, so I was already familiar with everything discussed here. And I have to say-you did an *excellent* job explaining what's going on behind the scenes while managing to keep it super easy to understand for non-computer people.
    A video like this one-one about a fun game that people already know about, combined with juuust enough of an introduction into a complex field-is the kind of video that will ignite a spark to eventually create the most curious and inquisitive students. My heart is full imagining some young ones today stumbling across this video and thinking, "wow, computer science is so cool!" I hope there will be at least a few, because I love this stuff so much and I would love for more people to enjoy it too.
    Again, excellent work; and thank you for this video. I may use it to sell computer science to some of my nephews next time I see them 😄. You've earned whatever likes and subscriptions you want from me!

    • @CataclysmG
      @CataclysmG Год назад +2

      I've had an interest in cybersecurity concepts nested away since I started reading on Wii homebrewing back in the day. I might not be one of the young ones, but this is a huge push in the direction of actually pursuing the field for me :)

  • @AceRFirestone
    @AceRFirestone Год назад +65

    Can't wait to run Doom on Mario Kart Wii!

    • @Luna-Lux
      @Luna-Lux Год назад +5

      Rioting if they dont make it wii wheel compatible

  • @EjayB
    @EjayB Год назад +59

    Such a high quality production. Good stuff as always

  • @runo8
    @runo8 Год назад +4

    I have a master’s and undergrad degree in CS, currently working at big tech with a side gig of teaching CS. Despite already knowing the content you presented, I had so much fun watching. Hope you continue making videos in this niche of programming and video game modification/exploits

    • @AnonymOus-ss9jj
      @AnonymOus-ss9jj 11 месяцев назад

      As somebody with a Bachelor's degree in software, and no job, do I need to get a Master's?

  • @Kierio04
    @Kierio04 Год назад +17

    What a title. Great watch. Always enjoy any new Malleo content, whether I fully understand it or not (I think I understood most of it :P)

  • @anthonykuglov1417
    @anthonykuglov1417 8 месяцев назад +3

    I’m gonna be boring and ask for an update on the 100% tas again. I’ve rewatched your other tases multiple times (particularly the 2:22 one that one just seems so iconic) cuz your content is just so good.
    Sending love and good vibes to whatever stress (if any) you’re going through 👏🏻

  • @Flourish38
    @Flourish38 Год назад +2

    Congratulations on your engagement??? That's super exciting!!

  • @SamikazeAtk
    @SamikazeAtk Год назад +1

    any runs doing stuff like this would get you in an alleyway with guys snapping menacingly going "ey, bub! you hijacked the Wiimmfi...so I hope you don't mind we hijack your life!"

  • @DocAndRaidDoMinecraf
    @DocAndRaidDoMinecraf Год назад +1

    dude what a video man, as a CS student you seriously did such a good job explaining these concepts. Awesome video man

  • @FelixEA
    @FelixEA Год назад +1

    0:24 Milei is that you

  • @CoolKirby2000
    @CoolKirby2000 Год назад +7

    Hey Malleo, love how informative and easy to understand your explanation videos always are. You're a natural at these. And congrats on the engagement!! I'm sure you and Megan will be very happy.

    • @Malleo
      @Malleo  Год назад +5

      Long time no see! Hope you are well. Thank you for the kind words!

  • @GoombaNL
    @GoombaNL Год назад +100

    I love the way you presented the information, especially going with assumptions then immediately proving them wrong -- Not only is it nice every part gets explained, but it also helps to retain attention by approaching new info in a different way! That on top of the visuals made it incredibly easy to digest
    I do have a question though, is it possible to recognize when the slowdown script is used, or to a lesser degree? Like let's say 75% the normal speed

    • @TheNerd484
      @TheNerd484 Год назад +20

      If you have a playback of the inputs, inspecting them can make it clear if someone is cheating by looking to see if they're unnaturally fast. That's how the trackmania community caught Riolu cheating many of his records.

    • @AbsoluteLunatic123
      @AbsoluteLunatic123 Год назад +2

      Mario Kart Double Dash legend I know you!

    • @GoombaNL
      @GoombaNL Год назад +1

      @@TheNerd484 Right, hence why I mentioned slowing the game down by less than 50%, to conceal inhuman reactions and input speeds.

    • @SmileyBMM
      @SmileyBMM Год назад +2

      ​@@GoombaNLIf the inputs are humanly possible, and all people have is the ghost, it would be impossible to tell the ghost was created by illegitimate means. The ghosts don't have some sort of authenticity check as far as I know. This is why recorded video of WRs are so important.

  • @100MagicChickens
    @100MagicChickens Год назад

    initially clicked to listen in the background, ended up restarting it and taking notes LOL. as well as being incredibly entertaining, it was a great lesson!! we need more videos like this haha, this was lovely. thank you, Malleo!! :)

  • @Estaloy
    @Estaloy Год назад +29

    This man basically did Arbitrary Code Execution on MKW, he must be stopped!

    • @MudakTheMultiplier
      @MudakTheMultiplier Год назад +2

      Definitely arbitrary code, I don't think it can function as Total Control though.

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

      is this a new entry point for homebrew installation or was this known

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

      @@oussama7132 I'm not super familiar, but I suspect that because it's only modifying game code it won't do anything to the system.

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

      @@MudakTheMultiplier but i remember that some games like twilight princess have entry points that can be exploited using modified save files. i think running homebrew channel is possible with this

    • @Alphie_
      @Alphie_ Год назад +1

      @@oussama7132 The issue is that it would be brutally difficult. You'd have to make 100% sure that all the addresses you're writing to wouldn't crash, and if it does, that the crash is *achieving* something.

  • @TheSilentDModding
    @TheSilentDModding Год назад +2

    As a modder of the Wii, I found it incredible that you managed to pull this off on a vanilla console! Definitely a fascinating watch :)

  • @TASPlasma
    @TASPlasma Год назад +8

    Nothing brings me more happiness than a new video from the content GOAT, Malleo
    Good stuff as always!

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

    I just wanna say, thank you for the excellent subtitle job. Many youtubers don't even bother, which can make it very hard to understand what they're saying! I always give props to any creator that actually bothers with well edited, accurate subtitles.

  • @DonYagamoth
    @DonYagamoth Год назад +3

    This was an awesome video - excellent explanation with visuals :)
    One piece of feedback though - the error-beep at around ~8:15 triggered my tinnitus, which is exceptionally unpleasant. I feel like it would've been sufficient to have it play for a second or two to get the point across
    Thank you for your work, it's really appreciated

  • @Luigi64
    @Luigi64 Год назад +1

    idk if it's just because i've taken classes on architecture and OS stuff now, but this is the best description of arbitrary code execution i've seen so far

  • @Viviko
    @Viviko Год назад +1

    As a software developer myself, this is a brilliant video. You covered very technical subjects in a very simple and approachable way. Very well done.

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

    I really liked how you explained tge Wiimmfi Network in this. I always wondered how it works and getting it explained while the core concept of the Video didnt need you too - great job man.

  • @pdlbackup
    @pdlbackup Год назад +2

    This is super interesting and well explained! I thought I understood how it worked when I saw that for wiimmfi there were special DNS servers, but I never even considered certificates and all that stuff. Thank you for making this!

  • @streety53
    @streety53 Год назад +3

    Massive props to wiimm for keeping this game alive

  • @arcanelizard4646
    @arcanelizard4646 Год назад +1

    I think I learned more in this video than I did in my computer networks and intro to cybersecurity classes combined. Great video and fascinating exploits

  • @EpochFlame
    @EpochFlame Год назад +1

    shoutout to the team figuring this out

  • @aydeniswise4081
    @aydeniswise4081 6 месяцев назад +1

    I was so deep into this video I forgot it was even about getting world records

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

    Haha I was about to mention it would be nice to have a longer video where you show the full setup and process of the Wii hacking.
    And in the end, you mention you have such an uncut version already available! Amazing, I subbed.

  • @dorukayhanwastaken
    @dorukayhanwastaken Год назад +3

    14:24 Except the late WFC, wherein I remember seeing a legitimate WR only once.
    One would think a 4-second Luigi Circuit run in which Funky Kong misses the first turn and AFKs on a wall could be automatically deleted in an instant, but nope.

  • @marshallsalmon6924
    @marshallsalmon6924 Год назад +2

    I came for Mario Kart Wii, and stayed for the computer science. Truly, one of the videos of all time

  • @kyal
    @kyal 14 дней назад +1

    So is this why we got all those 0 second times on the leaderboard back in the early days

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

    seriously one of the best videos i’ve ever watched on youtube, great job instantly subscribed and shared with my friends keep it up

  • @versutus2699
    @versutus2699 Год назад +4

    You always do a great job of conveying concepts in a way that's digestible for people who aren't familiar with the subject

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

    i really really appreciate how you went over every detail- i'm incredibly new to computer science as a whole and love seeing applications in full games (especially mario kart wii), but i find it hard to find people who will show the full process so i can follow along. god this is so cool

  • @basilgum
    @basilgum Год назад +3

    Wonderful video!! I have been taking a security course and I was struggling with some of the concepts you explain here. But things clicked for me when you put it in terms of how to go really fast in video game. ❤

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

    this is such an amazing demonstration and explanation of very common considerations in computer science. I was always curious of all of these things

  • @colossaldonut5190
    @colossaldonut5190 Год назад +1

    He went from new Wii to unlocking Funky Kong real quick. I approve, that is the first thing you should be doing.

  • @DragRedSim
    @DragRedSim Год назад +2

    Ah yes, I think I recall this bug in the Wii’s digital signature system. It wasn’t just used for connecting to the internet; every game had a signature calculated over the disc contents, to try to prevent exploits through modifying games to contain code other than what the developer had actually made. I was aware of it through Guitar Hero, and exploiting this bug was how that community was able to insert their own custom songs into that game - by taking the original game, replacing the files for a song with their own, then “fakesigning” that disc image. To see it used in this manner, to arbitrarily patch games that haven’t seen official updates in decades… on a system that never actually had game updates, and to do so inside the game environment itself, is seriously impressive.

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

    Thank you for this amazing video! I learned a lot throughout the process, and knowing how these exploits and programs work is always very interesting!

  • @avena7506
    @avena7506 Год назад +1

    You always come back with some crazy plan that is truly a sight to see!

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

    Ha! Arbitary Code Execution for the Mario Kart Wii. You love to see it.

  • @ctrlaltdestroy91
    @ctrlaltdestroy91 6 месяцев назад +1

    And now I know why it's called "Stack Overflow"

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

    Jeez, this is far more interesting than my day job maintaining gps software =3 Nice job!

  • @Celastrous
    @Celastrous Год назад +1

    So glad I became an Electrical Engineer so that I get to sit here and delight in all the cool shit this community does
    Good video Malleo!

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

    genuinely interesting video about a topic i struggle to understand, i never thought this day would come

  • @bodaciousdasani
    @bodaciousdasani Год назад +1

    This makes TONS of sense. Amazing video Malleo.😊

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

    This video is RIGHT up my alley, i absolutely love it. Very clear and consise and engaging. Great work!!

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

    awesome video!! feels so weird that it's all technically vanilla haha :) first time a mario kart game has had ACE! really really cool video thank you so much malleo :D

  • @gladJonas
    @gladJonas Год назад +3

    Nice!

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

    This video is awesome, mariokart wii is one of my favorite games and Im studying comp sci in college rn so this is so fascinating.

  • @Black-yz3db
    @Black-yz3db Год назад

    This is one of these videos that reminds me that there are simply different kinds of people in the world. I did take computer science, but my understanding caps at a senior high school level. I simply cannot comprehend these sort of things and the fact that some people can never fails to baffle me.

  • @daltonsw
    @daltonsw Год назад +3

    I'm nerding out hardcore on this, thank you so much for sharing. Great video!

  • @Dark_Peace
    @Dark_Peace Год назад +1

    As a computer science graduate and now cyber security student with a buffer overflow project, I wish that was our course content

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

    Positively lovely explanations of all of these CS, network, and data science concepts!!

  • @648
    @648 Год назад +12

    awesome video! love the explanations and the effort you went through for everyone to be able to understand

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

    I've been a programmer for a while now, and this thaught me a lot. Nice!

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

    nice video. even if you already know the concepts behind these types of exploits, its always nice to see them in action :-)

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

    I always look forward to your videos, Glad you're back!

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

    Incredible video, well explained and really interesting !

  • @jakez082
    @jakez082 Год назад +1

    I must've put hundreds of hours into this game as a kid. It's neat to see it broken down in such a technical manner now.

  • @Starwort
    @Starwort Год назад +3

    Actually, I wrote a small script to automatically transcribe those messages :P
    For those who are curious, you can hit read more
    Message 1: Did you seriously copy this by-hand in order to figure out what this says? Nice.
    Message 2: Seriously shoutout to MikeIsAStar for his help on this video!
    Message 3: Oh my gosh, this isn't good! You caused a buffer overflow, silly Nintendo. Kids, remember to always check that the size argument in your memcpy is less than or equal to the size of both the source and destination buffers to prevent this type of memory exploit. Thanks!

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

    This video is just plain awesome 🤩 such a fun idea and cool to see it all in practice

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

    The visualizations are on point. Very well made! :)

  • @justlookaroundpeople
    @justlookaroundpeople Год назад +1

    14:00 Riolu approves!

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

    14:00 ah yes, the riolu approach

  • @sproga_265
    @sproga_265 Год назад +1

    And this is why there are categories within glitched lmao. ACE, no major glitches, etc

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

    Best explanation of stack overflows ive ever seen

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

    Banger of a video cannot lie

  • @DarkZidan
    @DarkZidan Год назад +1

    Cant wait for the 100% Paper Mario Tas :')

  • @LavaCreeperPeople
    @LavaCreeperPeople Год назад +1

    Using Security Vulnerabilities to Get Every World Record in Mario Kart Wii

  • @feisty-trog-12345
    @feisty-trog-12345 Год назад +1

    Yoo, you have a Megan? Congrats, wish you two the best!

  • @scottstw456
    @scottstw456 2 месяца назад +1

    Hope your doing well man!

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

    Just completed the GFACT course and I feel smart understanding all this

  • @Ultimaximus
    @Ultimaximus Год назад +1

    I would say that the buffer overflow is where a "glitch" in MKWii has been used, and is clearly where the line can be drawn about what is and isn't a glitch. The game clearly intends to not overwrite data outside of the buffer, but fails to avoid that due to a lack of code to handle oversized packets. I'd call it a glitch and not an exploit because there are no "normal" circumstances where the data packets would be oversized and perfectly crafted for this purpose, and unlike exploits where you put together intended systems and mechanics in unintended ways, receiving oversized packets is unintended right off the bat.
    Alternatively, you could simply file this problem under "external tools used", where the proxy server that modifies packets easily fits the definition

  • @LandonEmma
    @LandonEmma Год назад +1

    Me who is a super cool nerd nerd: “Oh yeah, now we’re cookin’l

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

    Amazing video !!! 😮

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

    Great video!

  • @portalwalker_
    @portalwalker_ Год назад +1

    I've got two questions:
    1. What happens with data that is between the buffer and the link register? What if it contained something important we shouldn't be overwriting with something?
    2. How can we modify code? If you are in the menu the code for being in a race shouldn't be loaded into RAM, right? But you can still modify the items you receive during a time trial

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

    Holy shit Malleo?? I haven't seen an upload from you in a small minute

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

    The Chrono Trigger Music in background is sick

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

    This was a really ironic video to watch while skipping my net-centric computing class

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

    Educational and entertaining^^

  • @m.i.c.h.o
    @m.i.c.h.o Год назад

    This is super good!!

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

    This needs more views

  • @Portentous__
    @Portentous__ Год назад +11

    Hopefully there's anti-cheats in CTGP to prevent this from being used there?

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

    Intercepting network packets to modify Mario Kart Wii code? My interests have collided! Also, really well done explanation on DNS servers and certificates.

  • @Tales98
    @Tales98 Год назад +4

    Wow this is incredible! Is the ACE payload limited by the 128 bytes of buffer size or can we get past that somehow? Thinking about how possible would it be to ACE in anything we'd want, like maybe transferring a custom track over wiimmfi on the fly

  • @K1w1-irl
    @K1w1-irl Год назад

    nice video, congrats on getting engaged!

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

    Summoning Salt teaches Gamer History
    Malleo teaches Gamer Science and Gamer Math

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

    Yeah it makes sense to consider this a modification, because you're using a valid console connection (wifi) to connect to arbitrary non-standard devices. That'd be like rewriting the games code by using a custom wire to attach your computer to a controller port. The port is valid, but connecting your computer is a modification.

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

    Great video

  • @sethdon1100
    @sethdon1100 Год назад +1

    Yo da legend is back Bois

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

    I really like this video 👍

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

    If your old Wii can still read GameCube discs, it might just be struggling with 8GB dual-layer discs. I had an old Wii with the same problem. Any game released after January 2008 (the release of Brawl, the first dual-layer Wii game) would give an error, but earlier single-layer games like Wii Sports and Wii Play were fine. I didn't own any GameCube games, but since they're single-layer I assume they would've worked.

  • @oddishthoughts
    @oddishthoughts Год назад +2

    Banger video! What's the song at 5:13?

    • @Malleo
      @Malleo  Год назад +4

      Corridors of Time - Chrono Trigger