Hi Leute ,
ich spiel momentan noch immer mit
dll injecten rum und hab überlegt in dem Programm in das ich injected habe,
Programmcode zu verändern (vergleichbar mit dem was man in olly machen kann (NOP setzen usw..)
normalerweise könnte ich sowas ja extern machen über openProcess.. WriteProcessMemory
Da die
dll nun im Programm schon drinsteckt und ausgeführt wird,
dachte ich mir ich müsste doch auch so was verändern können z.B.: mit mov
dadurch könnte man zb extern nicht mitlesen (
API hook auf WriteProcessMemory)
hab mal als Beispiel ne Reihe aus TS genommen
Delphi-Quellcode:
005181EC C1E1 02 SHL ECX,2
005181EF 8BC6 MOV EAX,ESI
005181F1 E8 02ABEEFF CALL TeamSpea.00402CF8 << hier würd ich um den call zu verhindern zb NOPs setzen
005181F6 8B85 F0FBFFFF MOV EAX,DWORD PTR SS:[EBP-410]
so sieht das in olly aus
Delphi-Quellcode:
005181EC C1E1 02 SHL ECX,2
005181EF 8BC6 MOV EAX,ESI
005181F1 90 NOP
005181F2 90 NOP
005181F3 90 NOP
005181F4 90 NOP
005181F5 90 NOP
005181F6 8B85 F0FBFFFF MOV EAX,DWORD PTR SS:[EBP-410]
wenn ich jetzt sowas mache
Delphi-Quellcode:
begin
asm
mov [005181F1],$90
mov [005181F2],$90
mov [005181F3],$90
mov [005181F4],$90
mov [005181F5],$90
end;
end;
Gibts nur ne tolle fehlermeldung von Windows das es ne Speicherzugriffsverletzung gab.
Leider hat auch google keine hilfreichen ergebnisse dazu ausgespuckt.
gruß flash