OldSchoolHack

Registrieren / Anmelden Deutsch

Kann lesen aber nicht schreiben?


icon Kann lesen aber nicht schreiben? #1

Anmeldungsdatum: Aug 2009

Beiträge: 54

Hallo meine lieben Leute..

ich beschäftige mich seit kurzen mit der Programmierung in C++ und habe die DVD von Galileo Computing einmal durchgearbeitet.
Nun versuche ich mich in das oft erwähnte Thema Gamehacking einzuarbeiten. Jedoch nicht wie die ganzen anderen Versager da draußen mit ihrem C+P shit.. Ich will das von Grund auf lernen. 

Nun versuche die ich Munition in Assault Cube zu manipulieren. Auslesen kann ich sie seltsamerweise. :/ Nur schreiben kann ich irgendwie nicht.
Da ich den Munitionswert lesen kann, nehme ich an, dass meine Adresse + Offsets stimmen. 


Hier mal mein Code:

TEXT Code:
  1. HWND hwnd = FindWindowA(0, "AssaultCube");
  2. DWORD proc_id;
  3. GetWindowThreadProcessId(hwnd, &proc_id);
  4. HANDLE phandle;
  5. phandle = OpenProcess(PROCESS_VM_READ | PROCESS_VM_WRITE,false,proc_id);
  6.  
  7.  
  8. long value = 0x539;
  9. long offset_1 = 0x378;
  10. long offset_2 = 0x14;
  11. long offset_3 = 0x0;
  12. long adresse = 0x004DF73C;
  13. long adresse2;
  14. long adresse3;
  15. long adresse4;
  16. long adresse5;
  17.  
  18.  
  19.  
  20.  
  21. ReadProcessMemory(phandle, (LPVOID)adresse, &adresse2, 4, 0);
  22. ReadProcessMemory(phandle, (LPVOID)(adresse2 + offset_1), &adresse3, 4, 0);
  23. ReadProcessMemory(phandle, (LPVOID)(adresse3 + offset_2), &adresse4, 4, 0);
  24. ReadProcessMemory(phandle, (LPVOID)(adresse4 + offset_3), &adresse5, 4, 0);
  25.  
  26. cout << adresse5 << endl;
  27.  
  28. WriteProcessMemory(phandle, (LPVOID)adresse5, (LPCVOID)&value, 4, NULL);



Ich weiss selbst das, dass nicht der sauberste Code ist. Jedoch lerne ich die Sprache erst seit einer Woche und ich versuche mich vorerst via "learning by doing" durchzuarbeiten und ein Gefühl für die Sprache zu bekommen.


Also Frage: Warum schreibt er nicht die Ammo auf 13337? http://high-minded.net/images/smilies/confused.png

Liebe Grüße!

Zuletzt geändert von ^n0xx (Di 2. Jul 2013, 19:59)

Grund: kein Grund angegeben

icon #2

Anmeldungsdatum: Mär 2011

Beiträge: 978

Benutzer-Bewertung:

89 positiv
6 negativ
msdn lesen:

http://msdn.microsoft.com/en-us/library/ms681674%28v=vs.85%29.aspx

Zitat von msdn
The handle must have PROCESS_VM_WRITE and PROCESS_VM_OPERATION access to the process.

im zweifel einfach mit
TEXT Code:
  1. PROCESS_ALL_ACCESS
arbeiten.

und gewöhn dir einheitlichen, lesbaren stil an
TEXT Code:
  1.  
  2. phandle = OpenProcess(PROCESS_VM_READ | PROCESS_VM_WRITE,false,proc_id);
leerzeichen nach kommas setzen plx

Generell returncodes auswerten und lernen mit dem debugger zu arbeiten, dann brauchst du auch nicht nachzufragen, wenn du i-wo hängst, sondern kannst es selber lösen.

__________________

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

Zitat von 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.
Zitat von f4gsh0t_h4x
VAC ist an,immer,überall
Zitat von gibson.w
Ich mag braune Würstchen
Zitat von irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Zitat von 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
Zitat von irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Zitat von 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)
Zitat von 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
Zuletzt geändert von SilverFire (Di 2. Jul 2013, 20:45)

Grund: kein Grund angegeben

icon #3

Anmeldungsdatum: Aug 2009

Beiträge: 54

hatte ich auch schon verwendet, jedoch hat das auch nichts gebracht.. :/

ist meine vorgehensweise bei dem multi level pointer so richtig?
icon #4

Anmeldungsdatum: Mär 2011

Beiträge: 978

Benutzer-Bewertung:

89 positiv
6 negativ
Zitat von ^n0xx
hatte ich auch schon verwendet, jedoch hat das auch nichts gebracht.. :/

ist meine vorgehensweise bei dem multi level pointer so richtig?

wenn die offsets so stimmen?

du hast doch gesagt, dass du auslesen kannst, dann sollte adresse5 doch stimmen?
oder gibt der dir bei
TEXT Code:
  1. cout << adresse5 << endl;
die munition selbst aus?
wenn ja, musst du in writeprocessmemory als adresse nicht address5 sondern (adresse4 + offset_3) benutzen.

__________________

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

Zitat von 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.
Zitat von f4gsh0t_h4x
VAC ist an,immer,überall
Zitat von gibson.w
Ich mag braune Würstchen
Zitat von irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Zitat von 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
Zitat von irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Zitat von 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)
Zitat von 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 #5

Anmeldungsdatum: Aug 2009

Beiträge: 54

Zitat von SilverFire
Zitat von ^n0xx
hatte ich auch schon verwendet, jedoch hat das auch nichts gebracht.. :/

ist meine vorgehensweise bei dem multi level pointer so richtig?

wenn die offsets so stimmen?

du hast doch gesagt, dass du auslesen kannst, dann sollte adresse5 doch stimmen?
oder gibt der dir bei
TEXT Code:
  1. cout << adresse5 << endl;
die munition selbst aus?
wenn ja, musst du in writeprocessmemory als adresse nicht address5 sondern (adresse4 + offset_3) benutzen.
hab mit dem Return wert von WPM eben gecheckt das es daran liegen muss..
TEXT Code:
  1. if(WriteProcessMemory(phandle, (LPVOID)(adresse4 + offset_3), (LPCVOID)&value, 4, NULL) != 0)
  2. {
  3. cout << "success" << endl;
  4. }
  5. else
  6. {
  7. cout << "fail" << endl;
  8. }
  9.  


Offsets stimmen und ich musste addresse4 + offset_3 benutzen.. also geht jetzt..  danke dir!! aber warum?
adresse 5 ist doch dasselbe wie: adresse4 + offset_3 oder nicht? :/
Zuletzt geändert von ^n0xx (Di 2. Jul 2013, 20:54)

Grund: kein Grund angegeben

icon #6

Anmeldungsdatum: Mär 2011

Beiträge: 978

Benutzer-Bewertung:

89 positiv
6 negativ
nein, adress5 ist der inhalt der datenstelle die an der adresse adress4+offset3 steht.

__________________

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

Zitat von 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.
Zitat von f4gsh0t_h4x
VAC ist an,immer,überall
Zitat von gibson.w
Ich mag braune Würstchen
Zitat von irc
<SilverDeath> KN4CK3R bistn nub
<~KN4CK3R> kk
Zitat von 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
Zitat von irc
<SilverDeath> Ich schwöre dir Dr_Pepper Ich bumms deine Mutter tot Mann!
<Dr_Pepper> danke.
<SilverDeath> bitte
Zitat von 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)
Zitat von 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 #7

Anmeldungsdatum: Aug 2009

Beiträge: 54

ahhhhhhhhhhhh  stimmt.. danke dir! <3