Arhk (04-10-2010),Melodia (05-13-2010),ngh555 (06-27-2010),Retoxified (04-09-2010),Void (04-07-2010)
IAT Hooking
Well I've been getting my ass kicked by hacksheild for way too long:
- It detects my cheat engines
- Hooks my D3D
- Steals my lunch money
But it's time to fight back, and I think I might have found a technique to do it. It's called IAT (Import Address Table) Hooking. In PE (Portable Executable) files aka. .exe there is a table of imported functions that the executable borrows from .dlls. With IAT Hooking it is possible to detour or hook these functions before they ever get called.
I went for this approach because of the lack of documentation for the Lithtech Engine. Unlike in HD's AssualtCube hooks where there is a lot of source code and little trinkets like text strings to look for. So Im going to be reading up on this. Thought someone else maybe interested to so I shared.
"Every gun that is made, every warship launched, every rocket fired signifies, in the final sense, a theft from those who hunger and are not fed, those who are cold and are not clothed. This world in arms is not spending money alone. It is spending the sweat of its laborers, the genius of its scientists, the hopes of its children. The cost of one modern heavy bomber is this: a modern brick school in more than 30 cities. It is two electric power plants, each serving a town of 60,000 population. It is two fine, fully equipped hospitals. It is some fifty miles of concrete pavement. We pay for a single fighter plane with a half million bushels of wheat. We pay for a single destroyer with new homes that could have housed more than 8,000 people. This is, I repeat, the best way of life to be found on the road the world has been taking. This is not a way of life at all, in any true sense. Under the cloud of threatening war, it is humanity hanging from a cross of iron."- Dwight D. Eisenhower
Arhk (04-10-2010),Melodia (05-13-2010),ngh555 (06-27-2010),Retoxified (04-09-2010),Void (04-07-2010)
I'm in, althought I have my own way of hooking functions without getting detected ^^
Hmmm.... My API book is helping, it forced me to learn alot about this kind of stuff....
~
Last edited by Arhk; 04-10-2010 at 04:36 PM.
"If the world hates you, keep in mind that it hated me first." John 15:18
I think u want to do something like this It dont take much to bypass HS at all they fail so much
What this does is u get the function like
sub_blahblah In IDA
you detour that function returning 0(False) or 1(True)
Sometimes it takes a little more depends on what ur trying to do
But this is how u do a simple bypass This is my private way and it does the job
Code:HSCeScan = (HS_CeScan) HsBypass.Create(( BYTE* )(hEhsvc + NotTellingYou), ( BYTE* )cHSCeScan, DETOUR_TYPE_JMP); typedef int (__cdecl *HS_CeScan)(int a1, int a2, int a3); HS_CeScan HSCeScan; int __cdecl cHSCeScan(int a1, int a2, int a3) { return 1; } HSCheckA= (HS_CheckA) HsBypass.Create(( BYTE* )(hEhsvc + NotTellingYou), ( BYTE* )cHSCheckA, DETOUR_TYPE_JMP); typedef int (__cdecl *HS_CheckA)(int a1, int a2); HS_CheckA HSCheckA; int __cdecl cHSCheckA(int a1, int a2) { return 1; } HSCheckB= (HS_CheckB ) HsBypass.Create(( BYTE* )(hEhsvc + NotTellingYou), ( BYTE* )cHSCheckB, DETOUR_TYPE_JMP); typedef int (__cdecl *HS_CheckB)(int a1, int a2,int a3, int a4, int a5); HS_CheckB HSCheckB; int __cdecl cHSCheckB(int a1, int a2,int a3, int a4, int a5) { return 1; } HSSelfCheck = (HS_SelfCheck) HsBypass.Create(( BYTE* )(hEhsvc + NotTellingYou), ( BYTE* )cHSSelfCheck, DETOUR_TYPE_JMP); typedef int (__cdecl *HS_SelfCheck)(int a1, int a2); HS_SelfCheck HSSelfCheck; int __cdecl cHSSelfCheck(int a1, int a2) { return 0; }
IAT hooking is old, but won't help you unless you know what you're doing or have a ton of time to waste trying to figure out what you're hooking and what correlation it has to the overall operation of things.
THE EYE OF AN ADMINISTRATOR IS UPON YOU. ANY WRONG YOU DO IM GONNA SEE, WHEN YOU'RE ON MPGH, LOOK BEHIND YOU, 'CAUSE THATS WHERE IM GONNA BE
"First they ignore you. Then they laugh at you. Then they fight you. Then you lose.” - Dave84311
HAVING VIRTUAL DETOX
"Every gun that is made, every warship launched, every rocket fired signifies, in the final sense, a theft from those who hunger and are not fed, those who are cold and are not clothed. This world in arms is not spending money alone. It is spending the sweat of its laborers, the genius of its scientists, the hopes of its children. The cost of one modern heavy bomber is this: a modern brick school in more than 30 cities. It is two electric power plants, each serving a town of 60,000 population. It is two fine, fully equipped hospitals. It is some fifty miles of concrete pavement. We pay for a single fighter plane with a half million bushels of wheat. We pay for a single destroyer with new homes that could have housed more than 8,000 people. This is, I repeat, the best way of life to be found on the road the world has been taking. This is not a way of life at all, in any true sense. Under the cloud of threatening war, it is humanity hanging from a cross of iron."- Dwight D. Eisenhower
LordPE google that to dump ehsvc.dll/engine.exe/cshell.dll/anything else u want to
and that don't completely stop hacksheild but it lets you do whatever you wish
Zoom (04-14-2010)
"Every gun that is made, every warship launched, every rocket fired signifies, in the final sense, a theft from those who hunger and are not fed, those who are cold and are not clothed. This world in arms is not spending money alone. It is spending the sweat of its laborers, the genius of its scientists, the hopes of its children. The cost of one modern heavy bomber is this: a modern brick school in more than 30 cities. It is two electric power plants, each serving a town of 60,000 population. It is two fine, fully equipped hospitals. It is some fifty miles of concrete pavement. We pay for a single fighter plane with a half million bushels of wheat. We pay for a single destroyer with new homes that could have housed more than 8,000 people. This is, I repeat, the best way of life to be found on the road the world has been taking. This is not a way of life at all, in any true sense. Under the cloud of threatening war, it is humanity hanging from a cross of iron."- Dwight D. Eisenhower