OldSchoolHack

Register / Login English

Unendlich Itmes - Mal wieder Altitude


icon #21

Join Date: Nov 2011

Posts: 65

Quote from SilverFire

das sollten mindestens 2 funktionen sein, eine die das item allokiert und in die localplayer class schreibt und eine die genau das gegenteil tut, das item nämlich löscht/entfernt.
Ah, genau. Folgendes passiert beim Aufnehmen bzw. Benutzen:
TEXT Code:
  1. 025BFC0A - 89 04 19 - mov [ecx+ebx],eax
  2. 028F0EAA - C7 81 64010000 00000000 - mov [ecx+00000164],00000000

Quote from SilverFire

wenn du diese 2. funktion findest und verhinderst, dass sie das tut was sie tun soll, nämlich das item zu entfernen, hast du ein nicht auslaufbares item geschaffen.
Dafür muss ich doch diese Teil
TEXT Code:
  1. 028F0EAA - C7 81 64010000 00000000 - mov [ecx+00000164],00000000
noppen? Wenn ich das mache stürzt das Spieler ab.

icon #22

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
du musst verhindern, dass die GESAMTE funktion aufgerufen wird.

dass da schiebt wahrscheinlich nach dem löschen des pointers nur noch ne 0 in die adresse rein - gelöscht wird er trotzdem, in der localplayerstruct wird der itempointer dann aber nicht mehr auf 0 gesetzt, das game wird nen test machen if (weaponptr != NULL) weaponptr->asdf(); mit dem ergebnis dass nen nicht mehr gültiger pointer aufgelöst wird -> Crash

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #23

Join Date: Nov 2011

Posts: 65

Also irgendwo findet ein Call statt und den muss ich noppen? Wie komm ich zu dieser Stelle?
icon #24

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
TEXT Code:
  1. 028F0EAA - C7 81 64010000 00000000 - mov [ecx+00000164],00000000

der code steht in i-ner funktion drin, gucken woher der aufruf der funktion kommt und den/die aufruf(e) killen.

wenn du nicht weißt wie man das macht empfehle ich dir lena151s reversing tutorials.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #25

Join Date: Nov 2011

Posts: 65

Das sollte ich eigenltich noch hinbekommen...werde mir nacher trotzdem mal das Tut angucken. Mit CE lässt sich der Aufruf ja nicht nachverfolgen, oder? Muss wahrscheinlich mit OllyDbg dran.

Nur ist ein nichtauslaufendendes Item nicht immer ideal, da es Zeiten gibt, in denen man entscheidende andere Items, wie z.B. Bälle, aufnehmen muss. Das geht nur wenn die "Tasche" leer ist. Deshalb würde ich die erste Idee bevorzugen. Also dass man die Funktion vom Aufnehmen aufruft. Das Prinzip bleibt doch das gleiche? Die Funktion suchen und dann über eine DLL-Injection die aufrufen.
icon #26

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
jop.

ist allerdings auch etwas mehr arbeit, kannst versuchen einmal aufgesammelte items selber in nem array zu verwalten, deren löschung zu verhindern und dann die gesicherten items wieder aus deinem array bei bedarf wieder herstellen.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #27

Join Date: Nov 2011

Posts: 65

Oh, okay, aber es würde doch reichen, wenn ich nur die Funktion aufrufe?
Das mit der Array versuche ich, wenn ich das Erste geschafft hab Aber die Idee ist gut!
icon #28

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
sicher.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #29

Join Date: Nov 2011

Posts: 65

Ich habe immer noch ein Problem diesen verdammten Aufruf zu finden Per CE makiere ich die gesamte Funktion (select current function). Dann gehe ich in OllyDbg, makiere die erste Zeile dieser Funktion und würde gerne alle Referenzen zu diesem Anfang der Funktion finden...also "Find references -> to selected command". Ist aber nicht im Menü?! Warum nicht?
icon #30

Join Date: Nov 2011

Posts: 65

Habe es geschafft!!!!!!!!!!!!!!
Viel vielen Dank für die gute Erklärung!
Musste nur EINEN Jump umlegen, sodass das Item nicht mehr gelöscht wird. Genial!

