[Video Tutorials]MS Detours und Nicht-Windows-Api Funktionen

07/30/2011 23:24 MrSm!th#1
Tjoa, wie versprochen folgt hier auch ein Tutorial für das Hooken von Funktionen, die kein Teil der Windows Api sind.
Es sind insgesamt 53 Minuten Filmmaterial, das liegt zum einen daran, dass ich recht ausführlich auf das theoretische Analysieren von Funktionen eingehe und zum anderen an ungefähr 30 Minuten Reverse Engineering an einem Testspiel.

Das ganze ist nun doch viel mehr ein Reverse Engineering Tutorial als ein Detours Tutorial geworden. Das hat einfach damit zutun, dass Detours ja nicht wirklich schwierig sind und der Schwerpunkt bei diesem Tutorial darauf liegen sollte, aus dem vorliegenden Assembler Code möglichst viele Informationen für einen funktionierenden Detour (und evtl. darauf aufbauenden Hack) zu bekommen und ich denke, das ist mir mit dem Testspiel auch recht gut gelungen.


Wer sich vorher nochmal mit MS Detours 1.5 vertraut machen will, hier ist der Link zu meinem Tutorial dafür:

[Only registered and activated users can see links. Click Here To Register...]

Dort findet ihr im Anhang auch die Detours Dateien, falls ihr die noch braucht.

An diesen Post werdet ihr eine kleine Konsolenapplikation angehängt finden.
Das ist eine Art Simulation eines Spiels, bei dem es nur darum geht, einen Gegner zu töten.
Das ganze ist natürlich absichtlich so simpel gehalten, da es ja nur Lernzwecken dient.

Wer gerne nochmal selbst die Funktion(en) analysieren will, kann das gerne tun, dafür hänge ich es ja an :p


Sollten beim Tutorial Fragen aufkommen, zögert nicht, sie mir zu stellen, meine Gedankengänge sind manchmal etwas wirr und ob die Zeichnungen und Screenshots da immer verständlich sind, kann ich auch nicht sagen. Ich persönlich finde schon, aber ok, ich habe sie auch gemacht :D

Auch Verbesserungsvorschläge und sachliche Kritik sind natürlich gerne gesehen, besonders Vorschläge für weitere Tutorials :)

[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...]


edit:

Bei Teil 2 habe ich ein visuelles Beispiel an Stelle 5:47 vergessen :D

Tut mir Leid, hier ist der ASM Code, von dem ich da spreche:
Code:
push ebp
mov ebp, esp
mov ecx, [ebp+8]
add ecx, 5
mov eax, ecx
mov esp, ebp
pop ebp
retn 4
07/30/2011 23:57 .SkyneT.#2
Ich ärger mich grad das mir noch etwas Wissen fehlt um das Tutorial durchzuarbeiten ;)

Nur eine kleine Kritik jetzt schon, der Ton ist etwas "leise" .
(Erst bei voller Laustärke konnte man die Stimme verstehen)

MfG SkyneT
07/31/2011 00:40 .ShiNy#3
finde ich echt cool :)
auch wenn ich davon nichts checke ;D
07/31/2011 02:05 suiluJ.#4
Schönes Tutorial.
Die Lautstärke ist ausreichend, ich konnte alles verstehen.
07/31/2011 02:17 kknb#5
find ich sehr gut gemacht.
07/31/2011 07:56 ΕxE#6
MrSm!th du bist der beste :)

Genau das habe ich vor kurzem gesucht.

Richtig gutes Tutorial!
07/31/2011 19:31 shuuky#7
Erstmal top tut. ton bischen leise aber sonst :D
Kleine Anmerkung, evtl. für später ein paar Tuts. die etwas mehr für Anfänger sind.

Habe gerade reingeschaut und gehört/gelesen,
C++ Kenntnisse, ok ist verständlich sollte man haben wenn man sich damit beschäftigen will und evtl. gibts hier auch im Forum den einen oder anderen der die Sprache mittelmäßig bis gut drauf hat.

