• 43 minutes

    Phillip Koskinas, Riot’s Head of Anti-Cheat, writes on X that hardware bans last for a maximum of four months and apply exclusively to the game in which a cheater was caught.

    Now we have a name. He probably thinks he is doing the Lord’s work with kernel-level anticheat, and we should all be grateful for his awesome contributions to gaming 🤣

  • 22 hours

    This is why kernel level anti cheat and every variant of it include the tpm ones should be discouraged. Performance Hits are huge too in case of denuvo

    • 14 hours

      Those things are completely unrelated to this.

      • 24 minutes

        I would think that pulling hardware ID values would be an administration level task, requiring root or kernel level access. So yes they are related or at least should be.

  • 21 hours

    The article says because he installed the chip and launched Valorant, his other PC components such as his motherboard are not also blocked.

    He can’t play a Riot game unless he buys an entirely new computer.

    • 1 day

      valorant is the facebook of games. only boomers blithly ok with human right violations linked to the socials they use would think it is a good idea to stick with it

  • Ah classic Riot games, investing all the money in anti-cheat while their launcher lacks basic functions like “download throttling”.

    No idea how Steam keeps winning…

  • I would be very interested to know how they are able to identify a specific CPU. The article speculates but does not answer this question.

    The fact that this is even possible is a security nightmare.


    OK, I’ve done a bit more digging and pieced it together. Acknowledgement to @[email protected] for prompting me to try (again) to find a command that might do it among other things.

    IMO, this sort of information shouldn’t be in processors in the first place, but apparently it is there and needs admin/root access to, well, access it.

    … and the game in question requires kernel-level anti-cheat, so of course, it has the necessary access.

    The command for Linux is sudo dmidecode -t processor, which dumps a lot of info including an ID field, which is supposedly the CPU’s specific identifier. It can be grepped for or otherwise filtered out.

    My own Ryzen gives 8 hexadecimal pairs, so it’s a 64-bit value.

    I would not know that that was unique to my specific individual processor if I had not been told, but I’ll assume that at least part of it is not unique between Ryzens of the same calibre. (I won’t be posting any of it for comparison, for obvious reasons.)

    So the upshot is, if you don’t want to be identified right down to your CPU, don’t run programs as root if there’s any chance of them phoning home.

    • 22 hours

      Question is, what happens if you don’t have dmidecode installed? Even more interesting, what happens if you’ve replaced it with a fake that spews back values of your choosing? If they’re bundling it, given that it appears to be GPL2, they’re opening themselves to a lawsuit unless they provide source upon request.

      (Somehow, I don’t think they’re actually using dmidecode.)

      • 19 hours

        dmidecode is a tool for reading loads of platform registers, it is obviously not the only way to do it, or even the intended way really. Riot has almost certainly implemented the functionality from scratch in their anticheat, it’s a relatively trivial thing to do.

      • What I’ve read just now is what I’d deliberately not gone looking for up to this point in case I found this out.

        Linux and Windows happen to require that the executables that access that information be run with root privileges, but it looks like that’s merely an affectation.

        It seems that any old piece of software, without root or other privileges, can independently run the CPUID instruction that obtains a processor’s serial number.

        I do not like this one bit.

        • 14 hours

          Why not? Is that information considered sensitive? Personally I tend to avoid running untrustworthy programs outside of a sandbox or VM.

          • Personally I tend to avoid running untrustworthy programs outside of a sandbox or VM.

            what does that mean? are you not running any programs at all? you cannot know just by looking at the name if a program reads such sensitive info. and its not unlikely that some developer figured it would be a good idea to include it in automatic crash reports

            yes, this is sensitive information. its like your fingerprint, you cannot change it. I think its quite obvious. web browsers firefox is fighting to hide more and more that even indirectly could lead to identification. websites can’t read this ID, this is just a comparison.

            • you cannot know just by looking at the name if a program reads such sensitive info.

              I can know from the code ;P

          • Are you a believer in the idea “They who have nothing to hide have nothing to fear”? Hint: You shouldn’t be.

            And do you know for certain that your sandboxes and VMs don’t simply pass through the CPUID instruction? And if they don’t, do they rotate their fake CPUIDs? And how often does that happen?

    • 2 days

      Running proprietary programs as root is my definition of hell, especially when it’s something frivolous like a game

      • 4 minutes

        This is not running it as root (i.e. privileged userland, still ring 3), this is running it as ring 0 (i.e. the level that the kernel runs at, with no restrictions on access to memory and hardware at all). A tiny bug in ring 0 code can take down the system or open security vulnerabilities, where the kernel can provide more hardening to protect applications to an extent.

        You could say this is the inner circle of hell.

    • You can extract the chip’s serial number in software trivially. In Windows, from a commandline:

      wmic cpu get pricessorid

      I’m positive you can do the same with some Linux command, and failing that certainly with basically every vaguely modern benchmarking tool. Same deal with hard drives and probably also video cards. My BIOS/UEFI even enumerates all my connected hard drive serial numbers on screen if I interrupt its graphical boot screen.

      Given that the anti-cheat schemes these competitive games are literal rootkits, I don’t think gathering the user’s hardware serial numbers in order to attempt identify them is much of a stretch.

      • You at least could in the past, I haven’t had to do it in a while. Seems like the command would just be “dmidecode”, with grep if you’re looking to automate it

    • I wonder if Riot would provide any info on the ban status of a certain component when given its ID…

      • 2 days

        They would not.

        Anyone doing anti-cheat stuff tries to keep it as secret as possible, so that the cheaters have a more difficult time working around it.

        • It sounds like at least one cheater already figured it out. Just swap the chips. Then sell the old one used and pass the problem onto someone else.

          • From the article, it tracks and blacklists other major system components too, so you would essentially have to replace most of your system. Probably the entire thing, since a single leftover bad component would lead to your entire new system being added to the blacklist.

            • That actually explains why they do not want linux users,I could just modify my OS to not give the right IDs Welp, Unless they made their thingy from scratch instead of using a system component which at that point idk how you would approach it

      • Either I knew and forgot, or misunderstood it as CPU family identification whenever I’ve come across it. Denial is also a possibility. We’ll see if I remember this in a month or two.

  • This is so dumb. as if there was no reasonable way to detect cheating without these super invasive anti-cheat monstrocities.

  • Happened to a coworker with CoD 2019+ with a Facebook marketplace rig. Was also not being smart, and after he got his account banned and not realizing what was going on, he got his brother to log into his account as a sort of test, and also got that account banned.

  • 2 days

    That’s a whole lot of bullshit just to start a game. Pass.

  • 2 days

    What’s wrong with this website. I don’t see the button “reject”. I’m not gonna accept whatever that is just to read this.

    • I finally found it, it’s like 300 pages of individual rejections you need to go. Hard pass.

      • I have uBlock origin, it blocked 5 resources on load but it didn’t prevent the “With our Pur subscription you can use heise.de without tracking, external banner and video advertising for €4.95 / month” popup.

        • You can use uBlock to snap the banner out of existence (it has a mode to delete elements from a website)

  • Wow, that sucks. I don’t even know if you could get your money back for the CPU in that case, as the seller could just claim it wasn’t him. Doesn’t sound like Riot is being that cooperative in such cases either.

    • 22 hours

      Claim that it isn’t fully functional (which it isn’t, for the buyer’s use case), and therefore not as described?

    • HWID bans usually involve a much larger fingerprint of the system hardware. Riot would have to be really big assholes not to revert the ban, if they were to snapshot the rest of his system and see that only the CPU was part of the original ban.

      • Riot would have to be really big assholes not to revert the ban,

        So, yeah, that’s not getting reverted.

  • Meanwhile I play(ed) on a VM and would frequently have to fight with support over: no, fuck you - unban me. Virtual hardware isn’t a valid reason to ban every few months. It worked. It was bothersome - so I quit playing. Ample free time for games that weren’t user hostile.

    • I’m surprised the kernel anticheat didn’t autoban you right away starting the game

  • The odds of this happening are so low, but at the same inevitable.

    Funny. Sucks for the buyer.

  • I just quit gaming. I refuse to be a beta. I don’t give a fuck no more. After Holocaust 2.0 these types of things bring me no joy. Grow up

    • 1 day

      Holocaust 2.0?


      Also, I use one criteria for defining an adult:

      “An adult is a person who understands when it is apropriate to be childish”

      Just telling others to “Grow up” means that you have a lot of growing up to do yourself.