Jetzt habe ich noch eine Frage: Da der Code dynamisch generiert wird kann ich die Änderungen ja nicht einfach abspeichern. Also müsste ich das mit einem Programm machen. Aber wie und was müsste das Programm machen? Mit Delphi habe ich schon ein Programm für das ganze ander Zeug programmiert (Leben, Energie etc. einfrieren, Koordinaten ändern...).
icon #31

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
der code wird dynamisch generiert, bist du dir da sicher?
wenn ja, empfehle ich dir entweder nen pointer zu finden, der immer an eine feste stelle im code verweist (z.b. dem entrypoint), oder du machst dir nen searchpattern.
Den code kannst du dann ganz einfach korrigieren indem du in CE die entsprechenden hex opcodes abliest und dann per wpm an die entsprechende stelle schreibst. (0xE9 ?? ?? ?? ?? ist z.b. ein jump)
Achtung, Code ist meist schreibgeschützt, hol dir also mit virtualprotectex vorher die entsprechenden rechte.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #32

Join Date: Nov 2011

Posts: 65

Quote from SilverFire
der code wird dynamisch generiert, bist du dir da sicher?
Ist der Code dynamisch generiert, wenn CE ihn (unter anderem) nicht analysieren und/oder keine Referenzen suchen kann?

Quote from SilverFire
wenn ja, empfehle ich dir entweder nen pointer zu finden, der immer an eine feste stelle im code verweist (z.b. dem entrypoint), oder du machst dir nen searchpattern.
Mhm, was meinst mit "immer an eine feste Stelle"? Ich hab die Startadresse, von der alles aus geht. Auch die Offsets der Variable, in die der Pointer reingeschrieben wird. Kann man damit schon was anfangen?

Quote from SilverFire
Den code kannst du dann ganz einfach korrigieren indem du in CE die entsprechenden hex opcodes abliest und dann per wpm an die entsprechende stelle schreibst. (0xE9 ?? ?? ?? ?? ist z.b. ein jump)
Achtung, Code ist meist schreibgeschützt, hol dir also mit virtualprotectex vorher die entsprechenden rechte.
Ja, mit wpm geht das echt gut, habe damit auch das andere Zeug gemacht.
icon #33

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
Quote
Ist der Code dynamisch generiert, wenn CE ihn (unter anderem) nicht analysieren und/oder keine Referenzen suchen kann?

möglich.
was passiert denn wenn du die codestelle an der der jump ist in ce in die codeliste hinzufügst?
ist der beim nächsten spielstart noch korrekt?

Quote
Mhm, was meinst mit "immer an eine feste Stelle"? Ich hab die Startadresse, von der alles aus geht. Auch die Offsets der Variable, in die der Pointer reingeschrieben wird. Kann man damit schon was anfangen?

kann sein, guck mal ob die entfernung von der stelle zu dem jmp den du da korrigierst immer gleich ist.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #34

Join Date: Nov 2011

Posts: 65

Quote from SilverFire

möglich.
was passiert denn wenn du die codestelle an der der jump ist in ce in die codeliste hinzufügst?
ist der beim nächsten spielstart noch korrekt?
Ne, ist anders...

Quote from SilverFire
kann sein, guck mal ob die entfernung von der stelle zu dem jmp den du da korrigierst immer gleich ist.
Wenn das Obige nicht stimmt, dann kann dies auch nicht stimmen, oder?
icon #35

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
Quote from Littleben

Ne, ist anders...
tjoa, dann ists wohl @ runtime...

Quote
Wenn das Obige nicht stimmt, dann kann dies auch nicht stimmen, oder?

ka was du da für ne adresse hast, probiers

ansonsten mach dir nen searchpattern, wenn du net weißt wies geht dump mal aus CE/olly die ~10-20 umliegenden zeilen um den entsprechenden jump befehl, dann mach ich dir eine.

ne c++ externe searchpattern funktion findest du i-wo @ gamedeception, ansonsten musste ne dll injekten.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #36

Join Date: Nov 2011

Posts: 65

Quote from SilverFire

