• logo_cipsoft
    Nowe serwery zostały otwarte 19 Lut 2025:
    Noctalia (Open PvP) Ignitera (Open PvP) us_logo Xybra (Open PvP)

Klient Tibii - prawdy i mity

Norbert

Forum friend
Dołączył
Listopad 8, 2009
Posty
1125
Liczba reakcji
31
Wiek
35
Ostatnio czytaj?c forum zauwa?y?em tendencje do przesady w sprawie klienta Tibii i niesamowitych informacji jakie mo?e on pobiera? z waszych komputer?w.

Informacje, kt?re czyta klient

CipSoft poda? ostatnio informacje, ?e po patchu klient b?dzie pobiera? niekt?re informacje o systemie i sprz?cie.
Pomy?la?em, ?e warto to sprawdzi?.
Wyniki poszukiwa? b?d? podawa? w formie adres?w w pami?ci klienta. Adresy te to pocz?tki danych funkcji.

Kod:
Native System Info
0054A000

Memory Status
0054BD00

Processor Type
0054BFF0

System Logical Processor
0054ADE0

Get Processor MHz
0054AF40

Graphics Device
0054C430

Get the max graphic object count
0054B070

Translate the windows the windows type (XP, VISTA, 95...)
0054CAF0

Get the windows type
00454880

Location Information
0054C93F

Detect the graphics card corporation (NVidia..)
0054D5F0

Mo?ecie sami sprawdzi? co tam siedzi :) Ja zapewniam was, ?e nie ma tu nic poza tym co o?wiadczy?y Cipy.

W jaki spos?b klient pobiera/wysy?a informacje

No dobra, mamy ju? informacje ale wypada?o by dowiedzie? si? kiedy klient je pobiera.
Gdyby si? zastanowi? to raczej nie robi tego ci?gle podczas grania, takie cykliczne operacje mog?y by spowolni? gr? i zwi?kszy? zu?ycie procesora. Ja obstawia?bym, ze s? one pobierane podczas startu klienta.
Sprawd?my to !
Aby to zrobi? wystarczy za?o?y? breake pointa na kt?rymkolwiek z wy?ej wymienionych adres?w. Je?eli CipSoft pobiera te dane raz, to wszystkie.

Wybierzmy 0054A000, postawmy BP i uruchommy klient.

OBRAZEK
nbot.pl/images/1.JPG

No prosz?, proces zosta? zatrzymany co oznacza, ?e dana funkcja zosta?a wywo?ana. Przepu??my j? klikaj?c "Run".
Zalogujmy si? i troch? pograjmy.
Mo?emy sobie chodzi?, nic si? nie stanie. Je?eli wy??czymy gr?, funkcja r?wnie? nie zostanie wywo?ana.
Sprawd?my jeszcze co si? stanie podczas crasha.
No prosz? tu? przed crashem r?wnie? olly pokaza?, ?e funkcja zosta?a wywo?ana.
Podsumujmy, klient pobiera te informacje tylko w 2 przypadkach.

Podczas uruchomienia klienta
Podczas crasha

Sprawd?my wi?c po?o?enie g??wnej funkcji, kt?ra pobiera te wszystkie dane i formuje w jeden ci?g.

Oto jej adres:
Kod:
0054C8F0   > 6A FF          PUSH -1

Je?eli si? jej przyjrzymy znajdziemy wywo?ania wszystkich funkcji kt?re poda?em wy?ej:

