The RCE that AMD wouldn't fix

(mrbruh.com)

88 points | by MrBruh 2 hours ago

18 comments

  • Terr_ 39 minutes ago
    > Final update: A couple of days before the embargo ended (and after I wrote the majority of this blog post), AMD told me what their patch for this vulnerability is [...] Although it is true that they now fully use HTTPS, the claim about signature verification is untrue; they only perform a CRC-32 check on the downloaded executable, which is not cryptographically secure.
  • tlb 2 hours ago
    It's ridiculous to consider MITM attacks out of scope for taking over your computer. Also, there are probably ways to exploit this without a true MITM like DNS cache poisoning. But it's best to just assume the whole internet is MITMed.
    • amiga386 1 hour ago
      MITM where attacker needs to install their own CA certs on the victim's device -- sure, out of scope.

      MITM because you used http instead of https and you don't have any other verified cryptographic signature on your data -- get tae fuck, fix it pronto.

      • pietervdvn 1 hour ago
        I'd even count this as "having local access to the device", as that is what is needed to install such a cert
    • joxdosba 37 minutes ago
      Why would anyone ever exclude true mitm?

      Various domain registrars have been compromised over and over again (often by children!), resulting in companies like Tesla and Cloudflare getting owned.

      The reality is that any vaguely competent attacker can compromise a court clerk and just compel e.g. the .com registry to hand over whatever domain they want.

      Although I suppose the aforementioned problem has significant implications beyond dns…

      • gruez 4 minutes ago
        >Why would anyone ever exclude true mitm?

        Same reason security programs exclude social engineering, even though that's a pretty common way for companies to get pwned.

    • sigmoid10 2 hours ago
      Out of scope does not necessarily mean out of impact. It is merely a question of how far a company wants to be responsible for the environment their software is run in. Most of the time that answer is "not much."
    • tuckerpo 1 hour ago
      Out of scope in this case means "we don't wanna pay you"
    • dlcarrier 1 hour ago
      But I use a Wi-Fi password, so my phone says it's secure!
  • nickdothutton 1 hour ago
    AMD's inability to make good software has been a recurring problem for decades. Many years ago I had some success with their optimising compiler, but everything else I've touched was bad. A real pity.
  • dcminter 2 hours ago
    The "signature verification" in the fix being CRC32 is pretty hilariously clueless.
    • jeroenhd 1 hour ago
      It's technically possible (though I don't know if they actually do this) that they're not referring to a signature check in the download part, but are verifying the code signing signature of the executable downloaded. You'd only notice the CRC if you were looking at the downloaded content, but if the updater refuses to launch an executable that isn't signed by AMD's cert then they would be fine.

      Given the way AMD has been treating this issue, I'm assuming they're just incompetent, though.

      • LgWoodenBadger 1 hour ago
        A manager somewhere made the embarrassingly wrong decision to not fix this, and they’re too egotistical to correct their mistake.

        That’s my take.

    • throwway120385 1 hour ago
      Especially because if they had read about or studied this problem they would find tons of prior art where CRC32 was considered not secure for solving the problem. CRC32 solves a different problem -- how do you verify that the data that was received is identical to the data that was sent. It makes no guarantees about who is sending the data, which is the real problem signatures solve.
      • wat10000 1 hour ago
        More specifically, it solves the problem of verifying that the data received was not accidentally corrupted somehow. Unlike cryptographic hashes, CRC32 does not do much to defend against deliberate, malicious modification. It's too easy to craft some different data that matches a given CRC32 value.
        • AlotOfReading 1 hour ago
          Computing a CRC is equivalent to attacking it. The checksum is the value that produces a certain fixed constant when appended to the data. This is why you'll often see checksums as the last field in a message. It allows for hardware to verify the entire message by checking if the CRC of the bytes equals that fixed constant without having to parse it.
    • sitkack 1 hour ago
      They should have done base64 encryption before the crc32. noobs
  • larpfinder 32 minutes ago
    Perhaps they're concerned that you're simultaneously a 'security professional' and online harasser/doxxer? https://www.youtube.com/watch?v=YRI4Dshn0CE&t=3114s
  • qrobit 1 hour ago
  • leecommamichael 1 hour ago
    Thank you for looking into this, I also have the annoying pop-up and have been suspicious of it…
  • bwfan123 2 hours ago
    > In my frustration, I decided to punish this software

    Love this. I am frustrated by idiot software features everywhere, but am not triggered yet to punish them. AI automation is coming close however.

    • hilariously 39 minutes ago
      I got so mad at plex/jellyfin's crap I vibe coded an entire entertainment system out of spite.

      Works great!

  • Dwedit 1 hour ago
    There's two requests involved for the auto updater, one to grab the XML file, and one to grab the driver file over plain http.

    If the autoupdater can't handle the redirection when grabbing the XML file, then it's a case of accidental safety by mistake that would prevent grabbing the plain http file.

  • OkayPhysicist 1 hour ago
    AMD's utter incompetence when it comes to the software side of things is truly, truly baffling to me. It's not like you need a mountain of developers, a team or two on the right project would do wonders for their market share.

    For example: Implement the CUDA. CUDA's won, hands down, that toothpaste is solidly outside the tube. Luckily, to the outside observer CUDA is just an API, and API's aren't copyrightable. Literally nothing is stopping AMD from hiring a relatively small team of developers to make AMD GPUs CUDA-compatible.

  • ezoe 1 hour ago
    > If you are an AMD user...

    Don't bother to use Windows?

  • greenavocado 43 minutes ago
    Congratulations, you found the government backdoor!
  • dmitrygr 53 minutes ago
    I think we can all agree that MiTM is a valid attack vector and this should have paid out the bounty. AMD won't do it, but perhaps we can crowdsource it - the dude deserves it. Join me in doing this: https://ko-fi.com/mrbruhh (identical link to the one in the write up, feel free to verify).

    I started it with $100 - https://ko-fi.com/transactions/03df753c-09b0-4972-8e53-adf06...

  • mrguyorama 1 hour ago
    AMD software is often utter trash.

    I am a diehard fanboy of their GPUs, and have been since they were still ATI but I had to finally purchase an nvidia GPU because of how bad AMDs software quality is.

    My powerful 5700XT spent two years basically broken, because the default, driver provided fan curve locked the fan at 27%. For two years, I couldn't figure out why my GPU constantly crashed, because it was overheating, because the default fan curve prevented the GPU from keeping itself cool and it would eventually just give up.

    That diagnoses was complicated by the fact that AMD GPUs just resetting is very common. There's a watchdog timer in Windows that resets parts of the GPU stack because Microsoft is traumatized by 60% of Windows Vista BSODs being caused by bad nvidia drivers. Apparently sometimes if you increase this watchdog timer, the GPU eventually finishes whatever was giving it trouble.

    But I still love AMD, and the ryzen line is a great value in the mid range. So I bought another AMD CPU and am very happy with it. But it somehow included software and this specific auto updater utility. Which I don't need, since I don't want to update the drivers for a GPU that I shouldn't be using (maybe except some video encoding lift, but my GPU can do that too). But I could not figure out a way to kill or prevent this stupid little autoupdater utility which always steals focus, for no reason at all. It shouldn't even be popping up a CLI! Windows task scheduling is incredible and would do this without a problem, and give you all the infrastructure to notice this was happening!

    • LooseMarmoset 56 minutes ago
      Drivers got better after ATI merged/got bought by AMD, but ATI has a loooooong legacy of terrible drivers in Windows.

      The funny thing is, in Linux, the drivers are pretty great as far as I can tell. It's not like there aren't bugs, probably, but mostly everything "just works". You can't depend on FSR in Linux, for example - Doom Eternal just goes blank if you turn it on. I can live without it, though, and everything else seems fine, including performance.

      Nvidia linux drivers make me quite upset - they're fine once you finally get them working, but you approach Nvidia driver updates with extreme caution in Linux

  • rirze 2 hours ago
    Seems like white hat work is pretty fruitless nowadays. Disappointing.
    • inigyou 1 hour ago
      They keep choosing to work whitehat instead of blackhat, which is all AMD ever wanted.