Even better, well done! :)Quote:
@JuJu : je t'ai ajouté ;)
@Oriya9 : I finally put my ret 2 functions over the dumper one (search for 50 64 89 25 00 00 00 00 83 EC 2C 56 57 8D 45 F3). No more crash handling at all = nor more logs + dump creation = no more waste of time on the launcher on next start :p.
Hey ntKid, nice to see you're still here as well! :)Quote:
You guys getting expensive with offsets =P just Detour CreateFileA and CreateFileW API's and check if lpFileName matches one of the logs you want to avoid, if so return INVALID_FILE_HANDLE and its done.
BTW nice to see you are still alive Alain and Oriya9.
hmmm, the entire point of what I posted in the previous post is editing the executable directly.
hooking the function will not guarantee a working "bypass" because the hook itself can still potentially fail (for example, Windows Vista will need the PSAPI version to be set to 1 to hook it and it'll use an entirely different library for the hook).Quote:
but if the goal is to stop it from dumping stuff regardless, then we can hook the function that is being used to create a dump file and just kill the client when it's called.
but what if somehow the hook itself fails and generates an error? this is where the most secure way to solve this is to just edit the executable with RETN on the dump creation function.
and of course, messing with the stack and/or heap segments after they're loaded to the memory is just an unnecessary hassle when you can just edit the code segment and have a "permanent fix".
these are just a couple out of many reasons why you almost always want to edit the executable if you can (because for more complicated things you can't. the file size must be the same and the edits must be valid code instructions).
and a tiny side-note, the main idea was not only to disable the file creation but to bypass the entire dump creation function.
And.. at the top of everything, these are not offsets, these are actual code instructions (assembly).
PHP Code:
55 8B EC 81 EC 08 01 00 00 53 56 57 68 03 01 00 00
55 = PUSH EBP
8B EC = MOV EBP, ESP
81 EC 08 01 00 00 = SUB ESP, 108
53 = PUSH EBX
56 = PUSH ESI
57 = PUSH EDI
68 03 01 00 00 = PUSH 103
we are not looking for an offset that points us to a what we want to edit, we are looking for the actual code instruction to edit.
Hope that clarifies what I meant in the previous post better :)
Cheers!
Oriya.