| | Kako piskaralo jedne MMO17. Travanj 2008 |
S obzirom na nedavne posjekotina na blogu, a također s obzirom na nedavne vijesti o decompiled Eve Online klijent, to činilo kao dobro vrijeme za ići preko neke od načina u kojima se hacked virtualnom svijetu.
Zanimljive stvari, naravno, da je sve hacks ja odlazim za razgovor o zapravo nije suhi kašalj u virtualnom svijetu uopće, oni umjesto napada klijenta, koji je vaš prozor u svijet, a ujedno i Waldo, vaša sredstva vršenje nadzora nad što se događa u tom svijetu. A to je zato što ...
Korisnik je u rukama neprijatelja.
Vi ste vjerojatno čuli da je prije - bio sam ne prvi reći, ali ona stalno dobiva misattributed za mene. To posebno phrasing svibanj imati nastao s Kelton Flinn, ali siguran sam mnogi od nas došli s njim samostalno.
Prva stvar je da shvate da je šifriranje podataka na potok se ne događa da se bilo tko zaustavite ozbiljne.
Evo u obliku dijagrama način gledati na to.
- Vi generirati podatke.
- Vi stavite je u paketu.
- Vi šifriranje paketu.
- Vi poslati ga preko žice.
- Ona se na korisnikovom računalu.
- Korisnik navodi se u kriptirani paket.
- U klijent dekriptira paketu.
- Korisnik nema nešto.
Zaista, ništa nakon "to se na korisnikovo računalo" je u rukama neprijatelja. Tako da znači da se šifriranje u pakete, predaje korisniku decrypter pozvao klijenta, i koji misle da šifriranje pomaže.
U hackeri mogu odabrati da je pročitati dolazne pakete od klijenta memoriju nakon dešifriranja, umjesto njuškanje potoka direktno. Ali, zaista, sve to čini se povećati bar malo na isjeckan vještine potrebne.
Za početak se, šifriranje može biti spor, ako si ti govoriš u stvarnom vremenu kakve situacije. Svibanj Vi ne želite provesti vrijeme u kriptiranje ako trebate brz odgovor.
Paketni stream njuškanje: dobivanje više informacija nego što bi trebao
To je jedan od problema početkom u EverQuest i još uvijek je problem u mnogim FPSes. Ukratko, da ne bi trebali oslanjati na klijentu informacije filtriranja. Pretpostavljaju da ništa što dolazi niz žica je vidljiv na njih. Mi govorimo o "culling" podataka koje je poslao dolje, u osnovi smanjenja skup. Čak i na klijentu, radimo culling, tako da ne privući sve u podataka o klijentu zna. U FPS, vi obično ne može učiniti mnogo na strani poslužitelja culling - sve na karti je "vidljiva" na klijentu, jer svi su pomične tako brzo da ne možete zaista učiniti bilo koju liniju očima culling na poslužitelju.
U EQ, na taj način manifestira je svaki mob u tom području bila je poslana klijentu. To je značilo jedan komercijalan mogao napraviti minimap pokazali da svaki mob. Možete vidjeti repops na udaljenost. Ali čekajte, on dobiva gore. Možete vidjeti sve što im je nosio. Tako možete odabrati trešnja-dobar plijen unaprijed.
Filtriranje paketa: padaju stvari da ne bi trebali
Ponekad poslužitelju govori stvari koje jednostavno ne želite čuti. Jedna takva stvar može biti "Ne, ne možete otići tamo." To je klasični zid posjekotina. Obično ćete premjestiti, a ne lokalni klijent-strana sudara provjeriti. Također ispratiti zahtjev za poslužitelj za svoj pokret, tako da poslužitelj može provjeriti da li možete otići tamo (nakon svega, možete imati - strahote - hacked svog klijenta da ne provjerava kolizije). Poslužitelj će vam poslati nazad je "ne, ti si još uvijek ovdje" poruka, što je rezultiralo se rubberbanded natrag na kojoj ste bili.
Osim ako vas jednostavno ignorirati tu poruku, i veselo drže ide. To će Vam omogućiti da istražite sve od statičkih podataka da je Vaš klijent je učitan. Nećete vidjeti bilo koje novo streamed objekte u pravo mjesto, naravno, jer što se tiče poslužitelj je u pitanju, niste premjestili.
Jednostavno padaju paketi mogu biti prilično moćna, ako inženjeri su neuredan i oslonio na klijentu da ispravi sebe nakon što je rekao to je bio neposlušan. Zajednički način možete koristiti za ovu veću prednost oslanja na činjenicu da mi se često čini da je klijent se o polu-autonomnog pokreta. Možete kretati na klijent s mnogo više zrnatost i sa mnogo promjena u smjeru ubrzan nego možete na poslužitelju. Umjesto praćenje Vašeg svaki potez, mi umjesto subsample je, u osnovi. Mi jednostavno osloniti na podatke kao što su "ne možete premjestiti dotle da brzo" kako bi provjerili da li ili ne vi ste u stvari, varanje u vaš pokret.
Ali ako collided sa nešto, rekli su da odskočiti, a zatim premještena na radno mjesto na drugoj strani zida, sljedeći pokret može pasti unutar prihvatljivih parametara, a onda su se preselili svibanj kroz zid.
Paketni mijenjanjem: mijenja ono što čujete
Alternativno vam moze promijeniti paket prije nego što se tumačiti. To u osnovi omogućava da dobijete klijenta plesati na svoj podešavanje. Možda želite lijep veliki orijentir na vrhu svoje traganje cilj. Možda želite promijeniti ono što zona klijenta smatra se učitava u kako bi Vas turneju negdje ti inače ne mogu doći do.
Zastupanje mijenjanjem: mijenja ono što vidimo
Messing uz tok podataka nije samo stvar u Vašoj moći. Mnogo ljudi u FPSes učini stvari za promjenu vidljivost na razini onoga što je oko njih. Zamijeni sve zidove s transparentnim textures, i imat ćete puno bolju ideju gdje je sve. Zamijenite malih mreža s velikim one, camo ili boje svijetle ružičastim textures s djecom, i sve se lakše na licu mjesta.
Aktiviranje
Naravno, zašto ti dati posao? Dovoljno je imati klijent automatski poslati nazad odgovore odmah kad ga dobije određenu paketa ili poruka. Ovaj oblik automatska aktivira se, naravno, ključni element u izgradnji botova. U FPS, autoaim je primjer. Točnost nešto događa s okidač je daleko daleko veći nego što ga je kad je samo ljudskih kotaèiæa na.
Spam
A mnogo puta, na serverima se ne otvrdne ispravno protiv primanja više naredbi u određenom span vremena nego što očekujete. Najam klijenta obraditi cooldown vremena bi biti primjer grešku kao što je ovaj, ako mogu kontrolirati uzvodno, možete zaobići cooldowns.
![]()
U nadzornik i drugih trikovi
Naravno, tu je protumjere. U protumejra koristi Mećava (i parni, za taj tvar) je pokrenuti zasebni proces koji prati da li je glavni app se messed s. To je uobičajena praksa u Koreji te, i tu je FPS poslužiteljima koji zahtijevaju od vas da pokrenete Punkbuster, itd. Od WOW TOS:
# Kada je pokrenut, program svibanj monitor računala memorija s izravnim pristupom (RAM) i / ili CPU procesa za neovlaštene treće strane programe izvode istovremeno s World of Warcraft. Kao "treće strane neovlaštenih programa" kako se koristi može se definirati kao bilo koji software treće strane, uključujući bez ograničenja bilo koju "ADDON" ili "mod", koji u svojoj vlastitoj odlučnosti mećava: (i) omogućava ili olakšava varanje bilo kojeg tipa; (ii) omogućuje korisnicima da mijenjaju ili Hack the World of Warcraft sučelje, okoliš i / ili iskustvo na bilo koji način nije izričito ovlaštena od mećava, ili (iii) INTERCEPTS, "mina", ili na drugi način prikuplja podatke od ili kroz program. U slučaju da program otkrije neovlaštenim treća strana program, mećava svibanj (a) slati informacije natrag na mećava, UKLJUČUJUĆI BEZ OGRANIČENJA VAŠE IME račun, detalje o neovlaštenih trećih osoba program otkrivena je i vrijeme i datum neovlašteno treća strana program Bila otkrivena, i / ili (b) vježbe bilo koje ili sve od njegovih prava prema Odjeljku 6. ovog sporazuma, sa ili bez prethodne obavijesti korisniku.
Kako to učiniti? Pa, zapravo, uz pomoć mnogih iste tehnike kao što je gore opisano. U osnovi, ona vrsta hacks vas. Ona provjerava da li je pokrenut u stvari WOW memoriju prostora. Ona provjerava naslovne trake bilo kojeg ste otvorili prozor i uspoređuje tekst koji prozor naslov (hashed) na crnu listu za varanje programi titlebars (također hashed). A to zapravo provjerava neke kod svakog programa imate pokrenut i provjerava da li da je kod svojih na crnu listu previše.
Nepotrebno reći, i stražar je također u ruke neprijatelja, iako ne bih imati slightest trag o tome kako to učiniti, možete ili posjekotina teoretski nadzornik u sebi, ili Hack the Apps da je upravnik zatvora provjere, tako da da su lažne ili prikazati različite podatke. U tom trenutku, to je utrku naoružanja.
Tu je već programe gledati na nadzornik gledajući vas, na primjer. I Mećava je odgovor bio da gomila različitih verzija čuvar, pa ga je teže pronaći i gledati, i da - iznenađenje, šifriranje u stvari je poslao natrag. Naravno, možete se vratiti na trgu jedan paket zadah, i filtrirati izvještaje je čuvar ... la di da. Ili napraviti varalica app polymorphic sama. Ili ...
To je sve vrlo Orwellian - igrača, ali izgleda da vrijednost igre okoliša s manje vara više nego što je vrijednost njihove privatnosti, iako je priznati, friknuto iz preko cca nepročitanih titlebars prozor i onda zapravo ne govorim nikome o tome, osim ako utvrdi utakmicu svibanj Čini se malo paranoidan. A opet, što ako netko hacked popularno WOW fansite ili vodič stranica i zapinjati jedna zabranjeno niz u naslov ekrana? Mogu se dogoditi ...
![]()
Na kraju, jednostavno ne mogu povjerenje klijenta. Sve čuvar štiti protiv temeljno treba biti čuvano protiv na poslužitelju. U Web svijetu, vi samo morate pregledniku pretpostavljamo da je mogao biti bilo briga što na sve - nakon svega, ja mogu pisati jednostavnim web preglednik u oko pet minuta. A u budućnosti, mi svibanj imati dobro za dizajn naše igre s ovom kakve sposobnosti u vidu.
Uzmi primjer je mala biljka za žetvu. U hacks opisana će učiniti stvari poput auto-otkriti da je trava oko, auto-ih, preuzmite ga iz jedne gužve području. U "igru" leži u tome što je teško naći ili vidjeti. U sigurnosnom svijetu, to se zove "sigurnosti kroz mrak", i to obično pretpostavlja da je gubitak vremena. (To također potiče pitanje zašto smo izgradnju igara iz biljnih željeli nešto finding.) Na siguran način je za klijenta da ni ne znaju. Jesu li pravi bilja i lažni bilje koristiti isti klijent-strana zastupljenost u svakom pogledu. Samo poslužitelju zna razlika.
Ne uglavnom to učinili, jer, dobro, mi želimo imati statički podataka i dinamičke podatke koje stream. Želimo biti u mogućnosti precache najviše na svijetu, i samo potok niz stvari koje mogu promijeniti, kao što su bilje možete podići. To je jeftinije u propusne, tako mnogo, ona nudi bolje performanse, dobivate mnogo puta brže učitavanje.
Drugim riječima, mi stvaramo ove ranjivosti za sebe, jer, dobro, želimo povjerenje klijenta.
Na kraju, najviše komercijalan bez virtualnom svijetu je vjerojatno da će biti jedno s klijentima u potpunosti open source, potpuno javnim i otvorenim protokolima, a ne pokušaja da se varati od strane klijenta učiniti s bilo kojim teškim utezima. U stvari, WOW sama je vrlo velika strides prema ovom sa svojim otvoreni UI sustav, koji omogućuje službeno kažnjeni dodatke koji čini prilično puno stvari koje su nekada radili hacks. Razlog to će vjerojatno biti sigurniji je jednostavno jer kad je terminal je glupi, vi ste prisiljeni da stavim smarts na server - i poslužitelj je puno lakše učiniti sigurnijim.
Izazovi, međutim, nisu male, ako želite stvarno ići cijeli svinja i učiniti sve što je upravljan od strane poslužitelja. Sve bi trebao biti streamed. Sve slati na poslužitelj bi trebao biti potvrđen. A igra dizajneri bi pretpostaviti da oni nisu mogli osloniti na sve na ništa u vizualan dojam igrivosti kao mehaničar, niti na bilo što se odnose na brzinu kognitivnog procesa (npr., vrijeme provedeno "figuring nešto iz" ne bi bio dobar mehaničar, jer mnoge stvari bi mogle biti offloaded za klijenta, osigurava trenutne reakcije puta). To bi sve napraviti za daleko više asinkroni svijetu.
Ali da bi ograničenje dizajn i projektiranje prema Pritisni cleverer igrivost, igrivost, a ne da se može u potpunosti poništiti po stvari znao gdje je, branje važne stvari iz govno, a odlazim clicky-clicky na nešto dovoljno brzo.
A pipe-san? Vjerojatno. Mi ljubi nas naš bilja-lov, naš veliki grafika, lagless naš klijent-strana kretanja, a mi izgledaju prilično spremni da se stavi sa spied u zamjenu za znajući da samo loše magarca hackeri su varanje, umjesto prokleti kraj svima. ![]()

Možete pratiti bilo koji odgovore na ovaj unos kroz RSS 2.0 feed. Odgovori su trenutno zatvorene, ali možete trackback sa svoje vlastite web lokacije. [?]Upišite se u relevantne oznake, i kliknite na gumb, i pomoći organizirati ovaj blog je informacija.
[Dodatna pomoć]
























na knjižnica i doživjela Dewey Decimalni sustav. On pogleda sve njegove izvori na mreži i učinio puno cut-and-paste za svoje radove. Za neki razlog, to je prihvatljivo da se njegovi učitelji .... Mislim da je prva stvar bih se radi tijekom graHow posjekotina na jednom MMOGiven nedavne posjekotina na blogu, a također s obzirom na nedavne vijesti o decompiled Eve Online klijent, to činilo kao dobro vrijeme za ići preko neke od načina u kojima je virtualni svijet dobiva hacked. Zanimljive stvari, naravno, da je sve hacks
[...] Raph Koster, daje kratki uvod o tome kako MMOs posjekotina. [...]
del.icio.us / emory Travanj 18Raph's Web stranica »Kako piskaralo jedne MMOThere već programe gledati na nadzornik gledajući vas, na primjer. I Mećava je odgovor bio da gomila različitih verzija čuvar, pa ga je teže pronaći i gledati, i da - iznenađenje, šifriranje u stvari je poslao natrag. Od
[...] Cheating bi moglo biti manje briga za društveni softver nego igara (iako postoje iznimke, Digg uzeti za primjer). Za one zainteresirane za više o ovome, Raph Koster nedavno objavljena jedan detaljan pregled isjeckan i varanje u MMOGs. [...]
[...] Blogu od dizajnera igre Raph Koster (o Ultima Online, a sada Metaplace glas) će vam reći kako! [...]
Novosti predmeta Da li ste ikada poželjeli hodati kroz zidove u MMO? Kako o telepathically smislu lokacije sve dobre kapljice u zoni, ili nevidljive stvari vrlo, vrlo vidljivi? Ablog postby igra dizajner Raph Koster (o Ultima Online, a sada Metaplace glas) će vam reći kako! Priznati, Koster stvarno ne ide u mnogo detalja. Također, on je nastoji da pomogne isjeckanost programere izbjegli probleme, a ne davanje savjeta unutar tajna da hackeri. To je
[...] Klijent ima nešto. Thu v? ?? CAC b? N co-og? tham kh? ili bič kositra chi TI? t: http://www.raphkoster.com/2008/04/17 ... O-posjekotina-AN-mmo / [...]
[...] Framerates, i da neće pokrenuti anti-varanje alate poput Punkbuster ili World of Warcraft's Warden.The proizvod je trenutno u beta testnoj fazi. Možete se prijaviti za beta ili ažurirati [...]
[...] Nekih ranijih diskusija pitate zašto na zemlji Dajte stavite sve na zahtjev korisnika parametara u URL.http: / / www.raphkoster.com/2008/04/17/ho ... ck-an-mmo/If ste prijavljeni u igru, možete posjetiti bilo koje područje u osnovi samo manipulira URL. Ako [...]
[...] Kako piskaralo jedne MMO 17. Travanj 2008 (Posjećeno 5387 puta) Tags: varanje, everquest, suhi kašalj, zakoni online svijet dizajn, dizajn VW, VW tehnologije, WOW [...]
[...] Razmnožavati lokacija ...) na klijenta. kao Raph Koster je sklon podsjećanja PPL, igra client "je u ruke neprijatelju": svaki put kad dev offloads operacija na klijenta, kako bi se spremili stanje procesora za AI [...]