Hacking in C# möglich?

01/27/2012 21:35 V8II#1
Hi,

Ist Gamehacking in C# ganz gut oder eher crap?
Ist es zwingend für bessere Ergebnisse auf C++ umzusteigen?
Wenn ja, wo finde ich ein gutes Tutorial (C++ lernen & Hacking stuff)?

Mfg V8II
01/27/2012 21:42 Fortmann96#2
Klar ist das möglich.
Ob es besser oder schlechter ist, kommt auf den Programmierer an.
C# ist halt nur nicht plattformunabhängig im Vergleich zu C++.

Wenn du ein Tut zum Gamehacken suchst, [Only registered and activated users can see links. Click Here To Register...].

Liebe Grüße & viel Erfolg
01/27/2012 21:52 V8II#3
Okay, danke.
Nur leider gibt es bei C# keine Funktionen wie ReadProcessMemory ...

Es gäbe hier nur die MemoryStream Klasse , durch die ich nicht ganz durchblicke ...
Gibt es auch speziell für C# irgendwelche Tutorials oder muss ich mir das selber anlernen?

Ist Hooking in C# eigentlich möglich?
01/27/2012 22:11 xNopex#4
Quote:
Nur leider gibt es bei C# keine Funktionen wie ReadProcessMemory ...
Du kannst die ganzen Funktionen, wie Read/WriteProcessMemory nutzen wenn du willst. Aber es geht einfacher und schneller in C oder C++.
01/27/2012 22:54 vwap#5
Quote:
Originally Posted by V8II View Post
Okay, danke.
Nur leider gibt es bei C# keine Funktionen wie ReadProcessMemory ...

Es gäbe hier nur die MemoryStream Klasse , durch die ich nicht ganz durchblicke ...
Gibt es auch speziell für C# irgendwelche Tutorials oder muss ich mir das selber anlernen?

Ist Hooking in C# eigentlich möglich?
Klar gibts die, unzwar genau die.
Einfach die Win-API verwenden..

Und was hat ein MemoryStream mit Gamehacking zu tun?
01/27/2012 23:27 MoepMeep#6
Quote:
Originally Posted by Fortmann96 View Post
Klar ist das möglich.
Ob es besser oder schlechter ist, kommt auf den Programmierer an.
C# ist halt nur nicht plattformunabhängig im Vergleich zu C++.

Wenn du ein Tut zum Gamehacken suchst, [Only registered and activated users can see links. Click Here To Register...].

Liebe Grüße & viel Erfolg
Einfach ruhig sein wenn man keine Ahnung hat, danke.
01/27/2012 23:29 Nightblizard#7
Es ist durchaus möglich und spontan fällt mir nichts ein, was du in C++ hinsichtlich der Manipulation des Arbeitsspeichers machen kannst, aber in C# nicht!
Natürlich ist das dann jedoch mit etwas mehr Aufwand verbunden.

Folgende Links solltest du dir genauer anschauen:
[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]

[Only registered and activated users can see links. Click Here To Register...]
[Only registered and activated users can see links. Click Here To Register...]
Und die ganzen anderen "Stadardfunktionen" wie z.B. VirtualAllocEx, VirtualFreeEx, LoadLibrary, FreeLibrary, etc..
01/27/2012 23:32 vwap#8
Quote:
Originally Posted by Nightblizard View Post
Es ist durchaus möglich und spontan fällt mir nichts ein, was du in C++ hinsichtlich der Manipulation des Arbeitsspeichers machen kannst, aber in C# nicht!
Hooks, Detours, Hardware Breakpoints.
01/27/2012 23:34 MoepMeep#9
Quote:
Originally Posted by Headpuster View Post
Hooks, Detours, Hardware Breakpoints.
Hooks/Detours gehen genau so in C#. Zu Hardware breakpoints enthalte ich mich mal, nie versucht/gesehen bisher :p
01/27/2012 23:35 Nightblizard#10
Quote:
Originally Posted by Headpuster View Post
Hooks, Detours, Hardware Breakpoints.
Managed flat assembler (fasmdll).

Edit:
Bin mir jedoch gerade nicht sicher inwieweit fasmdll die Debugregister unterstützt -> hab die Lib so noch nie nutzen müssen.
01/28/2012 02:27 vwap#11
Es gab mal ein Lib, mit dem konnte man direkt in .Net ASM Code ausführen.
Ich glaub das hieß ASM.Net
01/28/2012 02:30 MrSm!th#12
HWBPs gehen selbstverständlich auch in C#, da man sie über die WinApi setzen muss, die C# auch zur Verfügung steht.

Detours gehen jedenfalls nicht mit C# Boardmitteln, denn du kannst keinen Managed Code so einfach in unmanaged Code ausführen lassen, ergo kannst du die Funktionen nicht zu deinen springen lassen.
Da musst du dann mit einer nativen Sprache nachhelfen oder ASM (bzw. die übersetzten OpCodes) Byte für Byte in den Prozess schreiben, was für größere Hooks, zb. D3D Menüs, viel zu aufwändig ist.
01/29/2012 14:35 V8II#13
Also auf Deutsch: Das schreiben eines Hooks ist in C# nicht möglich?

Hättet ihr da ein C++ Tutorial, das ihr mir empfehlen könnt?
01/29/2012 18:51 MoepMeep#14
Quote:
Originally Posted by V8II View Post
Also auf Deutsch: Das schreiben eines Hooks ist in C# nicht möglich?

Hättet ihr da ein C++ Tutorial, das ihr mir empfehlen könnt?
Doch, ist es. Nur verdammt umständlich bzw unter zu hilfe nahmer einer nativen Sprache.
Nimm keine Tutorials. Kauf/Leih dir ein Buch.
01/29/2012 20:15 V8II#15
Danke für deine Antwort, eine Frage hätte ich noch:
dev-C++ oder visual Studio ? Wo liegt der Unterschied?