Kod:
0054C8F0   > 6A FF          PUSH -1
0054C8F2   . 68 A8CB5A00    PUSH Tibia.005ACBA8                      ;  SE handler installation
0054C8F7   . 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
0054C8FD   . 50             PUSH EAX
0054C8FE   . 64:8925 000000>MOV DWORD PTR FS:[0],ESP
0054C905   . 83EC 1C        SUB ESP,1C
0054C908   . 53             PUSH EBX
0054C909   . 56             PUSH ESI
0054C90A   . 33DB           XOR EBX,EBX
0054C90C   . 57             PUSH EDI
0054C90D   . 8BF1           MOV ESI,ECX
0054C90F   . C74424 24 0F00>MOV DWORD PTR SS:[ESP+24],0F
0054C917   . 895C24 20      MOV DWORD PTR SS:[ESP+20],EBX
0054C91B   . 885C24 10      MOV BYTE PTR SS:[ESP+10],BL
0054C91F   . 895C24 30      MOV DWORD PTR SS:[ESP+30],EBX
0054C923   . 56             PUSH ESI                                 ; /Arg1
0054C924   . E8 D7D6FFFF    [B][COLOR="Red"]CALL Tibia.0054A000                      ; \Tibia.0054A000             Native System Info[/COLOR][/B]
0054C929   . 8D7E 04        LEA EDI,DWORD PTR DS:[ESI+4]
0054C92C   . 83C4 04        ADD ESP,4
0054C92F   . 3BFB           CMP EDI,EBX
0054C931   . 74 1D          JE SHORT Tibia.0054C950
0054C933   . 6A 04          PUSH 4                                   ; /BufSize = 4
0054C935   . 57             PUSH EDI                                 ; |Buffer
0054C936   . 6A 07          PUSH 7                                   ; |InfoType = 7
0054C938   . 68 00080000    PUSH 800                                 ; |LocaleId = 800
0054C93D   . 891F           MOV DWORD PTR DS:[EDI],EBX               ; |
[B][COLOR="Red"]0054C93F   . FF15 DCF25A00  CALL DWORD PTR DS:[<&KERNEL32.GetLocaleI>; \GetLocaleInfoA    Location Information[/COLOR][/B]
0054C945   . 85C0           TEST EAX,EAX
0054C947   . 75 04          JNZ SHORT Tibia.0054C94D
0054C949   . 891F           MOV DWORD PTR DS:[EDI],EBX
0054C94B   . EB 03          JMP SHORT Tibia.0054C950
0054C94D   > 885F 03        MOV BYTE PTR DS:[EDI+3],BL
0054C950   > 8D46 08        LEA EAX,DWORD PTR DS:[ESI+8]
0054C953   . 50             PUSH EAX
0054C954   . E8 57DBFFFF    CALL Tibia.0054A4B0
0054C959   . 8D4C24 10      LEA ECX,DWORD PTR SS:[ESP+10]
0054C95D   . 51             PUSH ECX
0054C95E   . 8D56 10        LEA EDX,DWORD PTR DS:[ESI+10]
0054C961   . 52             PUSH EDX
0054C962   . 8D46 0C        LEA EAX,DWORD PTR DS:[ESI+C]
0054C965   . 50             PUSH EAX
0054C966   . E8 95F3FFFF    [B][COLOR="Red"]CALL Tibia.0054BD00          | Memory Status[/COLOR][/B]
0054C96B   . 8D4C24 1C      LEA ECX,DWORD PTR SS:[ESP+1C]
0054C96F   . 51             PUSH ECX
0054C970   . 8D56 18        LEA EDX,DWORD PTR DS:[ESI+18]
0054C973   . 52             PUSH EDX
0054C974   . 8D46 14        LEA EAX,DWORD PTR DS:[ESI+14]
0054C977   . 50             PUSH EAX
0054C978   . E8 73F6FFFF    [B][COLOR="Red"]CALL Tibia.0054BFF0       |Processor Type[/COLOR][/B]
0054C97D   . 8D4E 30        LEA ECX,DWORD PTR DS:[ESI+30]
0054C980   . 51             PUSH ECX
0054C981   . 8D56 2C        LEA EDX,DWORD PTR DS:[ESI+2C]
0054C984   . 52             PUSH EDX
0054C985   . 8D46 28        LEA EAX,DWORD PTR DS:[ESI+28]
0054C988   . 50             PUSH EAX
0054C989   . 8D4E 24        LEA ECX,DWORD PTR DS:[ESI+24]
0054C98C   . 51             PUSH ECX
0054C98D   . E8 4EE4FFFF    [B][COLOR="Red"]CALL Tibia.0054ADE0     System Logical Processor[/COLOR][/B]
0054C992   . 8D56 38        LEA EDX,DWORD PTR DS:[ESI+38]
0054C995   . 52             PUSH EDX
0054C996   . 8D46 34        LEA EAX,DWORD PTR DS:[ESI+34]
0054C999   . 50             PUSH EAX
0054C99A   . E8 A1E5FFFF    [COLOR="Red"][B]CALL Tibia.0054AF40   Get Processor MHz[/B][/COLOR]
0054C99F   . 8D4E 58        LEA ECX,DWORD PTR DS:[ESI+58]
0054C9A2   . 51             PUSH ECX
0054C9A3   . 8D56 54        LEA EDX,DWORD PTR DS:[ESI+54]
0054C9A6   . 52             PUSH EDX
0054C9A7   . 8D46 50        LEA EAX,DWORD PTR DS:[ESI+50]
0054C9AA   . 50             PUSH EAX
0054C9AB   . 8D4E 40        LEA ECX,DWORD PTR DS:[ESI+40]
0054C9AE   . 51             PUSH ECX
0054C9AF   . 8D56 3C        LEA EDX,DWORD PTR DS:[ESI+3C]
0054C9B2   . 52             PUSH EDX
0054C9B3   . E8 78FAFFFF    [B][COLOR="Red"]CALL Tibia.0054C430   Graphics Device [/COLOR][/B]
0054C9B8   . 83C4 48        ADD ESP,48
0054C9BB   . 83C6 4C        ADD ESI,4C
0054C9BE   . 56             PUSH ESI                                 ; /Arg1
0054C9BF   . E8 ACE6FFFF    [B][COLOR="Red"]CALL Tibia.0054B070                      ; \Tibia.0054B070  Get the max graphic object count[/COLOR][/B]
0054C9C4   . 83C4 04        ADD ESP,4
0054C9C7   . C74424 30 FFFF>MOV DWORD PTR SS:[ESP+30],-1
0054C9CF   . 837C24 24 10   CMP DWORD PTR SS:[ESP+24],10
0054C9D4   . 72 0D          JB SHORT Tibia.0054C9E3
0054C9D6   . 8B4424 10      MOV EAX,DWORD PTR SS:[ESP+10]
0054C9DA   . 50             PUSH EAX
0054C9DB   . E8 1CCE0100    CALL Tibia.005697FC
0054C9E0   . 83C4 04        ADD ESP,4
0054C9E3   > 8B4C24 28      MOV ECX,DWORD PTR SS:[ESP+28]
0054C9E7   . 5F             POP EDI
0054C9E8   . 5E             POP ESI
0054C9E9   . 895C24 18      MOV DWORD PTR SS:[ESP+18],EBX
0054C9ED   . 885C24 08      MOV BYTE PTR SS:[ESP+8],BL
0054C9F1   . C74424 1C 0F00>MOV DWORD PTR SS:[ESP+1C],0F
0054C9F9   . 5B             POP EBX
0054C9FA   . 64:890D 000000>MOV DWORD PTR FS:[0],ECX
0054CA01   . 83C4 28        ADD ESP,28
0054CA04   . C3             RETN

To s? funkcje kt?re znale?li?my i kt?rych adresy znamy


To adresy kt?rych bezpo?rednio w tej funkcji nie uda?o si? znale??:

0054CAF0 : Translate the windows type (XP, VISTA, 95...)
00454880 : Get the windows type
0054D5F0 : Detect the graphics card corporation (NVidia..)


Mamy te? wywo?ania funkcji kt?rych nie opisa?em wy?ej np:


CALL Tibia.0054A4B0
CALL Tibia.005697FC


Przejd?my wi?c do nich

054a4b0:
Kod:
0054A4B0  /$ 83EC 40        SUB ESP,40
0054A4B3  |. 56             PUSH ESI
0054A4B4  |. 8B7424 48      MOV ESI,DWORD PTR SS:[ESP+48]
0054A4B8  |. 68 24B15C00    PUSH Tibia.005CB124                      ; /ProcNameOrOrdinal = "GlobalMemoryStatusEx"
0054A4BD  |. 68 00B15C00    PUSH Tibia.005CB100                      ; |/pModule = "kernel32.dll"
0054A4C2  |. C706 00000000  MOV DWORD PTR DS:[ESI],0                 ; ||
0054A4C8  |. FF15 A4F25A00  CALL DWORD PTR DS:[<&KERNEL32.GetModuleH>; |\GetModuleHandleA
0054A4CE  |. 50             PUSH EAX                                 ; |hModule
0054A4CF  |. FF15 20F25A00  CALL DWORD PTR DS:[<&KERNEL32.GetProcAdd>; \GetProcAddress
.....
0054A548  |. 83C4 40        ADD ESP,40
0054A54B  \. C3             RETN
Jak widzicie nic strasznego, ta funkcja pobiera wcze?niej parametry potrzebne do wywo?ania funkcji:

Kod:
0054C965   . 50             PUSH EAX
0054C966   . E8 95F3FFFF    CALL Tibia.0054BD00          | Memory Status

Co wida? po przesuni?ciu na stos warto?ci z rejestru EAX (czyli w?a?nie tego co wysz?o z "nieznanej funkcji").

Kolejn? nieznan? funkcje mo?na rozgry?? szukaj?c w kliencie takiej komendy:

Kod:
CALL 0054CAF0

Dojdziemy do czego? takiego:

Kod:
0054C625  |. 56             |PUSH ESI
0054C626  |. 8D8D 60FFFFFF  |LEA ECX,DWORD PTR SS:[EBP-A0]
0054C62C  |. 51             |PUSH ECX
0054C62D  |. E8 BE0F0000    |CALL Tibia.0054D5F0

Scrollujemy do samej g?ry i sprawdzamy sk?d ta funkcja zosta?a wywo?ana.

Co si? okaza?o? Wywo?ana zosta?a w naszej g??wnej funkcji formuj?cej informacje o systemie:

Kod:
0054C9B3   . E8 78FAFFFF    CALL Tibia.0054C430

I tym za jednym razem stwierdzili?my, ?e funkcja "Detect the graphics card corporation (NVidia..)" jest wywo?ywana dopiero przez inn? funkcj?, kt?r? na pocz?tku okre?lili?my jako nieznan?.
No dobra, ale co z systemem?
Przecie? on te? musi by? pobierany a nigdzie go tutaj nie ma.

Za???my breake pointa na

Kod:
00454880  - Get the windows type

Co si? okazuje przy uruchomieniu klienta ta funkcja nie jest wywo?ywana!
W sumie to nawet logiczne. Programi?ci nie s? w stanie przetestowa? programu na ka?dym systemie operacyjnym. Wychodz? z za?o?enia, ?e je?eli dzia?a to dobrze a je?eli crashuje to trzeba co? z tym zrobi?. Dlatego ta informacja pobierana jest dopiero podczas crasha.

Je?eli cofniemy si? od naszej g?ownej funkcji formuj?cej informacje o systemie dojdziemy do takiego miejsca:

Kod:
005AE18F     CC             INT3
[B][COLOR="Red"]005AE190   . B9 50B17800    MOV ECX,Tibia.0078B150[/COLOR][/B]
005AE195   . E8 D654F5FF    CALL Tibia.00503670
005AE19A   . 68 F0E45A00    PUSH Tibia.005AE4F0
005AE19F   . E8 429DFAFF    CALL Tibia.00557EE6
005AE1A4   . 59             POP ECX
005AE1A5   . C3             RETN
005AE1A6     CC             INT3

Ta cz??? kodu wywo?ywana jest w miejscu gdzie tworzone jest proces czyli na samym pocz?tku programu.
Tak wi?c doszli?my do pocz?tku ^^

Dobra, wiemy ju?, ?e Tibia pobiera te informacje ale wypada?o by sprawdzi? czy je wysy?a.

Oto adres funkcji kt?ra tworzy login packet:

Kod:
00457655  |. E8 86DEFBFF    CALL Tibia.004154E0                      ; \Tibia.004154E0

Moim zdaniem nie ma tam informacji o systemie. Je?eli kto? uwa?a inaczej to niech skoryguje to co napisa?em.

Nawet gdyby by?y to niekompletne bo nie ma nic o systemie (jak wiemy ta funkcja wywo?ywana jest dopiero podczas crasha).

Sk?d wiem, ?e klient nie wysy?a tych informacji w czasie gry?
St?d, ?e m?j program zak?ad hooka na funkcj? recv i send.
Gdyby przeszed? chocia? jeden pakiet z nieznanym nag??wkiem na 100% bym go odnotowa?.
Nic takiego jednak si? nie sta?o.

Podsumowuj?c, klient nie wysy?a informacji o waszym systemie za ka?dym razem gdy w??czycie bota. Robi to dopiero podczas crasha.


Gdyby si? zastanowi? to nawet ma sens, bo po co informacje o systemie kiedy wszystko dzia?a jak nale?y? Te info zbiera si? dopiero podczas crasha programu bo mo?na po nich doj?? co jest ewentualn? przyczyn? b??du.

Mity o kliencie

Wielokrotnie czyta?em wypowiedzi fachowc?w z tego forum. Niejednokrotnie twierdzili oni, ?e klient wysy?a informacje o tym czy zmieniony jest tittle (ten napis "Tibia" w kliencie), czy korzystamy z bota, albo jeszcze jakie? inne bzdety.

Kiedy niby mia?by to robi??
Wiemy, ?e nie robi tego podczas logowania ani podczas gry. Jedyna mo?liwo?? przes?ania takich informacji to crash raport. Ale jak kto? sam raportuje takie rzeczy to jego sprawa.

Tak wi?c:

1. Klient na pewno pobiera informacje o systemie.
2. Klient na pewno wysy?a je do CipSoftu, ale nie robi tego za ka?dym uruchomieniem.
3. Klient nie sprawdza innych informacji o waszym systemie, nawet je?eli by to robi?, nie ma prawa ich gdziekolwiek przes?a?. To wasza prywatna sprawa co macie uruchomione i sprawdzanie czego? takiego to ?amanie prawa!


Czego jeszcze nie rozwi?zano

Pomimo wielu stara? nikomu nie uda?o si? rozwi?za? zagadki cudownego "autobana".
Do tej pory nikt nie wie co jest a co nie jest wykrywalne.
Programi?ci obstawiaj? takie rzeczy jak:

"Zbyt cz?ste wysy?anie pakiet?w"
"Zbyt dok?adne leczenie i powtarzanie niekt?rych czynno?ci"
"Zbyt szybkie zbieranie przedmiot?w"

Ale r?wnie dobrze taki system mo?e nie istnie? a CipSoft opiera si? na danych kt?re zgromadzi? do tej pory.


Tak wi?c w kilku s?owach

CipSoft raczej na 100% podczas ban?w nie wspiera si? informacjami o systemie ani niczym innym co mog?o by pochodzi? od klienta!


Mam nadziej?, ?e rozwia?em troch? w?tpliwo?ci i pokaza?em, ?e do wszystkiego da si? doj??.
Jestem jednak cz?owiekiem i mog?em gdzie? si? pomyli?. Je?eli ktokolwiek ma jakiekolwiek zastrze?enia niech da zna? w tym temacie.
 
Odp: Klient Tibii - prawdy i mity

@up
Chyba nie zczai?e? za du?o...

@topic
Mam nadziej?, ?e ten temat utnie wszelkie spekulacje odno?nie "szpiegowania komputer?w" przez Cip?w. Niez?y temacik, spora wiedza. Z mojej strony reputek i nadzieja, ?e ju? wi?cej nie us?ysz? o w?amywaniu na kompy przez cipsoft.

Pozdrawiam.
 
Odp: Klient Tibii - prawdy i mity

#up
Raz nawet widzia?em temat z pytaniem, czy CS mo?e przez klienta ogl?da? zdj?cia z naszego komputera :)
#Topic
Bardzo ?adnie opisane, ale chyba nigdy tego nie ogarn? :)
Wcze?niej wierzy?em im na s?owo, teraz mam niezbity dow?d.
A... Dodaj jeszcze, ?e nie mo?na przez tibia.dat pass?w ?ci?ga?, bo nie ma sensu pisa? o tym odr?bnego tematu.
 
Ostatnia edycja:
Odp: Klient Tibii - prawdy i mity

o stary dobra robota :p
tak si? zastanawiam... mo?e ten ich systemdo wykrywania bot?w mo?e jest aktywny tylko kilka razy w miesi?cu:| pamietam tak? sytuacj? jak expi?em z botem w dniu massbana i w tym samym czasie kolega skilowa?... zrobi? reloga i zobaczy? komunikat ?e ma bana a ja nie dosta?em. Przypuszczam ?e ten relog i start klienta(uruchomi? bota przed zalogowaniem si? do gry) mia? zwi?zek z banem gdy? ten kolega nie u?ywa bota do niczego innego poza skilowaniem i nie skilowa? wcze?niej tym charem;)
 
