Běží na serveru PHP?
Pokud chcete zjistit, jestli na cizím serveru běží PHP, dá se to v některých případech odhadnout z použité koncovky. Vzhledem k tomu, že zpracování PHP kódu je možné povolit v souborech libovolných koncovek, tak to samozřejmě není stoprocentní metoda, s pomocí mod_rewrite lze navíc provádět další kouzla.
Pokud administrátor nevypne direktivu expose_php, dá se přítomnost PHP zjistit z hlavičky X-Powered-By nebo z podpisu webového serveru zobrazovaného např. na standardních chybových stránkách. Pokud ji však vypne, můžete použitý skriptovací jazyk leda odhadnout z charakteru skriptů nebo se můžete pokusit vyvolat nějakou chybu, protože v tomto případě PHP mlčí i na žádost o zobrazení svého loga. Pokud skripty používají session proměnné, dá se přítomnost PHP z charakteru jejich ukládání dobře odhadnout – cookie PHPSESSID
je toho neklamným příznakem, způsob doplňování session ID např. do formulářů při vypnutých cookies je také poměrně charakteristický. Chybu se můžete pokusit vyvolat např. předáním parametru id[]
místo očekávaného id
, spoustě funkcí se předání pole místo řetězce nebude líbit. Na správně nakonfigurovaném hostingu by ale zobrazování chyb samozřejmě mělo být vypnuté.
Diskuse
lukas:
zdravim,
a proc treba live http headers pro firefox zachytava http hlavicky jen u nekterych stranek?
Nebo ho neumim pouzivat?;)
treba tady se mi nic nezobrazi, na jinym webu toho vypise hromadu...
30.11.2005 10:19:29
Pro zobrazení hlaviček používám primitivní skript:
<?php
$url = parse_url($_GET["url"]);
$fp = fsockopen($url["host"], 80);
fwrite($fp, "GET ". (!empty($url["path"]) ? $url["path"] : "/") . (!empty($url["query"]) ? "?$url[query]" : "") ." HTTP/1.1\r\n");
fwrite($fp, "Host: $url[host]\r\n");
fwrite($fp, "\r\n");
while (strlen(trim($line = fgets($fp), "\r\n")) && !feof($fp)) {
echo $line;
}
fclose($fp);
?>
U stránek odesílaných metodou POST potom rozšíření Web Developer Toolbar.
30.11.2005 10:47:44
lukas:
dik za skript
web developer toolbar mam taky, jen tamto extensions je o dost podrobnejsi, ale proste na nakych webech neukaze nic
30.11.2005 11:54:18
Michal:
Na ktorých?
30.11.2005 15:30:24
Leo:
Mozna se vam nic nezobrazi protoze prohlizec taha stranku z kese, ne ze serveru. Leo
30.11.2005 18:24:48
Pokud není možnost vypnout expose_php jde
X-Powered-By přepsat hlavičkou přímo ve scriptu, tedy
header('X-Powered-By: blbost',true);
problémy ovšem i nadále dělá hlavička Server, kterou obdobným způsobem přepsat nejde
6.8.2008 15:48:01
Hezký postřeh, nechám to tak.
11.4.2012 16:12:40