hi,
this is my first (own) release in this section here on UC, so bear with me. :)
since i was completely new to DayZ at all, i was playing around with the BE signatures and those sig scanners etc here at UC, gathering all the information i could find to get started and up to speed.
while playing with those signatures i had an idea and i almost didn't pursue it, because it seemed way too simple and stupid, but since i didn't find any information on that i just tried it anyways.
the result is a simple little tool i called "EyePatch", which is intended to 'block' the BE signature scanning by constantly setting the signature counter to zero.
obviously the signature counts and array don't get self-checked by BE like the rest of the executable code, because it's dynamic anyway i guess.
so to BE it simply looks like there are no signatures.
this is a proof of concept and it works completely external by just setting the counts to zero "extremely often". because of the concurrency there is always a very small chance, that BE runs it's signature scans EXACTLY in the millisecond before EyePatch resets the counter to zero.
but since the signatures are only transferred and updated every now and then the odds are extremely low.
i just tested it for half an hour or so while having CE attached to DayZ and i even started the detected "PerfectWeaponV2" i talked earlier about for quite some time and nothing happened. so i'm quite positive:

USE AT OWN RISK!
it also uses hardcoded pointers for the 1.206 BE version and blindly writes to them, so make sure the 1.206 version is running before starting EyePatch.
It has to be started after BEClient.dll has been loaded anyways!
Instructions:
Quote:
- Start DayZ and enter a server
- Wait for the BE version and GUID messages. Make sure it's the 1.206 version! (IMPORTANT)
- Start EyePatch and check the output. It should print the number of found signature scans ("FindWindow: 4" etc.)
- When you can see "setting sig counts to zero" and at least one dot, it's working
- It may print a dot everything it's detected that the signatures have been overwritten again.
|
Please also notice: It currently only blocks the signatures it prints the counts out for. Simply because i didn't need / work on them until now. Process3 is missing for example, so are those EBP scans.
But you can use FindWindow programs (Cheat Engine), Process and Module scans and so on. Scripts should also work but i didnt test that.
AGAIN: Use at own risk!
Download: EyePatch - BattlEye Signature Blocker(written in C# so the source is basically included. it also uses the small runtime obfuscation technique i mentioned in another thread)
0x90