Odp: Klient Tibii - prawdy i mity

#up
A... Dodaj jeszcze, ?e nie mo?na przez tibia.dat pass?w ?ci?ga?, bo nie ma sensu pisa? o tym odr?bnego tematu.

Tibia.dat to og?lnie plik zawieraj?cy informacje o itemach (czy da si? po nim przej??, czy to jest drabina, czy co? tam). Nie ma jako takiej fizycznej mo?liwo?ci ?eby przy jego pomocy co? ukra?? poniewa? Tibia u?ywa go do wczytania tych danych o przedmiotach do pami?ci, p??niej nie jest wykorzystywany.
Gdyby nawet ju? by?o z nim co? nie tak klient najprawdopodobniej by si? nie odpali? wywalaj?c crasha z stosownym komunikatem.

o stary dobra robota :p
tak si? zastanawiam... mo?e ten ich systemdo wykrywania bot?w mo?e jest aktywny tylko kilka razy w miesi?cu:| pamietam tak? sytuacj? jak expi?em z botem w dniu massbana i w tym samym czasie kolega skilowa?... zrobi? reloga i zobaczy? komunikat ?e ma bana a ja nie dosta?em. Przypuszczam ?e ten relog i start klienta(uruchomi? bota przed zalogowaniem si? do gry) mia? zwi?zek z banem gdy? ten kolega nie u?ywa bota do niczego innego poza skilowaniem i nie skilowa? wcze?niej tym charem;)

Szczerze w?tpi? w to, ?e idzie o zbyt wczesne uruchomienie bota.
Nbot przyk?adowo sam odpala Tibie ale najpierw samego siebie a nikt do tej pory bana nie dosta? za korzystnie z niego.
 
Odp: Klient Tibii - prawdy i mity

Zapomnia?em go przenie?? wcze?niej, ale zrobi? to teraz. Poradnik czyta?em ju? na innym forum, ale tez by? autorstwa Norberta wi?c to nie plagiat! Ten kto si? zna bardziej co? z tego zrozumie. Ja jednak by?em przekonany, ?e CipSoft nie grzebie po naszych rejestrach, bo po co si? nara?a??

Pozdrawiam,
Chajtek.
 
Odp: Klient Tibii - prawdy i mity

Lol wkurzajace ze cipy mieszaja sie w sprawe graczy jakie maja kompy ;/
BO?E CZ?OWIEKU!! On m?wi? w?a?nie, ?e cipsoft nie pobiera informacji o naszym komputerze(configu kompa itp.) Czytaj, ze zrozumieniem!!

@topic
Fajny poradnik;d Dobra robota, mo?e to nie kt?rym poka?e, ?e si? myl?:up:
 
Do góry