😠 STEAM BANS 13/2/2016

Posts 31–45 of 48 · Page 3 of 4
Quote Originally Posted by MiKe34123 View Post
For 1.2.208, try to NOP out 2 bytes or place a JMP at 0x49324C. If that doesn't work, just play around with that code block a bit. I haven't gotten a chance to test it yet. As for bypasses, me and Xeno tested out a few things. Honestly, things aren't looking too great. If some miracle doesn't pop up in our findings, MW2 is looking like it will need another custom client and servers like iw4m or repz.
I don't think there is anything that can be done considering the "steam connect failed" is a direct result of SteamMatchmaking()->CreateLobby() returning a bad status. You would have to bypass Steam authentication to get a bypass working :/
Quote Originally Posted by CamxxCore View Post
I don't think there is anything that can be done considering the "steam connect failed" is a direct result of SteamMatchmaking()->CreateLobby() returning a bad status. You would have to bypass Steam authentication to get a bypass working :/
As of now, I don't think there is any way to bypass the server block. You straight up are unable to play on official servers nor with friends. The best you can do atm is trick your client into skipping the errors and letting you play solo in private match.
How did AgentGOD manage to bypass VAC ban status?
Quote Originally Posted by Kid a View Post
How did AgentGOD manage to bypass VAC ban status?
Back then, you wouldn't get the "Steam connect error" and it was just a matter of patching out the code for VAC kicking players if they were banned (hence why you had to be host, or have the host disable VAC kicks). Now, you are unable to even connect to the servers to find a match. An untested theory is if you connect directly to a public match (Xeno said there is a function that allows you to connect directly to a server). The only issue with this I see is that the host's client still might try and kick you for cheating/being banned (provided this even lets you connect to the server in the first place).
Since we have a lobby tool,can't we play online after doing that bypass trick and then turning that private lobby into public?
Quote Originally Posted by DaTroller View Post
Since we have a lobby tool,can't we play online after doing that bypass trick and then turning that private lobby into public?
Not quite. Even if you did turn it into public, no one would join since you're not connected to the actual servers. People wouldn't be able to find you. As for trying to join a friend, you will just get the error "Player is not currently in a server" or something along those lines. Your best bet would be to try and find the function that connects directly to a server and test that out.

Or if you're feeling extra adventurous, record the packets between the client and server(s) on a banned, and an unbanned account, and then compare the results. Maybe you'll find something useful for bypassing further.
Quote Originally Posted by MiKe34123 View Post
Or if you're feeling extra adventurous, record the packets between the client and server(s) on a banned, and an unbanned account, and then compare the results. Maybe you'll find something useful for bypassing further.
This is what I've been trying to achieve, although I'm not personally getting very far. I think our best bet would be to spoof data using a man-in-the-middle program/server.
Quote Originally Posted by Kid a View Post
This is what I've been trying to achieve, although I'm not personally getting very far. I think our best bet would be to spoof data using a man-in-the-middle program/server.
I'm not 100% sure, but I'd imagine the clients encrypt the data they send to each other in a match. If you can find the key/algorithm used to encrypt and decrypt the data, you can probably monitor it fairly easily.

As for the MITM approach, you can try using an unbanned account to search for matches, then relay the information back to your banned account and attempt a direct server connection to that match. Of course this still has the issue of the host potentially kicking you for being banned or you not being able to connect at all.

If you are referring to spoofing information sent by Valve servers, your best bet would probably be to ask around on some sites that partake in cracking the Steam API and functions for breaking some DRM (I won't name the site since I'm pretty sure I'm not allowed to, but you should be able to tell which one it is based on the English/Russian language mix).
I assume that when the user clicks on Play a request is sent to a server at Valve which checks the ID against a database of banned players and sends back a key defining whether the player is banned or not.

I don't have an unbanned account to test results against, but I'm sure someone on here has access to more than one account.
Quote Originally Posted by Kid a View Post
I assume that when the user clicks on Play a request is sent to a server at Valve which checks the ID against a database of banned players and sends back a key defining whether the player is banned or not.

I don't have an unbanned account to test results against, but I'm sure someone on here has access to more than one account.
When a cheater is detected, 0x627920 gets called with one of the args specifying that it's a cheater. The client then seems to determine the client ID of the player and executes this command: "tempBanClient *ID* PLATFORM_STEAM_KICK_CHEAT". There are also the commands PLATFORM_STEAM_AUTH_DENIED and PLATFORM_STEAM_CONNECT_FAIL. I'm not 100% sure if this is handled by the client or server (or both). By checking the locations that have auth related functions, you can probably find what series of steps the client takes to auth. From there, just record differences in data sent/received by the client to the server on diff accounts and see what's different.
How can I inject the code
Please explain it step by step


-Update: Now I know how to create the dll and inject it. But it's only compatible with 1.2.211...
#include <Windows.h>

typedef void*(__cdecl *Cmd_RemoveCommand_t)(const char *cmdName);
Cmd_RemoveCommand_t Cmd_RemoveCommand;

BOOL APIENTRY DllMain(HMODULE hModule, DWORD reason, LPVOID lpReserved){
switch (reason){
case DLL_PROCESS_ATTACH:{
DisableThreadLibraryCalls(hModule);
Cmd_RemoveCommand = (Cmd_RemoveCommand_t)0x564320;
Cmd_RemoveCommand("steamlobbycreatefail");
break;
}
}
return TRUE;
}


MiKe can you change the code that it is compatible wíth version 1.2.208
Quote Originally Posted by fefire4 View Post
Code:
#include <Windows.h>

typedef void*(__cdecl *Cmd_RemoveCommand_t)(const char *cmdName);
Cmd_RemoveCommand_t Cmd_RemoveCommand;

BOOL APIENTRY DllMain(HMODULE hModule, DWORD reason, LPVOID lpReserved){
	switch (reason){
		case DLL_PROCESS_ATTACH:{
			DisableThreadLibraryCalls(hModule);
			Cmd_RemoveCommand = (Cmd_RemoveCommand_t)0x564320;
			Cmd_RemoveCommand("steamlobbycreatefail");
			break;
		}
	}
	return TRUE;
}
MiKe can you change the code that it is compatible wíth version 1.2.208
Change 0x564320 to 0x48D5C0 for 1.2.208. Not tested but should work.

Personally, I would just patch the game with the other method I mentioned. It's easier and doesn't require you to call a game function to remove a command.
pretty mad that they would do this honestly because i get the same steam connect failed. and i hacked over 250 days ago lol what a joke
Everybody is mad
Posts 31–45 of 48 · Page 3 of 4
This thread is closed for replies.

Similar Threads

Talk with us