Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
AMD IT

AMD Pulls Graphics Driver After 'Anti-Lag+' Triggers Counter-Strike 2 Bans (arstechnica.com) 93

AMD has taken down the latest version of its AMD Adrenalin Edition graphics driver after Counter-Strike 2-maker Valve warned that players using its Anti-Lag+ technology would result in a ban under Valve's anti-cheat rules. From a report: AMD first introduced regular Anti-Lag mitigation in its drivers back in 2019, limiting input lag by reducing the amount of queued CPU work when the processor was getting too far ahead of the GPU frame processing. But the newer Anti-Lag+ system -- which was first rolled out for a handful of games last month -- updates this system by "applying frame alignment within the game code itself," according to AMD. That method leads to additional lag reduction of up to 10 ms, according to AMD's data. That additional lag reduction could offer players a bit of a competitive advantage in these games (with the usual arguments about whether that advantage is "unfair" or not). But it's Anti-Lag+'s particular method of altering the "game code itself" that sets off warning bells for the Valve Anti-Cheat (VAC) system. After AMD added Anti-Lag+ support for Counter-Strike 2 in a version 23.10.1 update last week, VAC started issuing bans to unsuspecting AMD users that activated the feature.

"AMD's latest driver has made their 'Anti-Lag/+' feature available for CS2, which is implemented by detouring engine dll functions," Valve wrote on social media Friday. "If you are an AMD customer and play CS2, DO NOT ENABLE ANTI-LAG/+; any tampering with CS code will result in a VAC ban." Beyond Valve, there are also widespread reports of Anti-Lag+ triggering crashes or account bans in competitive online games like Modern Warfare 2 and Apex Legends. But Nvidia users haven't reported any similar problems with the company's Reflex system, which uses SDK-level code adjustments to further reduce input lag in games including Counter-Strike 2.

This discussion has been archived. No new comments can be posted.

AMD Pulls Graphics Driver After 'Anti-Lag+' Triggers Counter-Strike 2 Bans

