Nem rossz, tetszett a dolog, inspiráló.Köszönöm, ilyen még jöhet sok!
Teljes blind injektből több értéket visszahozni az injekten belül már ninjutsu. :)
Olyan esetben mint a fenti példa, jó megoldás lehet az if szerkezet, de feltétele hogy több érték legyen kiválasztható.
Amennyiben erre nincs lehetőség arra lenne egy alternatív javaslatom.
Bár a cím az hogy gyorsabb injekt, ez most ne zavarjon, (ha már engem sem zavar :P) csak egy alternatív lehetőséget mondok.
A kulcsszó a válaszidő.
Az sql kérést úgy kraftolom fel hogy a válaszidőből lehessen következtetni az értékre.
konkrétan:
mysql> select CASE 1 when 1 then sleep(1) when 2 then sleep(2) else '...' END;
1 row in set (1.00 sec)
mysql> select CASE 2 when 1 then sleep(1) when 2 then sleep(2) else '...' END;
1 row in set (2.01 sec)
Nem pastoltam be a teljes outputot, nem az a lényeg.
Ha egy webes alkalmazásnak küldesz be egy ilyet, akkor a kiszolgálás válaszideje a query futásának idejétől is függ, és ha ezt az időt nézed akkor tudsz következtetni egy egy értékre.
Jobb eset ha az oldalon megjelenik valahol h mennyi ideig futott a query.
Nagy terhelésű szervereken a terheltség függvényében ingadozhat a válaszidő szal nem 100%-os módszer.
Csak egy lehetőség.
SQL injection - időzítés
2007.11.27. 12:26 | buherator | Szólj hozzá!
Az SQL injection gyorsítós posztra érkezett egy komment _2501-től, amit azt hiszem érdemes kiemelebb helyen (itt) is közzétenni, nehogy feledésbe merüljön:
Címkék: olvasó ír sql injection
Kommentek:
A hozzászólások a vonatkozó jogszabályok értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a Felhasználási feltételekben és az adatvédelmi tájékoztatóban.
Nincsenek hozzászólások.