Старый 02.10.2012, 02:03   #1
sysger
 
Аватар для sysger
 
Регистрация: 02.10.2012
Сообщений: 3
Репутация: 0
По умолчанию Что можно получить из под рута MySQL ?

Приветствую, уважаемые!

Есть сервер с включенным open_base_dir (включено через .htaccess в корневой директории сайта).
Есть шелл в корне (был залит до выставления рутовых прав на файлы), но корневая директория защищена от записи.
Странно что теперь при заходе на шелл пишет мои права как 0 (root) Group: 0 (?), но whoami выдает apache.
Есть доступ к root пользователю MySQL. Могу читать системные файлы /etc/passwd и т.д. но записывать в корень сайтов не могу (видимо из-за ограничений open_base_dir, но не уверен т.к. в администрировании серверов не силен - нуб)
На сервере включен ssh, отсутствует gcc.
Может возможно как-нибудь вытянуть пароль от ssh или ftp?

Версия ядра на сервере 2.6.32-042stab055.12.

Последний раз редактировалось sysger; 02.10.2012 в 02:20..
sysger вне форума   Ответить с цитированием
Старый 22.11.2012, 06:31   #2
llokely
 
Регистрация: 18.12.2011
Сообщений: 36
Репутация: 0
По умолчанию

Присоединяюсь к вопросу, возможно ли как-то получить рутовый доступ, имея только рута в мускуле?
llokely вне форума   Ответить с цитированием
Старый 22.11.2012, 10:03   #3
SynQ
 
Регистрация: 11.07.2010
Сообщений: 954
Репутация: 352
По умолчанию

На винде, если mysql запущен под localsystem, думаю, да.
SynQ вне форума   Ответить с цитированием
Старый 22.11.2012, 10:08   #4
oRb
 
Аватар для oRb
 
Регистрация: 01.07.2010
Сообщений: 319
Репутация: 138
По умолчанию

Цитата:
Странно что теперь при заходе на шелл пишет мои права как 0 (root) Group: 0 (?), но whoami выдает apache.
шелл не может корректно определить текущего пользователя, тк недоступны posix_* функции. Тут либо disbale_functions виноват, либо php собран с опцией --disable-posix
Цитата:
Есть доступ к root пользователю MySQL. Могу читать системные файлы /etc/passwd и т.д. но записывать в корень сайтов не могу (видимо из-за ограничений open_base_dir, но не уверен т.к. в администрировании серверов не силен - нуб)
open_basedir - это директива php. На mysql она не должна влиять. Демон mysql в подавляющем большинстве случаев работает от пользователя mysql, что не даст ему писать в файлы где попало. Так же может использоваться AppArmor или SELinux, которые будут ограничивать доступ мускула к файлам, которые он мог бы прочитать, если бы позволял chmod.

Ребят, зачем вам рут, если вы вообще не разбираетесь в системе? Вы же реально можете угробить сервер.
__________________
Не оказываю никаких услуг.
I don't provide any services.
oRb вне форума   Ответить с цитированием
Старый 23.11.2012, 13:55   #5
InSys
 
Аватар для InSys
 
Регистрация: 13.03.2012
Сообщений: 15
Репутация: 4
По умолчанию

Цитата:
Сообщение от sysger Посмотреть сообщение
Есть сервер с включенным open_base_dir (включено через .htaccess в корневой директории сайта).
Есть шелл в корне (был залит до выставления рутовых прав на файлы), но корневая директория защищена от записи.
Дак собственно говоря, open_basedir может выставлятся в .htaccess только с версий php>=5.3. Во всех остальных это только php.ini или httpd.conf. Если вы уверенны что у вас таки php 5.3 то можно создать еще один .htaccess с новой диррективой, в каталоге выше корневого, туда же следует перенести шелл. Новое значение должно переписать старое, и будет все ок. А если версия младше 5.3 значит дирректива в вашем корневом .htaccess никак не будет влиять на поведение скриптов.

Последний раз редактировалось InSys; 23.11.2012 в 13:58..
InSys вне форума   Ответить с цитированием
Старый 29.11.2012, 03:24   #6
sysger
 
Аватар для sysger
 
Регистрация: 02.10.2012
Сообщений: 3
Репутация: 0
По умолчанию