Comments Filter:
  • if hardware / drivers can trip Anti-Cheat? Then what happens if an big event that it trips in the middle of an Tournament with Tournament locked hardware? will they do anything? Say you got banned so you lose? Be forced to disable it on event locked hardware?

    • Anything can trip anti-cheat if it tries hard enough. AMD's driver seems to be trying pretty hard so it's not surprising.

      This feature injects code into the game. A core functionality of anti-cheats is to try to determine if game code has been augmented or modified.

      • It doesnt inject into the game, it hooks on system api, which is pretty normal, but also something some anti-cheat engines check for.

    • No shit it triggered the anti cheat system. I think this falls into the realm of what the hell were they thinking. You don't modify game code you work with the game developer to add those updates to their application themselves.

      It's a cool idea but I don't see how this could ever work in the real world. Kind of frustrating because it means that it probably can't be applied to single player games. I guess AMD could leave it in there but then they have to worry about getting caught by the anti cheat softw
      • by TheRealMindChild ( 743925 ) on Monday October 16, 2023 @01:39PM (#63929457) Homepage Journal

        You don't modify game code you work with the game developer to add those updates to their application themselves
         
        Hate to break it to you, but you are flat out wrong. A whole lot of "performance improvements" that seem to come with every minor video card driver update is doing exactly that... fixing broken code from the developer. Shit, even Windows itself does this for compatibility reasons

        • Hate to break it to you, but you are flat out wrong. A whole lot of "performance improvements" that seem to come with every minor video card driver update is doing exactly that... fixing broken code from the developer. Shit, even Windows itself does this for compatibility reasons

          You didn't understand the parent's point. The updates from video card drivers to fix issues in games do *NOT* modify game code. They work around the way the game is calling the video card's drivers on the driver level. In many cases they aren't even addressing bugs in the game, but rather bugs in the driver thanks to game optimisation hitting previously unexpected edge cases, which is precisely why so many of the bugs are specific to video card vendors.

          Windows does the same, it does not alter game code or g

  • by guruevi ( 827432 ) on Monday October 16, 2023 @12:31PM (#63929233)

    The fact a driver can access any app in memory and MODIFY ITS CODE is absolutely broken. I'm fairly sure that if you tried to get a driver like that in the Linux kernel, Linus would personally hunt you down. I haven't found any way of doing what AMD is doing here on Windows in Linux or Mac.

    They wrote a virus, pretty much any security software should ring alarm bells when this kind of access happens.

    • by Dwedit ( 232252 ) on Monday October 16, 2023 @12:43PM (#63929281) Homepage

      In this case, it's not the App that is being modified, it's the library code for the graphics APIs (Direct3D, etc) being detoured.

      Other fun fact, the Steam Overlay itself is also an example of detouring graphics APIs. But it's one that game makers must allow and never flag as cheating.

      • Re: (Score:2, Insightful)

        by Anonymous Coward

        Other fun fact, the Steam Overlay itself is also an example of detouring graphics APIs. But it's one that game makers must allow and never flag as cheating.

        I think this post covers what you're talking about. https://steamcommunity.com/groups/SteamClientBeta/discussions/3/3817418065215221719/ [steamcommunity.com]

        For Valve's steam overlay to work in all games, even those not designed for it, they have to make alterations to the API that games use. You could argue that Valve shouldn't be doing these kinds of things and the counter argument is that it saves developers the trouble of implementing all the features the steam overlay provides.

    • by HBI ( 10338492 )

      Ring 0 code can do what it wants.

      While I believe Linus has done a lot of work on himself, so much so that I doubt he'd be hunting anyone down, he has a lot more control over kernel drivers and what they can do, being a gatekeeper on what gets into the mainline kernel and what doesn't. With that said, there would be nothing technically stopping a driver on Linux or anywhere else running on x86 from doing what this AMD stuff is doing.

      • The majority of the driver is Ring 3. The only part that is Ring 0 is the miniport. That's why NVidia drivers can be updated without a reboot (AMD is too lazy to make their code properly re-entrant).

        It's not going to be the driver itself that is hooking the DLLs, it'll be some non-driver related process that is bundled with the driver, similar to the Geforce Experience stuff.

        • by HBI ( 10338492 )

          Maybe so, but if you found something that you couldn't do that way, what would be easier than to write something into the Ring 0 component to allow you to bypass all limitations. My reply was to the statement "shouldn't be able to". Well, to stop this you'd have to rewrite how driver code executes on Windows. Maybe put it in Ring 1 and enforce some limitations, but watch how quickly stuff would break.

          • by cb88 ( 1410145 )
            Are you stupid?

            The part of the driver doing this is in Ring 3.

            The part of the driver in ring 0... must be there its literally just the miniport driver that directly talks with the hardware and that is all its allowed to do (implement the miniport API).
            • Up through NT3.51 the graphics driver was separate from the rest of the system in Windows. They changed it in NT4 in order to pursue greater performance and the rest is history. Whether it was a wise decision or not is debatable, but it certainly has had negative implications for both stability and security. Most blue screens seem to be graphics driver implosions.

    • You're saying what Windows drivers can do here Linux ones can't, but you also claim the main safeguard against that is that they wouldn't get merged into the kernel, which suggests you're not so sure. I suspect the difference in capabilities is not as big between Windows and Linux as you think. Windows has WHQL which provides a similar protection as long as you use WHQL approved drivers. That said I don't know if AMD's feature here would pass or not.

    • by Iamthecheese ( 1264298 ) on Monday October 16, 2023 @01:15PM (#63929377)
      >unauthorized game mods are utterly broken

      No. Anything I deliberately install is something my computer should allow me to install, whether it's interfering with a different program or not.
      • by HiThere ( 15173 )

        Perhaps your computer should allow it, but if you are competing over a network, should the network allow it?

        That's what seems (to me) to be the argument. It's like requiring a standardized baseball in officially recognized competitions. What you do in a pick-up game doesn't matter.

        • It's like requiring a standardized baseball in officially recognized competitions.

          An officially recognized competition would require a third party to act as the referee. That's SOP for any physical ranked sport.

          There's no such thing for online multiplayer these days. There used to be, in the case of Dedicated Servers that ran on third party hardware. (game's developers / trusted community members / hosting providers / etc.) That went out the door when industry publishers / stockholders realized they could make more money offing the responsibility for running the games to the players (

    • by tlhIngan ( 30335 )

      The fact a driver can access any app in memory and MODIFY ITS CODE is absolutely broken. I'm fairly sure that if you tried to get a driver like that in the Linux kernel, Linus would personally hunt you down. I haven't found any way of doing what AMD is doing here on Windows in Linux or Mac.

      They wrote a virus, pretty much any security software should ring alarm bells when this kind of access happens.

      You do realize it's possible to do this in Linux right? In fact, debuggers modify application code all the tim

      • by HiThere ( 15173 )

        Or perhaps games shouldn't have root access rights. This sounds like administrator access rights are being abused to gain an unfair advantage. Competitions should be between things that are "standardized" in particular ways, and what those ways are should depend on what the competition is about. If you're playing a network game, presumably you're competing about your skill as a player. If that's the case, this definitely sounds like cheating....even if someone else is doing it for you.

      • by guruevi ( 827432 )

        You need to have root privileges and the application needs to either allow (or not deny) tracing or you need to be a parent process of the tracee. Yes, at some level, someone can always break shit, but drivers have permission levels in Linux as to what they can and cannot do (by default).

        Linux has similarities to a microkernel in that way. My point was that non-debug level builds/distributions don't just easily allow this kind of stuff. If someone built a kernel module that allows random access to random me

    • The fact a driver can access any app in memory and MODIFY ITS CODE is absolutely broken.

      Windows Drivers are, by design, a trusted part of the OS. Remember all of those WHQL signature requirements? If you're not a hardware developer, every driver you use comes with Microsoft's mandatory blessing. That makes it part of the expected behavior of the OS.

      Also, what makes you think that code in userspace should be immune to inspection / alteration by code in the kernel? Especially when that kernel code bares the signature of the kernel's developer? Let's be fair here, Microsoft could also resolve

      • by guruevi ( 827432 )

        All application code should be immune from inspection from other applications unless the user specifically authorizes this (eg. enabling debug/developer mode).

        Drivers should not have unlimited control (unless granted) because exploits of your network firmware or even physical extensions to your memory/peripheral bus (ThunderBolt, USB-C etc) could then grant full access to your system.

        Drivers and devices get a specific area of memory to read/write, do DMA etc from their respective devices, else you couldn't

        • All application code should be immune from inspection from other applications unless the user specifically authorizes this (eg. enabling debug/developer mode).

          Congrats you just broke all antivirus programs. Do you seriously think that an infected device is going to allow the user to grant permission to detect it's infection? Because if you do, I've got a bridge I'd like to sell you.

          Drivers should not have unlimited control (unless granted) because exploits of your network firmware or even physical extensions to your memory/peripheral bus (ThunderBolt, USB-C etc) could then grant full access to your system.

          Flaws are flaws. If the physical capacity exists, some hacker will find a way to use it. No amount of popping-up "DO YOU PERMIT ACESSS YES OR NO!?!!" Is going to fix that. Further, most of those being bombarded with these pop-ups have no idea what's being asked of them. Let alone whe

    • The fact a driver can access any app in memory and MODIFY ITS CODE is absolutely broken.

      No it's not. It's literally a requirement. There's a reason why drivers run at highest privilege levels. Heck on Linux many are ... hold your gasps ... baked into the kernel directly. I know I know. SCARY!

      • by guruevi ( 827432 )

        Device drivers in Linux and peripherals have limited access to memory. Hence why things like virtualization work and we have a cloud that doesn't require a new machine for every user (unless you're running Windows/HyperV off course).

  • Valve is wrong (Score:3, Insightful)

    by sinij ( 911942 ) on Monday October 16, 2023 @12:31PM (#63929235)
    I am surprised Valve decided to use VAC to pick a corporate fight with AMD. Anti-cheat should be reserved for stopping cheaters and there is no technical or moral definition where players using OEM drivers for OEM hardware should be considered cheating.
    • by a5y ( 938871 )

      You left out the reason Valve is wrong my dude.

      Was it Valve was wrong because details of how VAC works that anyone developing driver software would need to know weren't publicly available?
      Was Valve's wrong philosophically in the design of VAC that demanded a kind of performance parity that these AMD drivers now will not adhere too?

      Also, you just going to not address the issues mentioned in the piece the drivers have with games that weren't developed by Valve? If you don't people might think unfairly of you

      • Valve is wrong... why?

        Good point. My only modification is that after verifying that it was AMD that issued the software, not as a "cheat" but as an "optimization", and that AMD backed off when informed, that the bans of affected players be reversed. It's not their fault.

        While it's not quite "update to the latest drivers, get banned", in that per the article you had to go in and turn it on, a checkbox in your driver configuration that tells you that it'll "improve performance" isn't far off.

        The only thing would be Nvidia rollin

      • by sinij ( 911942 )

        Valve is wrong... why?

        If this decision stands, the next step would be exclusive titles that artificially prevented from running at all on NVIDIA or AMD hardware.

        To answer your question: I was very clear, they are wrong because players using OEM drivers for Commercial off-the-shelf hardware are in not cheating. If Valve has a problem with AMD, they need to take it up directly instead of fighting proxy wars by penalizing players that did nothing wrong.

        I do not own an AMD graphic card and have not played CS for decades.

        • "I didn't cheat! It's this wallhack.exe I ran on my computer that's cheating!"

          AMD did retract the driver release, but now they do have to put the onus on gamers not to circulate it underground and use it.

          • Why would gamers want to circulate it? It's not like it's a wallhack level cheat, and it's obvious to the anti-cheat software, so they'd get banned.

        • they are wrong because players using OEM drivers for Commercial off-the-shelf hardware are in not cheating

          Well... apparently you don't remember this [theregister.com].

    • wat...

      Valve isn't picking a fight here. AMD wrote a driver that does the same thing that cheat programs do (modifies running game code). Valve detects when modifications happen for cheat detection - it doesn't know or care if that modification is for legitimate or illicit purpose.
      • Well, they can probably whitelist "approved" modifications, but that would require AMD communicating with Valve before releasing the drivers into the wild.

      • now what if say an windows OS update tripped the cheat flag?
        Or say an DirectX update added speed up code that modifies running game code?

      • by sinij ( 911942 )

        AMD wrote a driver that does the same thing that cheat programs do (modifies running game code).

        "Modifies running game code" is a meaningless statement when applied to the hardware platform. Your CPU modifies running game code, one machine code instruction at a time, all the time even when idle. That why we represent code as a state machine when formally analyzing it.

        You need to look into what it does - is there modification of player inputs or their timing, is there modification of what player is allowed to see at that specific time?

        • by Bahbus ( 1180627 )

          Your CPU modifies running game code, one machine code instruction at a time, all the time even when idle.

          That is not how CPUs work. They are not modifying anything on their own.

      • Does Valve's anti-cheat voodoo simply use reflection to get the currently executing assembly and ban the user if the assembly isn't theirs?
    • I remember long time ago when I was still playing CS a new type of optical mouse with a faster sensor came out. I don't remember technical details, but Logitech figured out how to get position updates from a sensor more frequently when all other hardware used fixed rate. I think it was original MX, but I might be wrong. That was a huge advantage over existing hardware, so everyone switched to using that mouse. Then competition came up with something comparable. Nobody thought of using a better mouse as chea
      • by Bahbus ( 1180627 )

        Because the mouse doesn't change or intercept your input in any way. It just sent better inputs to begin with. That is not what is going on with AMD. They are intercepting code they don't have permission to intercept and changing it around. If your inputs are being captured and changed in anyway before being sent to the server, you are cheating - whether you realize it or not.

        AMD sucks ass and makes very stupid decisions constantly.

    • I don't understand what their basis is. It's like saying a faster cpu or 144hz monitor is cheating.
      • by Bahbus ( 1180627 )

        Not at all even close to similar.

      • A faster CPU or 144hz monitor doesn't modify game code to achieve a faster refresh rate. I know this is /. but it would probably be helpful to at least read TFS so you can at least understand where the point of contention lies.
        • It reduces latency, same as the reported driver hack.

        • It is the same. Gamer A knows that if he buys a certain card, it reduces apparently latency. Why do they give a shit how it's done?
        • This doesn't modify game code either, it intercepts system API call to align scheduling of drawing.

        • by AmiMoJo ( 196126 )

          Arguably those things do give the player an unfair advantage though. That's the problem with PC gaming, it's not a level playing field in many games.

          Other games like Street Fighter limit the frame rate to 60Hz for this reason. Even there though, there are input devices that are debatably cheating. You can play on keyboard, or you can get a "joystick" that has the joystick part replaced with buttons. Moves that were previously slow, like rotating the joystick 270 degrees, are suddenly fast because you just s

    • AMD is hooking into the games Win32 API calls and intercepting them. Of course, it's going to trip up anti-cheat because those systems are literally designed to prevent external programs from tampering with the game in that manner. That's why NVIDIA's solution, Reflex, actually requires the game developer themselves to implement support.

    • I am surprised Valve decided to use VAC to pick a corporate fight with AMD.

      I'm not surprised you have no idea what is going on here. Valve hasn't decided to do anything. Valve games use VAC that's the beginning and end of it. AMD implemented a driver which unintentionally triggers how VAC works which includes looking for game code being directed and manipulated in flight (since that's how most technical cheats are implemented).

      None of this is anyone deciding anything or picking a fight with anyone.

      This is AMD not testing their code before pushing it, and not working with Valve / V

  • So, get some added performance by doing something smarter get banned for cheating. However the guy that shell out extra few $100 for a faster card gets lower input latency no problems there!

    What BS!

    Personally this is why I have stayed 100% out of the Steam eco-system. Its just the usual you own nothing DRM crap and we make the rules, they will be just as heavy handed as everyone else that uses DRM the instant the market gives them the power to do so.

    If I can't get it on GOG, or elsewhere without DRM its n

    • by sinij ( 911942 )
      Have you looked at the video card prices recently? It is a lot more than "few $100". Top of the line card today easily cost $1500+. Insane.
      • by DarkOx ( 621550 )

        I was think $400 card vs $1000 card or something but yes video cards are crazy expensive.

    • Based on Valve's response it suggests to me they did not try to work with Valve on this, otherwise Valve could have added an exception into VAC (or advised AMD to not enable the feature for CS2). My guess is AMD tested it briefly in CS2, and pushed it live before the VAC ban hit the test account.

      • Yup, VAC bans don't trigger instantly, they come in waves to make it harder to know if a new hack was detectable or not. So this new "optimization" may have looked fine to AMD's developers while still being flagged on Valve's end and the ban sent out weeks later.

        • they come in waves to make it harder to know if a new hack was detectable or not.

          Perhaps this is a really stupid question, but would those who are working on cheats be able to determine that anyways? It seems like something that could be deduced rather easily.

          • Only Valve knows when VAC is triggered, so to avoid giving the hackers feedback on what action was detectable, they wait a while before issuing a ban. This also lets them catch more cheaters that think the hack is working undetected while the evidence of their violations pile up.

            • Still, depending on the game, deducable - granted, it'd be a right pain in the ass, but if the TF2 botting problem is anything to go by, creating accounts to test each thing individually would be easy.
    • by Bahbus ( 1180627 )

      This isn't a Valve/Steam issue. It's an AMD is fucking stupid as fuck issue. Don't buy AMD and don't use their shit drivers, which they've never been good at, and it's not an issue at all.

      • by DarkOx ( 621550 )

        Right because Valve should get to decide what operating system stack I run on my system.

        DirectX is a API, and API is contract, as long the interface presented to their software does what is advertised, its NONE OF THEIR BUSINESS HOW!

        They want to make rules against aim bots and automation - fine with me but if they can't distinguish between aim-bot and shim to enable some efficiencies in a video driver, its their shit that is broken not the video driver.

        • by Bahbus ( 1180627 )

          Which makes it clear that you have no understanding of how VAC works, nor how drivers work, nor why this driver specifically is an issue. This is AMD's fault for introducing tech they didn't verify nor work with the publishers before releasing. In order for AMD to release this to the wild, they first need to make sure Anti-Cheats don't get triggered. To make sure anti-cheats don't get triggered, AMD would need to give a heads up to the publishers who use anti-cheats to make sure the anti-cheat software is u

          • by sxpert ( 139117 )

            nope, the anti cheat, just like any DRM is crap and needs to be scrapped or fixed to get on with the times. this shit is hindering progress, period

            • by Bahbus ( 1180627 )

              Well, again, to get fixed, they need to know what needs fixing. And if AMD would have given them a heads up, perhaps they could have fixed it ahead of time. But AMD didn't because AMD is fucking stupid.

              I would love to scrap anti-cheats all together, but as long as there are highly competitive games there will also be cheaters.

              There are only three reasons to want anti-cheat gone:
              -You are a cheater
              -You got fucked over by anti-cheat when you were 100% innocent (not including this driver release)
              -The anti-cheat

              • by Bahbus ( 1180627 )

                Fuck, I added a fourth reason at the last second and forgot to go back and change it.

              • by Saffaya ( 702234 )

                -Anti-cheat should be server side but publishers are fuckers and like to stick it to the players for maximum profits.

                • by Bahbus ( 1180627 )

                  That doesn't work, because all the input would look the same. Server side can work against wall hacks and such, but wouldn't be able to differentiate between human and completely automated input - aka a bot. You can rely on players to report suspicious bot-like activity, but that creates new issues. False reports that have to be analyzed. Slow response times to take affirmative actions.

                  Unfortunately, it needs to be some combination of the two.

          • by DarkOx ( 621550 )

            I am not clueless at all you are just shilling for Valve for some reason.

            If value is relying on stupid things like checksums not changing, entry points at specific memory addresses, and detecting other side effects of called code vs actually doing behavioral analysis of inputs and game play - their system does not work.

            That is litterally all there is to it, you are defending values crappy kludge just because they labeled it anti-cheat, instead of the "horseshit-it-is-really-our-computer-not-yours-DRM-shovel

            • by Bahbus ( 1180627 )

              You expect complex behavioral analysis of every single player in a competitive game? Do you even know how many resources that would require? The power needed to run the analysis? The storage needed? Is it going to be AI based or human based? Humans take time to respond, AIs may falsely ban people.

              Checksums not changing is very important - just ask the open-source community.

              And while it's not "their PC" it is still their software - not yours. You purchasing software doesn't make the software "yours". It neve

  • Do I cheat? No. Do I want to cheat? No. Do I trust VAC to be flawless? No. Do I believe Valve will give me back my 20 year old account in the case of something like this, or the previous instance where VAC mistook an outdated DLL for a cheat? No. Do I therefore want to risk my account, which has some games I can't rebuy and developer credentials for others, on Valve's capricious black box anticheat system?

    The answer to all these things is no. So at least in some cases, Valve's VAC is successfully preventing cheating by also successfully discouraging multiplayer activity at all. /I still like Steam, I just don't risk multiplayer with it

  • If a player has poor ping fill in the gaps with prediction instead of stuttering
  • Proof anti-cheat and the rest of the DRM malware is backwards and asshat-stupid as it prevents progress...

  • A major hardware partner pushing an official feature of their driver should be considered a "mulligan" on the part of affected users, no? This is AMD, not a VISCKOVCRE mouse off ~~AliExpress~~ Amazon.

  • Quit worrying about squeezing out every fucking frame. Just focus on actual driver support and hardware functionality. As it stands, Team Green is looking to be my next GPU choice thanks to this garbage. You did this before, too, and it resulted in the same fucking thing. You should fucking know better.

    • by ET3D ( 1169851 )

      Since AMD driver support is generally better in a lot of ways than NVIDIA's driver support, and since its hardware functionality is fine except for what are still edge cases like AI and ray tracing, you'd have to provide a better argument for buying NVIDIA.

    • by DarkOx ( 621550 )

      You should know better. AMD tried to give you a software update - FOR FREE - to make hardware you already purchased more performant. Valves shovelware can't tell the difference between an optimized driver and cheat-ware and you blame AMD?

      SMH

      • by Khyber ( 864651 )

        Optimized drivers don't go hooking into a game .DLL - they have their own settings on their driver lists for the game EXECUTABLE.

        Tell me you don't do game dev without telling me you don't do game dev.

  • Two things have caused me to not play online against other people anymore:

    Cheaters and ... the anti-cheat crap show.

Think of it! With VLSI we can pack 100 ENIACs in 1 sq. cm.!

Working...