PDA

Просмотр полной версии : Safe mode bypass


Failure
08.03.2010, 03:41
имеется RFI

include($_GET['x'].".php");

шелл удачно инклудится и работает
Software: Apache/1.3.41 (Unix) PHP/4.4.9 with Suhosin-Patch mod_ssl/2.8.31 OpenSSL/0.9.7e-p1

uname -a: FreeBSD server.name 6.3-RELEASE-p13
amd64

реверс ипом нашел множество других сайтов на этом сервере с различными багами от раскрытия путей до скл-инъекций и таких же инклудов
конструкции вида ../../../other_user/www/config.php естественно режутся, да и права грамотно настроены (только читать и могу)
disable_functions пусто, так что дело лишь за обходом сейфмода
читалки curl`ом и другие (wso2 shell) не канают, на всё ругается сейфмод, способ обхода через proc_open() может и работает но для этого надо залить куда то библиотеку (куда Оо, везде нет прав) + создать файлы с правами 777 (chmod опять таки режется сейфмодом)

мне нужно минимум - получить выполнение команд с шелла
Какие предложения?

(Dm)
08.03.2010, 03:47
http://securityreason.com/securityalert/6601
Affected Software: php:4.4.9

Модули apache какие доступны?

залить куда то библиотеку (куда Оо, везде нет прав)
Интересно куда же сессии пишутся в таком случае, смотри phpinfo (/tmp/)

Failure
08.03.2010, 04:06
за ссылку спасибо, сессии в /tmp
Loaded Modules mod_limitipconn, mod_realip, mod_bandwidth, mod_security, mod_auth_pwcheck, mod_php4, mod_ssl, mod_setenvif, mod_so, mod_headers, mod_expires, mod_auth_anon, mod_auth, mod_access, mod_rewrite, mod_alias, mod_actions, mod_cgi, mod_dir, mod_autoindex, mod_include, mod_status, mod_negotiation, mod_mime, mod_mime_magic, mod_log_config, mod_env, http_core


tempnam('/full_path','smb.php.');
// получаю
<br />
<b>Warning</b>: tempnam() [<a href='function.tempnam'>function.tempnam</a>]: open_basedir restriction in effect. File(/var/tmp) is not within the allowed path(s): (/tmp/:/tmp:/full_path) in <b>http://mysite.ru/shell.php(448) : eval()'d code</b> on line <b>1</b><br />

вот вся и проблема что tempnam никуда не создаётся, кроме как в /tmp и толку от этого мало, да и записать в файл ничего не получается т.к.

file_put_contents('/tmp/safe_mode_bypass.php.iX4hHg', '<? phpinfo(); ?>');
//Fatal error: Call to undefined function: file_put_contents() in http://mysite.ru/shell.php(448)

все к сожалению, верно, т.к. file_put_contents появилось в 5 пыхе, а тут 4.4.9

на fwrite/fputs нет прав

(Dm)
08.03.2010, 04:21
Call to undefined function: file_put_contents() причем тут права. бб я спать

попугай
08.03.2010, 15:43
fwrite и fputs не работает? Это фрихостинг?
Записать файлы можно еще при помощи move_uploaded_file(), для этого нужно загрузить их POSTом сначала.
Может у соседей есть хотя бы одна папка с правами на запись и RFI таким же как у тебя уже есть(ты сам сказал об этом). Пробуй.

Failure
08.03.2010, 20:13
спасибо, проблема решена, отдельное спасибо (Dm) за помощь, способ меня весьма удивил

s_p_a_m
20.04.2010, 18:21
спасибо, проблема решена, отдельное спасибо (Dm) за помощь, способ меня весьма удивил
так просвети же)