Aber ASM, winapi, olly, detours?? Ich denke das ist für 99,99% zu hoch für die ganzen Leute hier und unbrauchbar somit das tut. Wenn man in anderen Treads ließt, "ich will c++ downloaden, woher bekomme ich das."
Ich denke in dieses Forum würden eher Anfänger tuts passen, da diese dann auch gut genutzt werden können.

Wie gesagt nix persönliches, nur eine Anmerkung.
07/31/2011 20:10 MrSm!th#8
Das ist auch nichts persönliches gegen mich, sondern eher gegen das Forum und die Leute hier.
Hier gibt es viele Leute, die ziemlich viel drauf haben. Zu behaupten, alle Leute seien hier nur Anfänger, ist schon ziemlich dreist.
Denkst du, Erfahrungen mit Olly sind besonders hoch oder etwas ganz besonderes? o.O Gibt viele Leute, die das hier drauf haben, sogar viele Metin2 Hacker, die ja recht oft als die Noobs unter den Hackern dargestellt werden (weil wegen einfache Memory Trainer und Klickbots blablub).

Quote:
evtl. gibts hier auch im Forum den einen oder anderen der die Sprache mittelmäßig bis gut drauf hat.
Sag mal, kennst du dieses Forum überhaupt? :rolleyes:
Nebenbei ist das hier die Gamehacking-Section. Da reichen pure Grundlagenkenntnisse der Sprache nicht aus.
Quote:
detours??
Hättest du meinen Post gelesen, wüsstest du, dass ich dazu schon ein Tutorial geposted habe.
Und nur weil du es eventuell nicht kannst/weißt, musst du nicht auf andere schließen.

Und übrigens bin ich nicht an Anfänger-Tutorials interessiert, ich schreibe die Tutorials, die machen möchte und das sind nunmal diese hier. Das können die Leute gut gebrauchen, die das Anfänger-Zeugs schon drauf haben (Ja, Olly-Erfahrungen gehören auch zu den Grundlagen vom Reverse Engineering) und mehr lernen wollen, zb. wie man an die Analyse so einer Funktion rangehen kann, die können sich dieses Tutorial ansehen (und meiner Erfahrung nach, gibt es davon recht viele hier!).
Alle anderen, also die Anfänger, können es eh bleiben lassen, denn wozu sehen die sich diesen Thread dann überhaupt an? o.O Und die, die schon weiter sind, können es sich dann aus Jux ansehen und evtl. bewerten, weil die es ja eh schon können.

Ganz nebenbei habe ich dieses Tutorial auf Anfrage gemacht, ich kenne mindestens 4 Leute, die es gerne von mir wollten.
07/31/2011 20:25 shuuky#9
Es geht darum, das hier mehr Anfänger unterwegs sind als Pros.
Du hast um Anregung und Kritik gebeten hier bekommst du sie :)

Quote:
Auch Verbesserungsvorschläge und sachliche Kritik sind natürlich gerne gesehen, besonders Vorschläge für weitere Tutorials
Quote:
Und übrigens bin ich nicht an Anfänger-Tutorials interessiert, ich schreibe die Tutorials, die machen möchte und das sind nunmal diese hier
Dann schreibe es doch auch rein :)
07/31/2011 20:29 yihaaa#10
Registriert seit: Apr 2006. Ein Teil seinen Postes stimmt schon. Es gibt sehr viele Anfänger und Leute die versuchen anzufangen... Es gibt verdammt viele von diesen dummen Threads "ich will ein Hack" machen! Jedoch sind auch auf der andern Seite Leute die es richtig drauf haben. Das Tutorial ist eine feine Sache und gut erklärt. Ich finde seine Kritik angemessen.