Поверить не могу, все таки ответили спустя полтора месяца!
Цитата:
Сообщение от oRb Посмотреть сообщение
шелл не может корректно определить текущего пользователя, тк недоступны posix_* функции. Тут либо disbale_functions виноват, либо php собран с опцией --disable-posix
Понятно.
Цитата:
Сообщение от oRb Посмотреть сообщение
open_basedir - это директива php. На mysql она не должна влиять.
Спасибо, не знал!
Цитата:
Сообщение от oRb Посмотреть сообщение
Демон mysql в подавляющем большинстве случаев работает от пользователя mysql, что не даст ему писать в файлы где попало. Так же может использоваться AppArmor или SELinux, которые будут ограничивать доступ мускула к файлам, которые он мог бы прочитать, если бы позволял chmod.
Вот это я выяснил, но слышал про некие расширения для mysql, но мне они врядли помогут.
Цитата:
Сообщение от oRb Посмотреть сообщение
Ребят, зачем вам рут, если вы вообще не разбираетесь в системе? Вы же реально можете угробить сервер.
Рут мне нужен потому что я достаточно успешно использовал серв, но потом мне перекрыли кислород с помощью open_basedir и установки "правильных" прав на файлы.
Цитата:
Сообщение от InSys Посмотреть сообщение
Дак собственно говоря, open_basedir может выставлятся в .htaccess только с версий php>=5.3. Во всех остальных это только php.ini или httpd.conf. Если вы уверенны что у вас таки php 5.3 то можно создать еще один .htaccess с новой диррективой, в каталоге выше корневого, туда же следует перенести шелл. Новое значение должно переписать старое, и будет все ок. А если версия младше 5.3 значит дирректива в вашем корневом .htaccess никак не будет влиять на поведение скриптов.
Спасибо за участие. Версия 5.4 так сделать нельзя, не хватает прав, выше корневой директории сайта мне не подняться!


UPD! админы не перестают удивлять, зашел на шелл, а там сюрприз - новая группа пользователя с привелегией редактирования всех файлов на сервере. В общем повысили мне права на серваке, спасибо ребята!

Последний раз редактировалось sysger; 29.11.2012 в 03:38..
sysger вне форума   Ответить с цитированием
Старый 29.11.2012, 16:57   #7
InSys
 
Аватар для InSys
 
Регистрация: 13.03.2012
Сообщений: 15
Репутация: 4
По умолчанию

Цитата:
Сообщение от sysger Посмотреть сообщение
Спасибо за участие. Версия 5.4 так сделать нельзя, не хватает прав, выше корневой директории сайта мне не подняться!
Толи я тебя не понял, толи ты меня. Надо было в любой доступной папке создать свой .htaccess со своим конфигом и перенести шелл туда. На новый шелл распространялись уже бы твои настройки.

Но впрочем раз уж тебе повезло с админами, то можно уже не париться.
InSys вне форума   Ответить с цитированием
Старый 29.11.2012, 18:18   #8
sysger
 
Аватар для sysger
 
Регистрация: 02.10.2012
Сообщений: 3
Репутация: 0
По умолчанию

Цитата:
Сообщение от InSys Посмотреть сообщение
Толи я тебя не понял, толи ты меня. Надо было в любой доступной папке создать свой .htaccess со своим конфигом и перенести шелл туда. На новый шелл распространялись уже бы твои настройки.

Но впрочем раз уж тебе повезло с админами, то можно уже не париться.
Я тебя понял, но как я уже писал выше, использовал серв для своих целей, как раз это обстоятельство требовало доступ к корневой директории сайта. Раньше (и теперь тоже) файл в корневой директории был открыт на запись для моего пользователя, но потом админ изменил права и убрал кое-какие важные для меня записи.
sysger вне форума   Ответить с цитированием
Старый 30.11.2012, 11:01   #9
Raz0r
 
Аватар для Raz0r
 
Регистрация: 17.07.2010
Сообщений: 100
Репутация: 78
По умолчанию

Цитата:
Сообщение от InSys Посмотреть сообщение
Дак собственно говоря, open_basedir может выставлятся в .htaccess только с версий php>=5.3. Во всех остальных это только php.ini или httpd.conf. Если вы уверенны что у вас таки php 5.3 то можно создать еще один .htaccess с новой диррективой, в каталоге выше корневого, туда же следует перенести шелл. Новое значение должно переписать старое, и будет все ок. А если версия младше 5.3 значит дирректива в вашем корневом .htaccess никак не будет влиять на поведение скриптов.
1. Как ты собираешься создать .htaccess в каталоге выше корневого, если стоит open_basedir? 2. Зачем нужен шелл не в веб дире? Да и при том отключить open_basedir в любом случае не получится, хоть PHP 5.3.0, хоть нет. Можно указать вложенные папки, но не отключить.

Цитата:
As of PHP 5.3.0 open_basedir can be tightened at run-time. This means that if open_basedir is set to /www/ in php.ini a script can tighten the configuration to /www/tmp/ at run-time with ini_set(). When listing several directories, you can use the PATH_SEPARATOR constant as a separator regardless of the operating system.
Raz0r вне форума   Ответить с цитированием
Старый 30.11.2012, 17:56   #10
InSys
 
Аватар для InSys
 
Регистрация: 13.03.2012
Сообщений: 15
Репутация: 4
По умолчанию

Цитата:
Сообщение от Raz0r Посмотреть сообщение
1. Как ты собираешься создать .htaccess в каталоге выше корневого, если стоит open_basedir? 2. Зачем нужен шелл не в веб дире?
Ну оговорился я) всмысле не "выше", а глубже, в каком нибудь подкаталоге.
Цитата:
Сообщение от Raz0r Посмотреть сообщение
Да и при том отключить open_basedir в любом случае не получится, хоть PHP 5.3.0, хоть нет. Можно указать вложенные папки, но не отключить.
В его случае open_basedir был указан в .htaccess а не в php.ini. Так что все может быть могло бы сработать.
InSys вне форума   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход



Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot