| Zdravím,
vlastním hru a jeden lamík mi ji nějakým způsobem hacknul hru (nejspíš ne ftp spíš tam mám někde díru).
Samozřejmě mě ten maník nechce prozradit kde ten bug je (chce za to zaplatit a pro mě jako studenta to nepřipadá v úvahu), tak bych vás chtěl poprosit kdyby jste se na to nemrkli jestli tam něco nenajdete.
Adresa je [link] a přihlásit se můžete pod loginem "Test" a heslem "test".
Pokud něco najdete budu vám velice vděčný, už jsem z toho zoufalí.
Mějte se :) (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 0:16 |
|
|
|
| minimalně XSS... ale sem unavenej a jdu spat tak vic tedka hledat nebudu... [link](666)%3C/script%3E
----------
Punk will never be dead to me. It's my life. I can never just drop this lifestyle. It embodies me. (odpovědět) | |
|
|
| Díky opravil jsem.
Ale když tam je (bylo) xss tím nemůžeměnit data v databázích ne? (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 9:24 |
|
|
|
| podle nic.cz je u Forpsi
----------
"Když se zblázníte, víte o tom, že jste se zbláznili? A když ne, jak víte, že nejste blázen?" Terry Pratchett
[link] (odpovědět) | InSaN3 | | | 304651210 | 6.7.2008 10:43 |
|
|
|
| Sry, to mělo být o příspěvek níže, jak ses ptal, u jakého je hostingu. Takže jsem ti odpověděl.
----------
"Když se zblázníte, víte o tom, že jste se zbláznili? A když ne, jak víte, že nejste blázen?" Terry Pratchett
[link] (odpovědět) | InSaN3 | | | 304651210 | 6.7.2008 10:44 |
|
|
|
| muže ti ukrást cookies atd...
----------
Punk will never be dead to me. It's my life. I can never just drop this lifestyle. It embodies me. (odpovědět) | |
|
|
| Mas tam SQL injection
[link]()
V tabulce pod polozkou jmeno je nazev prvni tabulky... ciselne vstupy nema cenu osetrovat pridavanim lomitek pred nebezpecne znaky, na cisla musis pouzit bud funkci $cislo=intval($cislo); nebo podminku if(!is_numeric($cislo)) die("tohle ne");. (odpovědět) | Zax | | | 241045934 | 6.7.2008 12:12 |
|
|
|
| Ty zavorky, co jsou za tim patri stale do adresy, tak si je tam nezapomen pak pridat, jinak to hazi error... (odpovědět) | Zax | | | 241045934 | 6.7.2008 12:13 |
|
|
|
| sql injekce, díky fakt moc :)
hned to jdu opravit, ještě jednou díky (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 12:47 |
|
|
|
|
| OK tak tedy původní nezabezpečený script vypadal následovně:
$sql=mysql_query('SELECT * FROM tabulka WHERE id='.$_GET['id'].'');
a trochu jsem to předělal takže teď je to
$id = $_GET["id"];
//kontrola, zda je id cislo
if (!is_numeric($id)):
echo "Toto ne!";
else:
$sql=mysql_query('SELECT * FROM uzivatele WHERE id='.$_GET['id'].'');
$row=mysql_fetch_array($sql);
endif;
myslíte že to stačí? prosím zkuste to abych sem potom nepsal znovu :) (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 13:13 |
|
|
|
| perfekcionista by nekontroloval jenom jestli je to čislo ale udělal by white list hodnot (cisel) všech uživatelu a kontroloval jestli $_GET["id"] je mezi temito hodnotami ;-)
----------
Punk will never be dead to me. It's my life. I can never just drop this lifestyle. It embodies me. (odpovědět) | |
|
|
| Nestaci¨jen kontrolovat cislo.... sice tomu hovno rozumim, ale kdyz se na ten tvuj kod tak divam, tak vidim minimalne 2 chyby... (odpovědět) | _( | )_ | 85.132.197.* | 6.7.2008 13:26 |
|
|
|
| |>011'/: perfekcionista sice nejsem ale udělám to :)
_( | )_: no tak se poděl o ty chyby, ať jsem o něco chytřejší :), já tam tedy nic nevidím :/ (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 13:33 |
|
|
|
| Nvm, co _( | )_ myslel, spis vidim zbytecnosti, nez chyby... napr.
$id = $_GET["id"];
nejakafce($id);
...
je docela prasacky, jesltis to chtel tak pro nazornost, tak to jeste jo :)
$_GET['id'].'' na konci sql dotazu ... je opravdu nezbytne na konec pridavat prazdny retezec? :P
... jinak jeste detail podle me je rychlejsi vybrat primo sloupce, ktere opravdu potrebujes, select * zbytecne zdrzuje
(odpovědět) | Petrof_ | 213.192.3.* | 6.7.2008 16:06 |
|
|
|
| nj koukám na to =-o
opravím, díky (odpovědět) | POkyy | 85.207.18.* | 6.7.2008 16:11 |
|
|
|
| chvalim za konstruktivni pomoc, konecne to tu nevypada jak doupe diletantu... (odpovědět) | Emkei | | | | 6.7.2008 18:03 |
|
|
|
| j je to super, a RubberDuck mi pomáhal přez poštu ve hře, všem děkuju :)
potom napíšu jestli to (to = opravení té xss díry, opravení sql injekce a ošetření většiny vstupů) pomohlo, ale vypadá to že jo
ještě jednou všem moc díky za rady (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 19:50 |
|
|
|
| NAšel jsem tam další sql injection a následně jsem se od toho člověka dozvěděl jak to dělal.
Nevyužíval žádné díry ale jednoduše nezabezpečených inputů.
Přiklad: Najednou se mu objevilo v armádě nějakolik jednotek co by nikdy nemohl získat (tím pádem jsem si myslel že mám někde díru) akorát to bylo v imputu kde se prodávly jednotky...
Příklad:Když do tohoto imputu vložím -5 napíše se hláška že musíš zadat kladné číslo, ale onn tam zadal +- 5 a pustilo ho to a přidalo mu to jednotky.
Tím je záhada vysvětlena snad nadobro.
A ještě bych chtěl poradit, trochu jsem googlil a nenašel jsem nic jak zabezpečit aby se tam nedalo zadal třeba těch +- 5, nevíte jak se toho dá dosáhnout? Díky (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 22:19 |
|
|
|
| doublepost: kdybyjste objevili nějakou další chybku budu samozřejmě rád :) (odpovědět) | Pokyy | 85.207.18.* | 6.7.2008 22:21 |
|
|
|
| prostě to vem jako string a projiždej ho po jednotlivejch charech a co tam nepatří vyhod...
----------
Punk will never be dead to me. It's my life. I can never just drop this lifestyle. It embodies me. (odpovědět) | |
|
|
| Jj, pujde to tak, jak rika |>011'/, ale stejne
je to zvlastni, protoze kdyz zada +-5,
tak by ($neco > 0) melo hodit false. ... jinak co treba absolutni hodnota? (odpovědět) | Petrof_ | 213.192.3.* | 7.7.2008 12:34 |
|
|
|
| +1,máš recht... absolutní hodnota to řeší... sem zas byl unavenej tak sem vymejšlel pičoviny misto abych přišel na jedodušší řešení :-)
----------
Punk will never be dead to me. It's my life. I can never just drop this lifestyle. It embodies me. (odpovědět) | |
|
|
| mas stale xss v predmetu zpravy!!!
----------
Lide jsou ruzni, nekteri bohuzel i zli... (odpovědět) | |
|
|
| Můžu stavět i na jiné planety tím, že jednoduše měním proměnnou planeta. Předpokládám, že tedy mohu bourat i na jiných planetách, což je rozhodně bug! (odpovědět) | |
|
|
| xss opraveno
bourání stejně nefunguje takže v poho :D (odpovědět) | Pokyy | 85.207.18.* | 14.7.2008 18:49 |
|
|
|