MfG
07/31/2011 21:29 MrSm!th#11
Quote:
Originally Posted by shuuky View Post
Es geht darum, das hier mehr Anfänger unterwegs sind als Pros.
Du hast um Anregung und Kritik gebeten hier bekommst du sie :)
Und deshalb müssen sich alle um die Anfänger kümmern und die Fortgeschrittenen dürfen nicht gefördert werden?
Es gibt genug davon, um auch Tutorials für sie zu machen und Grundlagen-Tutorials gibts nun wirklich genug.
Hierzu habe ich noch keins gesehen.

Quote:
Dann schreibe es doch auch rein :)
Warum sollte ich das schreiben? Kann ja nicht damit rechnen, dass es Leute gibt, die unbedingt noch mehr Anfänger-Tuts sehen wollen o.O
Und ein Tutorial über die Grundlagen für Detours habe ich schon geposted.

Dementsprechend wollte ich Vorschläge für weitere Tutorials, die ich machen könnte. Die können im Grunde auch die Grundlagen von einem Thema behandeln, wie mein letztes, aber es sollte schon etwas mit fortgeschrittenem Gamehacking zutun haben.
Ich möchte nicht das 10000. Tut für Cheat Engine machen.

Quote:
Registriert seit: Apr 2006. Ein Teil seinen Postes stimmt schon. Es gibt sehr viele Anfänger und Leute die versuchen anzufangen... Es gibt verdammt viele von diesen dummen Threads "ich will ein Hack" machen! Jedoch sind auch auf der andern Seite Leute die es richtig drauf haben. Das Tutorial ist eine feine Sache und gut erklärt. Ich finde seine Kritik angemessen.
Ich weiß jetzt nicht, was sein Registrationsdatum damit zutun haben soll o.ô
Kann ja sein, dass er mal Recht hatte, aber mittlerweile gibt es genug Leute hier, für die sich so ein Tutorial lohnt.
Wer meint, hier gibt es nur 2-3 Leute, die C++ auch nur halbwegs beherrschen, war wohl lange nicht aktiv. Würde dann auch die geringe Postanzahl für das Join Date erklären.
Spiel aber wie gesagt auch keine Rolle, habe mich dazu ja schon geäußert.

Es gibt genug Tutorials von der Art, da muss ich nicht auch noch eins machen, ich richte mich an Fortgeschrittene und davon gibt es, wie gesagt, auch recht viele mittlerweile. Die bemerkst du wohl nicht ganz so, weil sie eben nicht andauernd dumme Fragen posten.

Den letzten Satz find ich total unnötig o.ô Danke, dass seine Kritik angemessen ist, weiß ich selbst, du musst nicht nochmal die Kritik anderer für mich bewerten :D
Danke natürlich auch für dein Feedback, wenn es weitere Vorschläge gibt, immer her damit :x
08/01/2011 09:44 freehuntx#12
Quote:
Originally Posted by MrSm!th View Post
Und deshalb müssen sich alle um die Anfänger kümmern und die Fortgeschrittenen dürfen nicht gefördert werden?
Es gibt genug davon, um auch Tutorials für sie zu machen und Grundlagen-Tutorials gibts nun wirklich genug.
Hierzu habe ich noch keins gesehen.


Warum sollte ich das schreiben? Kann ja nicht damit rechnen, dass es Leute gibt, die unbedingt noch mehr Anfänger-Tuts sehen wollen o.O
Und ein Tutorial über die Grundlagen für Detours habe ich schon geposted.

Dementsprechend wollte ich Vorschläge für weitere Tutorials, die ich machen könnte. Die können im Grunde auch die Grundlagen von einem Thema behandeln, wie mein letztes, aber es sollte schon etwas mit fortgeschrittenem Gamehacking zutun haben.
Ich möchte nicht das 10000. Tut für Cheat Engine machen.


Ich weiß jetzt nicht, was sein Registrationsdatum damit zutun haben soll o.ô
Kann ja sein, dass er mal Recht hatte, aber mittlerweile gibt es genug Leute hier, für die sich so ein Tutorial lohnt.
Wer meint, hier gibt es nur 2-3 Leute, die C++ auch nur halbwegs beherrschen, war wohl lange nicht aktiv. Würde dann auch die geringe Postanzahl für das Join Date erklären.
Spiel aber wie gesagt auch keine Rolle, habe mich dazu ja schon geäußert.

