diff options
author | GeckoEidechse <40122905+GeckoEidechse@users.noreply.github.com> | 2022-03-28 23:48:05 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-28 23:48:05 +0200 |
commit | b8a7feabea6456f7fa5e8403c8d9bd2630401045 (patch) | |
tree | d6fa62ef39eb4fcfac1c1711f49ad86b2b6c59d3 /NorthstarDedicatedTest/serverauthentication.cpp | |
parent | 379cbc8bc251307777a14b901e5617e834398485 (diff) | |
download | NorthstarLauncher-b8a7feabea6456f7fa5e8403c8d9bd2630401045.tar.gz NorthstarLauncher-b8a7feabea6456f7fa5e8403c8d9bd2630401045.zip |
More exploit fixes by KIttenPopo (#126)
* Quick fix for a bug I caused
* Typo
* Update kitten-fixes branch to my repo (#122)
* Added string hash macro
* Added convenient vtfunc macro
* Made lil ConCommand creation macro
* Fixed multiple NET_SetConVar exploits
* Quick fixerino
* Fix convar struct (and other things)
* Revive clang-format (but good, i think)
* Update .clang-format
* Reformatted code to meet .clang-format requirements
* Minor formatting fixes
* Fixed Northstar "crashing" when console is closed
* Update .clang-format
* Quick fix for a bug I caused
* Typo
* NSMem Update
* ExplotFixes: Only block excessive convar counts if server
* Update ExploitFixes.cpp
* Update ExploitFixes.cpp
* Updated bytepatch format
* reformatted all code for clang-format
* Updated my clang-format to v13.0.0
* 3 fixes in 1
- ANTITAMPER fixed
- NSMem simplification update
- Fixed bad byte string in serverauthentication.cpp
* Improved ExploitFixes logging and NET_SetConVar patch
* clang-format unironically sabotaged my code
* Made ns_exploitfixes_log on by default
* Fixed IsMemoryReadable (oops)
Co-authored-by: KittenPopo <Pokeberry123@gmail.com>
Diffstat (limited to 'NorthstarDedicatedTest/serverauthentication.cpp')
-rw-r--r-- | NorthstarDedicatedTest/serverauthentication.cpp | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/NorthstarDedicatedTest/serverauthentication.cpp b/NorthstarDedicatedTest/serverauthentication.cpp index 4581e4b6..46fa6491 100644 --- a/NorthstarDedicatedTest/serverauthentication.cpp +++ b/NorthstarDedicatedTest/serverauthentication.cpp @@ -628,25 +628,26 @@ void InitialiseServerAuthentication(HMODULE baseAddress) // patch to disable kicking based on incorrect serverfilter in connectclient, since we repurpose it for use as an auth token { - NSMem::BytePatch(ba + 0x114655, { - 0xEB // jz => jmp - }); + NSMem::BytePatch( + ba + 0x114655, + "EB" // jz => jmp + ); } // patch to disable fairfight marking players as cheaters and kicking them { - NSMem::BytePatch(ba + 0x101012, { - 0xE9, // jz => jmp - 0x90, - 0x0 - }); + NSMem::BytePatch( + ba + 0x101012, + "E9 90 00" // jz => jmp + ); } // patch to allow same of multiple account { - NSMem::BytePatch(ba + 0x114510, { - 0xEB, // jz => jmp - }); + NSMem::BytePatch( + ba + 0x114510, + "EB" // jz => jmp + ); } // patch to set bWasWritingStringTableSuccessful in CNetworkStringTableContainer::WriteBaselines if it fails @@ -654,9 +655,11 @@ void InitialiseServerAuthentication(HMODULE baseAddress) uintptr_t writeAddress = (uintptr_t)(&bWasWritingStringTableSuccessful - (ba + 0x234EDC)); auto addr = ba + 0x234ED2; - NSMem::BytePatch(addr, { 0xC7, 0x05 }); + NSMem::BytePatch(addr, "C7 05"); NSMem::BytePatch(addr + 2, (BYTE*)&writeAddress, sizeof(writeAddress)); - NSMem::BytePatch(addr + 6, {0, 0, 0, 0}); + + NSMem::BytePatch(addr + 6, "00 00 00 00"); + NSMem::NOP(addr + 10, 5); } } |