ansonsten mach dir nen searchpattern, wenn du net weißt wies geht dump mal aus CE/olly die ~10-20 umliegenden zeilen um den entsprechenden jump befehl, dann mach ich dir eine.
Wirklich?! Cool, vielen Dank. Ist echt nett von dir!!
Dump
TEXT Code:
  1. CPU Dump
  2. Address Hex dump ASCII
  3. 0292EBF0 75 F6 8B D3|8B 4C 24 30|89 0C 24 C7|44 24 04 03| u��ӋL$0�.$�D$
  4. 0292EC00 00 00 00 8B|C8 89 44 24|4C 90 90 E8|62 02 00 00| ...�ȉD$L���b..
  5. 0292EC10 8B 74 24 48|3B 06 8B 54|24 4C 8B CE|90 90 90 E8| �t$H;�T$L�ΐ���
  6. 0292EC20 5A 02 00 00|8B 4C 24 30|8B B1 64 01|00 00 83 FE| Z..�L$0��d..��
  7. 0292EC30 00 0F 84 ED|00 00 00 8B|B1 60 01 00|00 81 7E 08| .��...��`..�~
  8. 0292EC40 03 00 00 00|0F 86 91 01|00 00 8B 76|18 8B CE 90| ...��..�v�  9. 0292EC50 90 90 B8 48|BB 58 0D E8|8A DD CC FF|83 F8 00 0F| ���H�X.������.
  10. 0292EC60 85 BF 00 00|00 8B 4C 24|30 8B 91 64|01 00 00 83| ��...�L$0��d..�
  11. 0292EC70 FA 00 0F 84|6E 00 00 00|C7 04 24 00|00 00 00 8B| �.�n...�$....�
  12. 0292EC80 F1 8B CE 90| �ΐ
  13.  

Falls du noch das Disasm. brauchst
TEXT Code:
  1. CPU Disasm
  2. Address Hex dump Command
  3. 0292EBF0 ^\75 F6 JNE SHORT 0292EBE8
  4. 0292EBF2 8BD3 MOV EDX,EBX
  5. 0292EBF4 8B4C24 30 MOV ECX,DWORD PTR SS:[ESP+30]
  6. 0292EBF8 890C24 MOV DWORD PTR SS:[ESP],ECX
  7. 0292EBFB C74424 04 03000 MOV DWORD PTR SS:[ESP+4],3
  8. 0292EC03 8BC8 MOV ECX,EAX
  9. 0292EC05 894424 4C MOV DWORD PTR SS:[ESP+4C],EAX
  10. 0292EC09 90 NOP
  11. 0292EC0A 90 NOP
  12. 0292EC0B E8 62020000 CALL 0292EE72
  13. 0292EC10 8B7424 48 MOV ESI,DWORD PTR SS:[ESP+48]
  14. 0292EC14 3B06 CMP EAX,DWORD PTR DS:[ESI]
  15. 0292EC16 8B5424 4C MOV EDX,DWORD PTR SS:[ESP+4C]
  16. 0292EC1A 8BCE MOV ECX,ESI
  17. 0292EC1C 90 NOP
  18. 0292EC1D 90 NOP
  19. 0292EC1E 90 NOP
  20. 0292EC1F E8 5A020000 CALL 0292EE7E
  21. 0292EC24 8B4C24 30 MOV ECX,DWORD PTR SS:[ESP+30]
  22. 0292EC28 8BB1 64010000 MOV ESI,DWORD PTR DS:[ECX+164]
  23. 0292EC2E 83FE 00 CMP ESI,0
  24. 0292EC31 0F84 ED000000 JE 0292ED24
  25. 0292EC37 8BB1 60010000 MOV ESI,DWORD PTR DS:[ECX+160]
  26. 0292EC3D 817E 08 0300000 CMP DWORD PTR DS:[ESI+8],3
  27. 0292EC44 0F86 91010000 JBE 0292EDDB
  28. 0292EC4A 8B76 18 MOV ESI,DWORD PTR DS:[ESI+18]
  29. 0292EC4D 8BCE MOV ECX,ESI
  30. 0292EC4F 90 NOP
  31. 0292EC50 90 NOP
  32. 0292EC51 90 NOP
  33. 0292EC52 B8 48BB580D MOV EAX,0D58BB48
  34. 0292EC57 E8 8ADDCCFF CALL 025FC9E6
  35. 0292EC5C 83F8 00 CMP EAX,0
  36. 0292EC5F 0F85 BF000000 JNE 0292ED24
  37. 0292EC65 8B4C24 30 MOV ECX,DWORD PTR SS:[ESP+30]
  38. 0292EC69 8B91 64010000 MOV EDX,DWORD PTR DS:[ECX+164]
  39. 0292EC6F 83FA 00 CMP EDX,0
  40. 0292EC72 0F84 6E000000 JE 0292ECE6
  41. 0292EC78 C70424 00000000 MOV DWORD PTR SS:[ESP],0
  42. 0292EC7F 8BF1 MOV ESI,ECX
  43. 0292EC81 8BCE MOV ECX,ESI
  44. 0292EC83 90 NOP
  45.  
Es handelt sich um die vier Bytes ab der Adresse 0292EC31.


Quote from SilverFire
ne c++ externe searchpattern funktion findest du i-wo @ gamedeception, ansonsten musste ne dll injekten.
Auf gamedeception konnte ich keine fkt. finden, wenn nicht mach ich das halt mit der dll.

icon #37

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
hier ist der link zum externen scanner:
http://www.gamedeception.net/threads/19248-External-recvprop-scanner
(hab den noch nie benutzt, wirst du dir anschauen müssen)

Hier eine wahrscheinlich funktionierende sig (ungetestet... - könnte auch noch nach updates funktionieren...):
TEXT Code:
  1.  
  2. 8B CE 90 90 90 E8 ?? ?? ?? ?? 8B 4C 24 ?? 8B B1 ?? ?? ?? ?? 83 FE 00 0F 84 ?? ?? ?? ?? 8B B1
  3.  
  4. "\x8B\xCE\x90\x90\x90\xE8\x00\x00\x00\x00\x8B\x4C\x24\x00\x8B\xB1\x00\x00\x00\x00\x83\xFE\x00\x0F\x84\x00\x00\x00\x00\x8B\xB1"
  5. "xxxxxx????xxx?xx????xxxxx????xx"
  6.  
  7. StartAdresse = GetModuleHandle("dllname" / 0);
  8. Size = Findeste in olly oder nimmst einfach was großes wenn du dir sicher bist, dass es fündig wird.
  9. Adress = FindPattern((DWORD) StartAdresse, (DWORD) Size, (PBYTE) "\x8B\xCE\x90\x90\x90\xE8\x00\x00\x00\x00\x8B\x4C\x24\x00\x8B\xB1\x00\x00\x00\x00\x83\xFE\x00\x0F\x84\x00\x00\x00\x00\x8B\xB1", "xxxxxx????xxx?xx????xxxxx????xx");
  10. Adress += 21;
  11.  

und die (internen) findpattern funktionen:

TEXT Code:
  1.  
  2.  
  3. bool bDataCompare(const BYTE* pData, const BYTE* bMask, const char* szMask)
  4. {
  5. for(;*szMask;++szMask,++pData,++bMask)
  6. {
  7. if(*szMask=='x' && *pData!=*bMask )
  8. {
  9. return false;
  10. }
  11. }
  12. return (*szMask) == NULL;
  13. }
  14.  
  15. DWORD FindPattern(DWORD dwAddress,DWORD dwLen,BYTE *bMask,char * szMask)
  16. {
  17. for(DWORD i=0; i < dwLen; i++)
  18. {
  19. if( bDataCompare( (BYTE*)( dwAddress+i ),bMask,szMask) )
  20. {
  21. return (DWORD)(dwAddress+i);
  22. }
  23. }
  24. return 0;
  25. }
  26.  

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #38

Join Date: Nov 2011

Posts: 65

Wow, vieeelen Dank! Habe mir gerade nochmal andere Beiträge von dir hier im Forum angeguckt und verstehe nun das Prinzip von den Pattern.

Das fertig zusammengesetzte Programm würde so aussehen:
CPP Code:
  1. #include <iostream>
  2. #include <windows.h>
  3.  
  4. using namespace std;
  5.  
  6. bool bDataCompare(const BYTE* pData, const BYTE* bMask, const char* szMask)
  7. {
  8. for(;*szMask;++szMask,++pData,++bMask)
  9. {
  10. if(*szMask=='x' && *pData!=*bMask )
  11. {
  12. return false;
  13. }
  14. }
  15. return (*szMask) == NULL;
  16. }
  17.  
  18. DWORD FindPattern(DWORD dwAddress,DWORD dwLen,BYTE *bMask,char * szMask)
  19. {
  20. for(DWORD i=0; i < dwLen; i++)
  21. {
  22. if( bDataCompare( (BYTE*)( dwAddress+i ),bMask,szMask) )
  23. {
  24. return (DWORD)(dwAddress+i);
  25. }
  26. }
  27. return 0;
  28. }
  29.  
  30.  
  31. int main(int argc, char *argv[])
  32. {
  33. HMODULE StartAdresse;
  34. int Size;
  35. DWORD Adress;
  36.  
  37. StartAdresse = GetModuleHandle("altitude.exe");
  38. Size = 1212416;
  39. Adress = FindPattern((DWORD) StartAdresse, (DWORD) Size, (PBYTE) "\x8B\xCE\x90\x90\x90\xE8\x00\x00\x00\x00\x8B\x4C\x24\x00\x8B\xB1\x00\x00\x00\x00\x83\xFE\x00\x0F\x84\x00\x00\x00\x00\x8B\xB1", "xxxxxx????xxx?xx????xxxxx????xx");
  40. Adress += 21;
  41.  
  42. cout << Adress << endl;
  43.  
  44. system("PAUSE");
  45. return EXIT_SUCCESS;
  46. }

Jetzt habe ich noch die Frage, ob das so stimmt?
Als Adresse bekomme ich den wert 445617 raus. Und jetzt kommt wahrscheinlich die dümmste Frage...was fange ich mit der an? Das ist ja ein Offset von einer bestimmten Adresse, oder?
icon #39

Join Date: Mar 2011

Posts: 978

User-Rating:

89 positive
6 negative
nein, so geht das nicht

die funktion sucht in deinem EIGENEN speicher jetzt nach dem pattern, um die searchpattern funktion benutzen zu können musst du im zielprozess sein!

das da:

GetModuleHandle("altitude.exe");

wird schon failen.

musst den externen prop scanner benutzen den ich gepostet habe, oder injecten.

der returnwert sollte im bestenfalle die absolute adresse des gesuchten jumps sein.

__________________

http://www.abload.de/img/signfj5o.png
Spoiler
Vids:
Zitate:
Spoiler

Quote from xst
Vater KN4CK3R, der du hängst im irc, geheiligt werde dein Botnet, dein P7 v1.337 komme, die Bannwelle geschehe, wie in CS:S als auch in CS:GO, führe uns nicht in Versuchung, sondern erlöse uns von all dem c+p-Shit.
Quote from f4gsh0t_h4x
VAC ist an,immer,überall
Quote from gibson.w
Ich mag braune Würstchen
Quote from irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Quote from irc
<OrkSchamane> das prob is das viele dieser eig. recht guten bücher englisch sind ...
<OrkSchamane> da habe ich's ja doppelt schwer
<~KN4CK3R> falsch
<~KN4CK3R> das prob is dass du programmieren willst ohne englisch zu können
Quote from irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Quote from irc
<~KN4CK3R> dann liegts wenigstens an mir
<~KN4CK3R> nur noch rausfinden warum -.-
<SilverDeath> ja sicher
<SilverDeath> an wem sonst?
* You were kicked by KN4CK3R (kick)
Quote from Dr_Pepper
ihr seit beide dumm
Tutorials:
Releases:
Gifs:
Spoiler
http://www.abload.de/img/uberesp2sgul2.gif
https://i.imgur.com/Z5VQMrV.gif
http://www.abload.de/img/minesweeperzgaef.gif
icon #40

Join Date: Nov 2011

Posts: 65

Der Code ist an irgendein Spiel angepasst, oder? Müsste da erst alles umschreiben...vllt. wäre deshalb eine DLL Injection einfacher?