Es gibt genug Tutorials von der Art, da muss ich nicht auch noch eins machen, ich richte mich an Fortgeschrittene und davon gibt es, wie gesagt, auch recht viele mittlerweile. Die bemerkst du wohl nicht ganz so, weil sie eben nicht andauernd dumme Fragen posten.

Den letzten Satz find ich total unnötig o.ô Danke, dass seine Kritik angemessen ist, weiß ich selbst, du musst nicht nochmal die Kritik anderer für mich bewerten :D
Danke natürlich auch für dein Feedback, wenn es weitere Vorschläge gibt, immer her damit :x

MrSm!th ich denke er möchte auf folgendes hinaus.

Du machst echt klasse tutorials, und du erklärst genau wie es funktioniert etc.
Ich denke diese Tatsache ist unumstreitbar.
Er möchte dir wahrscheinlich vermitteln, dass du den Anfängern mehr beibringen könntest, als andere tutorials, dar es

1. Schön ist dir zuzuhören (Kein Microfonrauschen, gute stimme)
2. Du wirklich auf die wichtigen sachen eingehst.

Klar sollte jeder Eigeninitiative ergreifen, und Googeln wenn er etwas braucht, aber durch deine tutorials würden dann wahrscheinlich mehr leute anfangen c++ zu lernen, anstatt mit autoit ihre Trainer zu Programmieren.

Keiner zwingt dich dazu Tutorials über CheatEngine zu machen, dass wäre auch schwachsinnig, weil es genug gute tutorials dazu gibt.

Aber ich fände es auch klasse wenn du dir überlegen würdest, vielleicht eine c++ Tutorial reihe zu starten.

Aber die entscheidung obliegt natürlich dir.

Ich finde du machst wirklich klasse tutorials.

Und selbst fortgeschrittene können nicht genug lernen. Selbst bei den basics kann der ein oder andere fortgeschrittene was mitnehmen.
08/01/2011 11:37 MrSm!th#13
ich denke, ich überlasse die Tutotials über C++ lieber den Leuten mit 10+ Jahren Programmiererfahrung.
Es gibt genug Anfänger und "Fortgeschrittene", die sich an Sprach-Tutorials wagen, wobei dann das Ergebnis oft recht schlecht ist.

Deine schmeichelnde Interpretation in allen Ehren, aber ich denke mal, er wollte nur darauf hinaus, dass es hier kaum jemanden gibt, der das versteht und dass ich mich deshalb lieber um die Anfänger kümmern solllte ;O
Und was meint jeder hier, er müsste mir die Kritik erläutern? O.o
08/01/2011 11:59 freehuntx#14
Quote:
Originally Posted by MrSm!th View Post
ich denke, ich überlasse die Tutotials über C++ lieber den Leuten mit 10+ Jahren Programmiererfahrung.
Es gibt genug Anfänger und "Fortgeschrittene", die sich an Sprach-Tutorials wagen, wobei dann das Ergebnis oft recht schlecht ist.

Deine schmeichelnde Interpretation in allen Ehren, aber ich denke mal, er wollte nur darauf hinaus, dass es hier kaum jemanden gibt, der das versteht und dass ich mich deshalb lieber um die Anfänger kümmern solllte ;O
Und was meint jeder hier, er müsste mir die Kritik erläutern? O.o
Ich würde auch eher empfehlen das ebook "c++ von a - z" zu lesen.

Btw zum thema Kritik: Du wolltest doch dass man seine kritik äußert ^^
08/01/2011 12:25 buFFy!#15
Quote:
Originally Posted by freehuntx View Post
Ich würde auch eher empfehlen das ebook "c++ von a - z" zu lesen.

Btw zum thema Kritik: Du wolltest doch dass man seine kritik äußert ^^
Trotzdem hat er das Recht der Kritik was entgegenzusetzen :rolleyes: