Warrock - Code Snippets

06/12/2013 21:47 Apasp®#1051
ich habe es jetzt geändert aber es kommt immer noch

Quote:
1>------ Erstellen gestartet: Projekt: Hack by Apasp, Konfiguration: Debug Win32 ------
1>Kompilieren...
1>main.cpp
1>c:\Users\André\Documents\Visual Studio 2008\Projects\ Hack by Apasp\ Hack by Apasp\main.cpp : warning C4747: Aufruf von "_DllMain@12" (verwaltet): Verwalteter Code darf nicht unter der Loadersperre, einschließlich des DLL-Einstiegspunkts und Aufrufen, die vom DLL-Einstiegspunkt eingehen, ausgeführt werden.
1>Verknüpfen...
1>LINK : fatal error LNK1561: Einstiegspunkt muss definiert werden.
1>Das Buildprotokoll wurde unter "file://c:\Users\André\Documents\Visual Studio 2008\Projects\ Hack by Apasp\ Hack by Apasp\Debug\BuildLog.htm" gespeichert.
1> Hack by Apasp - 1 Fehler, 1 Warnung(en)
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
06/12/2013 21:57 Tibolus_#1052
Quote:
Originally Posted by xroute66x™ :) View Post
Zeig mal deinen ganzen Sourcecode.


Warum ist das so viel besser?
[Only registered and activated users can see links. Click Here To Register...]

ließ ;)

Kurz gesagt es ist sicherer
06/12/2013 22:00 Apasp®#1053
Wie kann ich den error beheben

Quote:
reinterpret_cast<char *>( ARD_card ) = 0;
Quote:
1>.\main.cpp(103) : error C2106: '=': Linker Operand muss ein L-Wert sein
ich habe da einfach char reingesetzt anstatt

Quote:
*reinterpret_cast<long *>
06/12/2013 22:10 Tibolus_#1054
*reinterpret_cast<char*>( ARD_card ) = 0;
06/12/2013 22:15 Apasp®#1055
Quote:
Tibolus_

*reinterpret_cast<char*>( ARD_card ) = 0;
thx jetzt kommt nur noch der error

Quote:
1>LINK : fatal error LNK1561: Einstiegspunkt muss definiert werden.
06/12/2013 22:38 xxfabbelxx#1056
Quote:
Originally Posted by app12315 View Post
thx jetzt kommt nur noch der error
Den kompletten sourcecode mal anschauen zu können wurde die Sache für uns um einiges leichter machen.
06/12/2013 22:43 Apasp®#1057
Danke für die hilfe aber ich habe den fehler gefunden habe ein leeres ClR-Projekt anstatt win 32 genommen
06/13/2013 14:37 Tibolus_#1058
Mit ReadProcessMemory kann ich gut werte auslesen in wr,
aber WriteProcessMemory scheitert, es passiert nichts.

ich mache es mit einem externen programm also keine dll injection, der hs blockt wohl die methode gibt es eine andere oder was müsste ich tun damit es klappt ?
06/14/2013 17:34 Raz9r#1059
Quote:
Originally Posted by Tibolus_ View Post
...
Schau dir mal mit KernelDetective o. Ä. die SSDT-Hooks von der ehsvc.dll an, wenn du wissen möchtest, warum das so ist.
06/14/2013 17:47 3dVision#1060
No Crash no delay? :(
06/14/2013 19:11 .BlackHat#1061
Quote:
Originally Posted by Tibolus_ View Post
Mit ReadProcessMemory kann ich gut werte auslesen in wr,
aber WriteProcessMemory scheitert, es passiert nichts.

ich mache es mit einem externen programm also keine dll injection, der hs blockt wohl die methode gibt es eine andere oder was müsste ich tun damit es klappt ?
Hat das nicht auch mit der Page Protection zu tun?
Kommt halt drauf an was du genau ändern willst.
06/14/2013 19:40 Tibolus_#1062
Quote:
Originally Posted by .BlackHat View Post
Hat das nicht auch mit der Page Protection zu tun?
Kommt halt drauf an was du genau ändern willst.
einfach nur einen pointer, z.b. den playerpointer oder die von slots
das geht aber nicht
06/14/2013 20:02 NikM#1063
WriteProcessMemory setzt die PageProtection auf 0x40, also PAGE_EXECUTE_READWRITE.

Code:
7665ECA7    8B35 C0116576   MOV ESI, DWORD PTR DS:[<&ntdll.NtProtectVirtu>; ntdll.ZwProtectVirtualMemory
7665ECAD    57              PUSH EDI
7665ECAE    8B7D 08         MOV EDI, DWORD PTR SS:[EBP+8]
7665ECB1    8945 F8         MOV DWORD PTR SS:[EBP-8], EAX
7665ECB4    8D45 14         LEA EAX, DWORD PTR SS:[EBP+14]
7665ECB7    50              PUSH EAX                                      ; Size
7665ECB8    6A 40           PUSH 40                                       ; PAGE_EXECUTE_READWRITE
7665ECBA    8D45 FC         LEA EAX, DWORD PTR SS:[EBP-4]
7665ECBD    50              PUSH EAX                                      ; PageSize
7665ECBE    8D45 F8         LEA EAX, DWORD PTR SS:[EBP-8]
7665ECC1    50              PUSH EAX                                      ; PageStartAddress
7665ECC2    57              PUSH EDI                                      ; hProcess
7665ECC3    895D FC         MOV DWORD PTR SS:[EBP-4], EBX
7665ECC6    FFD6            CALL ESI                                      ; NtProtectVirtualMemory
06/14/2013 21:14 Tibolus_#1064
Quote:
Originally Posted by NikM View Post
WriteProcessMemory setzt die PageProtection auf 0x40, also PAGE_EXECUTE_READWRITE.

Code:
7665ECA7    8B35 C0116576   MOV ESI, DWORD PTR DS:[<&ntdll.NtProtectVirtu>; ntdll.ZwProtectVirtualMemory
7665ECAD    57              PUSH EDI
7665ECAE    8B7D 08         MOV EDI, DWORD PTR SS:[EBP+8]
7665ECB1    8945 F8         MOV DWORD PTR SS:[EBP-8], EAX
7665ECB4    8D45 14         LEA EAX, DWORD PTR SS:[EBP+14]
7665ECB7    50              PUSH EAX                                      ; Size
7665ECB8    6A 40           PUSH 40                                       ; PAGE_EXECUTE_READWRITE
7665ECBA    8D45 FC         LEA EAX, DWORD PTR SS:[EBP-4]
7665ECBD    50              PUSH EAX                                      ; PageSize
7665ECBE    8D45 F8         LEA EAX, DWORD PTR SS:[EBP-8]
7665ECC1    50              PUSH EAX                                      ; PageStartAddress
7665ECC2    57              PUSH EDI                                      ; hProcess
7665ECC3    895D FC         MOV DWORD PTR SS:[EBP-4], EBX
7665ECC6    FFD6            CALL ESI                                      ; NtProtectVirtualMemory

also müsste ich theoretisch einen bypass benutzen, dann den check aushebeln und dann würde es gehen ?
oder auch einfacher vlt ohne bypass
06/15/2013 00:58 Raz9r#1065
Du müsstest die SSDT Hooks entfernen, also einen Treiber schreiben.