-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Labels
help wantedExtra attention is neededExtra attention is needed
Description
After the update of 17/10/2023, the cheat cannot inject with the following error message:
hl-cheat: Injected.
hl-cheat: globals_init: Can't find hClientDLL
hl-cheat: load: Error loading globals, aborting
This is of course caused by:
Lines 43 to 53 in c6f9e38
| hw = dlopen("hw.so", RTLD_LAZY | RTLD_NOLOAD); | |
| if (!hw) { | |
| ERR("Can't open hw.so"); | |
| return false; | |
| } | |
| h_client = (void**)dlsym(hw, "hClientDLL"); | |
| if (!h_client) { | |
| ERR("Can't find hClientDLL"); | |
| return false; | |
| } |
If we look at the output of readelf (Thanks to @UnkwUsr) and we compare the old vs. new hw.so files, we see:
$ readelf -a hw.so.new | grep hClientDLL
1434: 007fe6a8 4 OBJECT LOCAL DEFAULT 24 hClientDLL
$ readelf -a hw.so.prev | grep hClientDLL
001aec9d 00004801 R_386_32 0081b4a0 hClientDLL
001aed2f 00004801 R_386_32 0081b4a0 hClientDLL
...
001b07b5 00004801 R_386_32 0081b4a0 hClientDLL
0020cf1e 00004801 R_386_32 0081b4a0 hClientDLL
72: 0081b4a0 4 OBJECT GLOBAL DEFAULT 22 hClientDLL
1392: 0081b4a0 4 OBJECT GLOBAL DEFAULT 22 hClientDLLI am not sure if the problem is caused by this GLOBAL to LOCAL change, but the disassembly of ClientDLL_Init was pretty similar in both .so files:
Note
IDA couldn't successfully disassembly the new or the old functions, so I used rizin instead, which worked perfectly.
Since Counter-Strike 1.6 is broken as well, and I imagine it will get fixed in a couple of days, I am going to wait until everything is stable before spending more time into this.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
help wantedExtra attention is neededExtra attention is needed
