PHP INJEKCE nebezpečí pro vás
Napsal: úte říj 17, 2006 15:02
Úvodem
Toto je velmi základní chyba. Kdo má tuto chybu na svém webu, tak mu web "hackne" i 13ti letá holka. Takže proč nechávat útočníkům (lamkám co neumí nic lepšího než ničit) otevřené dveře? Oprava je velmi jednoduchá
Obsahuje můj web tu chybu?
Jestli-že struktura vašich stránek vypadá přibližně takto:
http://mozektevidi.ic.cz/index.php?clanek=php-injekce
je jistá pravděpodobnost, že web je napadnutelný. Pro zkoušku zkus:
http://mozektevidi.ic.cz/index.php?clan ... google.com.
Zobrazil se někde na stánce google? Tak pozor, chyba zde je!
Poznámka: Místo clanek může být cokoliv, např: show, view, go, jdi.., inspiraci se meze nekladou.
Jak takový web najít?
Když už někdo takový web hledá, hledá ho kvůli ničení. Proto zde nebude dávat text, co se má zadat do google.
Jaká je zneužitelnost?
Někdo si řekne:„Co tomu vadí, nějaký google na stránce, pche“. No ale co když adresa bude vypadat třeba takto:
http://mozektevidi.ic.cz/index.php?clan ... script.txt?
To už nastává pro webmastera docela problém. Tímto odkazem provede web cizí script, který může vypadat třeba takto:
To už je docela blbé. Já sám jsem toho využil u pragueexclusive.com nebo u dasilvio.cz Neničil jsem, admina toho webu jsem upozornil
Obrana?
Obrana je jednoduchá. Prakticky jde o to, aby se před proměnou $data vložilo ./. V případě útoku typu
http://mozektevidi.ic.cz/index.php?clan ... /seznam.cz
se nevloží seznam.cz ale ./http://seznam.cz
Špatně
Snad dobře
Závěrem?
Co dodat?
//edit Mark: kod davejte do code, je to pak přehlednější (aspoň myslím), nebo ne? ale code tu je na kod, tak to tak asi bude nejlepší
//edit: Mozek007: JJ, takle to vypadá, když si někdo splete tlačítko náhled s tlačítkem odeslat. A ještě jsem zrovna byl na rychlý lince, tak jsem ani nestačil ESC :-)
Toto je velmi základní chyba. Kdo má tuto chybu na svém webu, tak mu web "hackne" i 13ti letá holka. Takže proč nechávat útočníkům (lamkám co neumí nic lepšího než ničit) otevřené dveře? Oprava je velmi jednoduchá
Obsahuje můj web tu chybu?
Jestli-že struktura vašich stránek vypadá přibližně takto:
http://mozektevidi.ic.cz/index.php?clanek=php-injekce
je jistá pravděpodobnost, že web je napadnutelný. Pro zkoušku zkus:
http://mozektevidi.ic.cz/index.php?clan ... google.com.
Zobrazil se někde na stánce google? Tak pozor, chyba zde je!
Poznámka: Místo clanek může být cokoliv, např: show, view, go, jdi.., inspiraci se meze nekladou.
Jak takový web najít?
Když už někdo takový web hledá, hledá ho kvůli ničení. Proto zde nebude dávat text, co se má zadat do google.
Jaká je zneužitelnost?
Někdo si řekne:„Co tomu vadí, nějaký google na stránce, pche“. No ale co když adresa bude vypadat třeba takto:
http://mozektevidi.ic.cz/index.php?clan ... script.txt?
To už nastává pro webmastera docela problém. Tímto odkazem provede web cizí script, který může vypadat třeba takto:
Kód: Vybrat vše
<?
show_source("index.php");
?>
Obrana?
Obrana je jednoduchá. Prakticky jde o to, aby se před proměnou $data vložilo ./. V případě útoku typu
http://mozektevidi.ic.cz/index.php?clan ... /seznam.cz
se nevloží seznam.cz ale ./http://seznam.cz
Špatně
Kód: Vybrat vše
$data= $_REQUEST["g"];
require $data;
Kód: Vybrat vše
$data= $_REQUEST["g"];
$data = "./". $data;
Co dodat?
//edit Mark: kod davejte do code, je to pak přehlednější (aspoň myslím), nebo ne? ale code tu je na kod, tak to tak asi bude nejlepší
//edit: Mozek007: JJ, takle to vypadá, když si někdo splete tlačítko náhled s tlačítkem odeslat. A ještě jsem zrovna byl na rychlý lince, tak jsem ani nestačil ESC :-)