Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Wyślij podpięty pakiet do klienta GUI?
#1
Dzień dobry.   Praca na hackach / botach pakietów dla jednej gry online.   Co zrobiłem: zrobiłem hak przed zaszyfrowaniem funkcji pakietowej, więc dostałem odszyfrowane pakiety w procesie docelowym (dll wtrysku).   Do czego dążę: trzeba wysłać te pakiety do klienta GUI, aby je wygodnie przeanalizować i być może dokonać wymiany w locie. Musisz to zrobić bez przerywania gry (tak szybko, jak to możliwe). Nie wiem, jak to zrobić (właściwy sposób), może utworzyć wątek dla każdego pakietu (tak, aby wysłać nie będzie za późno) i użyć czegoś takiego jak potoki nazwane?   Oto jak to podpiąłem (może to ma znaczenie).   Oryginalny kod w procesie docelowym (funkcja szyfrowania)     Kod:   mov r9, qword ptr [rcx] mov rdx, qword ptr [rbx + 1a8h] wywołanie qword ptr [r9 + 8h]   więc właśnie go zastąpiłem     Kod:   mov rax, Tramp call rax nop nop   Funkcja tramp:     Kod:   mov r9, qword ptr [rcx] mov rdx, qword ptr [rbx + 1a8h] mov [rsp + 32], r9 mov [rsp + 24], r8 mov [rsp + 16], rdx mov [rsp + 8], rcx sub rsp, 40 call TrampInside dodaj rsp, 40 mov r9, [rsp + 32] mov r8, [rsp + 24] mov rdx, [rsp + 16] mov rcx, [rsp + 8] sub rsp, 40 wywołaj qword ptr [ r9 + 8h] dodaj rsp, 40 ret   więc teraz mogę uzyskać długość pakietu (r8) i pakiet addr w pamięci (rdx) i wydrukować go przez AllocConsole / cout wewnątrz procesu docelowego.     Kod:   extern "C" void TrampInside (__int64 rcx, __int64 rdx, DWORD r8, __int64 r9);   nieźle jak na pierwszą próbę i cieszę się, że to działa ale teraz zamierzam wysłać go do GUI (jak już wcześniej powiedziałem)   Chyba główny problem polega na tym, że robię to w tym samym wątku, więc nie jest najlepszym pomysłem wykonywanie ciężkich operacji we / wy, takich jak write to pipe itp. (?) Więc powinienem utworzyć wątek dla każdego pakietu lub (?) A jaki jest najlepszy sposób wysyłania pakietów do GUI, nazwanych potokami (?)   Przepraszam za głupie pytania, chłopaki, jestem całkiem nowy w hakowaniu gier, tylko próbuję znaleźć właściwy sposób na zrobienie tego. Z góry dziękuję.
Reply




Users browsing this thread: 1 Guest(s)