Hello Mods,
I believe you when you say warden hasn't changed. I understand you elevate privileges when you launch, that you hook calls warden uses to check proc list. I understand demonbuddy.exe in the process list isn't an issue. I'd love to hear your thoughts on the following however. I think it's a real issue that needs to be addressed and could be used by blizzard for detection.
I've noticed that DB has no real protection against running profiles that the character is unable to from the GUI. If, for example, I load up ACT 3 Inferno champ hunting it actually creates a request to the server (the process generates network traffic anyway) and the server responds with an error that is parsed by the client and presented to the user.
The problem is that even one of these mistakes could flag our accounts -- no legitimate user can attempt to create an inferno game from the GUI without unlocking it.
If blizzard isn't using this method to flag accounts it's their mistake. We should be careful loading profiles but protection in DB would be good. This is one example of many and I'm bringing it up to make a point - DB seems to over use injection. Attaching to a process and writing memory is easy. Doing it right is fracking hard. Doing it perfect is near impossible and being perfect is required, else we start crashing. Crashes are Blizzard's best friends. The client going into invalid states all the time over and over and over in a pattern SCREAMS bot, screams injection.
I think if DB is to continue we need a massive brainstorming session.
There are things that blizz logs and we know they log (because they are achievements) that work against us - gold picked up, elites killed, etc. These will get our bots flagged for sure but there isn't anything we can do about that. There *ARE* things that we can fix and we need to look at those. I know DB uses injection heavily and it may be worth re-considering injection when it isn't absolutely necessary (can sending the window a click be used instead in some cases? I know window focus is an issue). If injection is the only way it needs to be done better.
Cheers
I believe you when you say warden hasn't changed. I understand you elevate privileges when you launch, that you hook calls warden uses to check proc list. I understand demonbuddy.exe in the process list isn't an issue. I'd love to hear your thoughts on the following however. I think it's a real issue that needs to be addressed and could be used by blizzard for detection.
I've noticed that DB has no real protection against running profiles that the character is unable to from the GUI. If, for example, I load up ACT 3 Inferno champ hunting it actually creates a request to the server (the process generates network traffic anyway) and the server responds with an error that is parsed by the client and presented to the user.
The problem is that even one of these mistakes could flag our accounts -- no legitimate user can attempt to create an inferno game from the GUI without unlocking it.
If blizzard isn't using this method to flag accounts it's their mistake. We should be careful loading profiles but protection in DB would be good. This is one example of many and I'm bringing it up to make a point - DB seems to over use injection. Attaching to a process and writing memory is easy. Doing it right is fracking hard. Doing it perfect is near impossible and being perfect is required, else we start crashing. Crashes are Blizzard's best friends. The client going into invalid states all the time over and over and over in a pattern SCREAMS bot, screams injection.
I think if DB is to continue we need a massive brainstorming session.
There are things that blizz logs and we know they log (because they are achievements) that work against us - gold picked up, elites killed, etc. These will get our bots flagged for sure but there isn't anything we can do about that. There *ARE* things that we can fix and we need to look at those. I know DB uses injection heavily and it may be worth re-considering injection when it isn't absolutely necessary (can sending the window a click be used instead in some cases? I know window focus is an issue). If injection is the only way it needs to be done better.
Cheers