Zasady działania

UWAGA: PODANE INFORMACJE POCHODZĄ Z NIEZNANEGO ŹRÓDŁA, NIE ZNAM AUTORA

Witam dziś wszystkich, po ostatnich weryfikacjach zasad działania gry, nadszedł czas na mały komentarz w tej sprawie.

Gra jest w zasadzie przeglądarkowa, komunikuje się ze światem poprzez port 8080 co bardzo ułatwia analizę tego co się dzieje i jak to działa. Producent tym razem zastosował TOKEN, czyli unikalny identyfikator, nadawany graczowi przy 1 logowaniu a właściwie przypuszczam że przy osiągnięciu 5 lvl (co umożliwia nadanie nazwy). Na pewno pobierane dane z telefonu to : kod kraju, system operacyjny wraz z jego wersją, producent telefonu. Obawiam się że pobranych danych jest znacznie więcej – pamiętacie problemy przy zmianie softu i utracie konta?

Token jest obliczany na podstawie następujących parametrów, dla iPhone :

type=ios
mac=02:00:00:00:00:00
locale=pl_PL
device=iPhone3,1
credentials[mac]=02:00:00:00:00:00
credentials[ida]=tutaj 32 znaki HEX (część 1)
idaenabled=0
credentials[idv]=tutaj 32 znaki HEX (część 2)
v=1.8.2

oraz iPad :

type=ios
mac=02:00:00:00:00:00
locale=pl_PL
device=iPad2,4
credentials[mac]=02:00:00:00:00:00
credentials[ida]=tutaj 32 znaki HEX (część 1)
idaenabled=1
credentials[idv]=tutaj 32 znaki HEX (cześć 2)
v=1.8.2

znaki HEX, są unikalne dla danego sprzętu, generowane są na podstawie algorytmu, nad którym spokojnie sobie pracuję. Używany jest przez producenta dla wszystkich gier (Gra Wojny, Gra Rycerzy, Jaskiniowey, Mafia … itd). Jak widać, ma znaczenie typ systemu (ios), lokalizacja (pl_PL), sprzęt (iPad, iPhone) oraz credentials (stała wartoś dla danego sprzętu). Czyli można przypuszczać, że mając takie informacja – mam nadzieję że znajdę wszystkie niezbędne wymagania (w rozsądnym czasie) – będę możliwość wygenerowania TOKENa dla dowolnego usera, znając jego … wersje systemu operacyjnego oraz sprzęt – a że jest tego ograniczona ilość, umożliwi to zabawę dalszą …

Zacznijmy zabawę  dalszą, co otrzymujemy po rejestracji :

hxxp://live.mobilewar.gfsrv.net/player/register?…. (tutaj już nie zanudzam szczegółami….)

zwrotnie dostajemy 2 wartości … 32 znakowe oddzielone | … później tylko 1 z nich jest używana już zawsze i wszędzie … do identyfikacji, to właśnie ten TOKEN, oznaczany w wysyłanych danych jako [i]. Praktycznie z tego powodu nie wymaga podawania hasła na urządzeniu. Każde logowanie, każda opracja jest właśnie tym oznaczana. 2 liczna 32 znakowa, oznacza identyfikator logowania, zawierający godzinę, datę oraz kilka dodatkowych danych (w trakcie analizy). Jest to już mniej istotne, bo można zawsze sobie to spokojnie wygenerować legalnie i bez problemow.

Dla przykładów TOKEN (jako liczna 32 znakowa : ‚tttttttttttttttttttttttttttttttt’, unikalny nymer sesji czasowej : ‚11111111111111111111111111111111’ lub ‚2222222222222222222222222222222’ itd). Pozostałe dane także zostaną ‚zmyślone’ aby że tak powiem, uniemożliwić identyfikację sprzętu.

Całoś jest na razie samym wstępem i domysłami, przypuszczeniami … co to funkcjonowaniu gry. Część kodu źródłowego, cały czas ulega zmianie. Od 14.06 do 16.06.2014 zmieniono sposób zabezpieczenia gry, wprowadzono dodatkowy kod java … weryfikujący oraz jeśli się nie mylę identyfikujący dodatkowo czas. Przez 2 doby nie działały booty atakujące graczy i farmiące. Obecnie działają już normalnie i utrudniają życie normalnie grającym.

Z uwagi na dodatkowe pytania i zagadanienia, proszę zwrócić uwagę że producent cały czas poprawia grę i zabezpieczenia. Jeśli ktoś Wam oferuje płatne usługi typu ‚hack tools’, proszę tego nie brać poważnie! Tylko można stracić kasę (płatne SMSy), wprowadzić sobie wirusy na telefon, komputer – stracić kase z konta itd. NIE MA PROSTEGO oszukiwania w grze. Opisane tutaj metody i zasady można użyć właściwie tylko i wyłącznie w celu automatyzacji farmienia, zbijania własnych morali, pomocy w atakowaniu upierdliwców – złośliwość – nawet jak jesteśmy słabsi, możemy znacznie utrudnić im grę. Ale to właściwie wszystko. Nie dostaniecie wszystkiego, ale … tylko garść wiadomości z dosyć obszernej analizy technicznej gry. Niestety, nie znalazłem osób mających zapał, wiedzę i chęci do pomocy w zabawie – samemu mi się po prostu nie chce, ja się tym tylko bawię.

Wracając do zabawy, każda gra jest taka sama, różnicą jest tylko i wyłącznie ikonka graficzna na telefonie. Producent pozwala nam ściągnąć nic innego jak zwykłą przeglądarką … identyfikującą się jako :

User-Agent: mobile…/1.8.2 CFNetwork/672.1.14 Darwin/14.0.0

oraz

 User-Agent: Mozilla/5.0 (iPad; CPU OS like Mac OS X) AppleWebKit/537.51.2 (KHTML, like Gecko) Mobile

W tej chwili, jest troszkę utrudnień z logowaniem przed dowolną przeglądarkę internetową … ale to chwilowy i mały problem. Nie ma się czym przejmować. Zadajmy pytanie o zwykłego usera …

GET /profile/index/id/9999999?i=tttttttttttttttttttttttttttttttt&h=11111111111111111111111111111111&t=0000000000&m=0&dpr=2.0 HTTP/1.1
Host: live.mobilewar.gfsrv.net
Cookie: localAssets=1; PHPSESSID=unikalny_numer_sesji

To są podstawowe dane … bo jest ich znacznie więcej, ale nie mają tutaj znaczenia … otrzymujemy cały kod HTMLa :

HTTP/1.1 200 OK
Date: Sat, 11 Jun 2014 22:27:34 GMT
Server: Apache
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Accept-Encoding
Content-Length: 39701
Connection: close
Content-Type: text/html; charset=utf-8

Ciekawostkę dałem na BOLD. W dalszej części :

<div id=”content” class=””>
<div id=”contentinner”>
<!– Tabs (top) –>
<div id=”tabsOuter_first”>
<div class=”tabsOuter”>
<div class=”tabsWrap”>
<ul class=”tabs clearfix”>
<li  class=”active” data-label=”profile/nav/info”><a href=”/profile/info/id/9999999„>Info</a></li>
<li  data-label=”profile/nav/comments”><a href=”/profile/comments/id/9999999„>Komentarze</a></li>
</ul>
</div>
<div class=”tabsNav tabsNav_prev inactive”></div>
<div class=”tabsNav tabsNav_next”></div>
</div>
</div>
<!– Content –>
<div class=”profile_header”>
<div class=”profile_avatar”></div>
<h3>NAZWA</h3>
<p class=”playerType”><span class=”iconLang iconLang_fr„></span>
<small>Ranga 228</small> <em class=”spacing”>&middot;</em> <small>Wielkość‡ sojuszu 1002</small></p>
</div>
<form action=”/fight/index/id/9999999/i/tttttttttttttttttttttttttttttttt/h/11111111111111111111111111111111/t/0000000000″ method=”post” class=”attackEnemy”>
<input type=”hidden” name=”id” value=”9999999” />
<button class=”button btnFury oneTimeClick”><span>Atakuj</span></button>
</form>

To naprawdę dobre informacje, dające nam od razu wszystko co potrzebujemy, aby ‚gościa’ atakować … zawsze i wszędzie, bez względu na to czy go widzimy, mamy w sojuszach, czy zmienił nazwę i czy chce się ukryć, TO NIE MA ZNACZENIA. Czyli podstawowe dane do zweryfikowania:

atakujemy kiedy chcemy, gracza o unikalnym i niezmienialnym ID 9999999:

hxxp://live.mobilewar.gfsrv.net/fight/index/id/9999999/i/tttttttttttttttttttttttttttttttt/h/11111111111111111111111111111111/t/0000000000

informacja o graczy, ilość sojuszy, jednostek, poziom itd :

hxxp://live.mobilewar.gfsrv.net/profile/info/id/9999999

komentarze gracza :

hxxp://live.mobilewar.gfsrv.net/profile/comments/id/9999999

Tak jak mówiłem, można wykonać komendę … i zmienić ID do ataku … na dowolny … i tutaj są właśnie skrypty do tego. Mi się nie chce pisać za bardzo samemu, bo i po co?

Postaram się tylko zebrać wszystkie informacje o graczach … poprzez przejście … od

hxxp://live.mobilewar.gfsrv.net/profile/info/id/1

do

hxxp://live.mobilewar.gfsrv.net/profile/info/id/9999999

Zbierając całość w jednym pliku … i będzie zawierał

  • id
  • nazwę
  • narodowość
  • poziom
  • wielkość sojuszu

Reszta jest chyba malo istotna … a wszystko dostajemy jak na tacy poprzez powyższe polecenia.

Widzicie różnicę w grach ?

hxxp://live.mobilewar.gfsrv.net/profile/info/id/9999999

hxxp://live.mobilemiddleages.gfsrv.net/profile/info/id/9999999

hxxp://live.mobilestoneage.gfsrv.net/profile/info/id/9999999

To tak na wstępie … bo czasu zawsze za mało … a danych jest od groma …

Nie ma miłosierdzia! – atak za URAN

Dziś podczas atakowania jednego z moich wspaniałych bootów (pełno ich się koło mojego konta kręci), zobaczyłem taki oto obrazek:

20130722_zmiana

Sugeruje on, możliwość dalszego eksploatowania danego gracza. Obawiam się że dzięki inwestycji 10 Uranów, odnowi on TWOJE Morale. Niezły koszmar dla osób mających dużą ilość kasy co noc … cholera, to JA! 🙂 Obawiam się że wprowadzi to niezłe zamieszanie w grze i jest dużo bardziej idącą zmianą niż dotychczas wprowadzone – nawet bardziej niż nowe jednostki i miejsca wykonywania operacji.

Na tej podstawie można wnioskować, że za chwilę bez stałego dopływu Uranu ciężko będzie się wybić w grze a brak Morale nie będzie już przeszkodą podczas ataków. Nie mówię tutaj już tylko oczywiście o rodzimych graczach, ale właśnie o  tych zagranicznych, którzy nie mają problemów z zakupem dużej ilości Uranu. Osobiście uważam że wydatek 75-99$ (zależy od promocji) 1700 jednostek Uranu jest dużym wyzwaniem finansowym. Tak samo chciałbym przestrzec przed ‚Zarób sobie Uran’, tym bardziej na Androidzie, gdzie udostępniamy wszystkie informacje zawarte w telefonie (może przesadzam, ale w każdym razie dajesz taką zgodę i miej tego świadomość). Zachęcam także do przeczytania ‚Ochrona prywatności’ – ale to na pewno już wszyscy przeczytali. Podawanie gdziekolwiek swojego numeru telefonu także nie jest najciekawszym rozwiązaniem … ale czego się nie zrobi dla kilku Uran’ów?

Ogólnie zastanawiam się dlaczego tak jest, jeśli gdzieś ktoś chce nam zrobić zdjęcie na ulicy i zapyta nas o zgodę, w większości przypadków odmawiamy, krzyczymy i w ogóle jest to problem. Ale publikowanie własnych zdjęć na FB, blogu, NK itd., nierzadko w bardzo dziwnych pozach, miejscach – jest czymś naturalnym i oczywistym. To samo dotyczy numeru telefonu, normalnie nigdy nie podajemy go nieznajomym … a tutaj? Ślijcie mi wszystko co chcecie, smsy, reklamy – chcecie w środku nocy? Dlaczego nie … dziwny jest ten świat. Dodatkowo proszę się nie zdziwić, jeśli dzięki podaniu kodu otrzymanego SMS’em aktywujesz sobie płatną subskrypcję sms’ową. Nie wszystkie oczywiście oferty są takie, ale zanim coś klikniesz – przeczytaj!!! Spotkałem już osoby, które potrafiły stracić na tym … nawet 20 zł/dzień … kasowały te dziwne smsy i na koniec miesiąca strasznie zdziwione wysokością rachunku za telefon …

Wieczorkiem, wykonałem niezbędne testy, sprawa wygląda następująco:

Pierwszy atak za 10 Uranów

Drugi atak już za 15 Uranów

Ważną informacją jest to, że atakowany NIE WIE, kto go zaatakował ani kiedy. Została zabrana tylko kasa i nie było o tym ataku informacji u atakowanego, ot ciekawostk. Co do cennika, widać że trzeci atak, kosztuje nas już 22 Uranów. Czy warto? Raczej nie, chyba że złośliwość jest straszliwa lub kasa do zdobycia jest niesamowita 😉

Ogólnie, martwiłem się na początku co ta zmiana przyniesie, obawiałem się że odnowi to całkowicie morale i będzie koszmarem dla osób takich jak ja, nie siedzących nocami a posiadającymi duży stały dochód (prawie 1,3 mld/h). Dodatkowo zaczyna się pojawiać informacja że wprowadzono nową możliwość ataków:

Damy radę, nie jest tak źle … trza realizować kolejne operacje …