Suhosin - серьёзный недостаток этого патча

D
На сайте с 05.06.2007
Offline
155
2077

Собственно сабж,

а если точнее то к примеру, если запретить SSH функции с помощью blacklist, то возникают проблемы с различными скриптами, самое обидное что приходится перерыть все скрипты чтобы выяснить где же всё таки скрипт прерывается, ведь ошибки не выводятся даже в error_log.

Вот пример: запретили все функции SSH с помощью сухосина,

а в скрипте одной из популярных CMS присутствует @shell_exec();

Получается что скрипт умирает на неизвестном нам месте и в логах ничего нет!!!

Теперь сравним отличия запрета disable_function от blacklist(suhosin) для ясности

disable_function

- при наличии shell_exec(); выводится Warning и скрипт выполняется до конца

- при наличии @shell_exec(); НЕ выводится Warning и скрипт выполняется до конца

blacklicst

- при наличии shell_exec(); выводится Error и скрипт сразу умирает

- при наличии @shell_exec(); НЕ выводится ничего (даже нет ошибок в логах) и скрипт сразу умирает

Для тех кто не знает зачем Сухосин - для того чтобы настройками включать и выключать SSH в пхп, опциями php_value disable_functions в вирт. хосте стандартными методами этого не добиться!

Пытался разобраться с патчем, и подкоректировать этот глюк, но ничего не добился.

Хочется чтобы функция не выполнялась, а вот скрипт продолжал выполняться!

Может есть у кого либо идеи по этому поводу, кто-то встречался с подобным и решил эту задачу?

возможно другим более изящным способом ...

Написал не мало шедевров ;)
Andreyka
На сайте с 19.02.2005
Offline
822
#1

У тебя есть 4 варианта:

1. Разрешить shell и забить на безопасность

2. Запретить shell и забить на скрипты

3. Переписать php и suhosin, чтоб работали как ты хочешь

4. Настроить сервер так, чтоб shell ничего не давал сделать

Не стоит плодить сущности без необходимости
D
На сайте с 05.06.2007
Offline
155
#2

Да вот получается что только 3й вариант устраивает.

SSH в пхп нужен, и включается опытными пользователями по большой необходимости.

Не проблема включить для всех, проблема в том что если ломанут один из сайтов из-за уязвимости, то получают SSH возможности, рассылка спама, запуск ботов со сканами и другой вирусняк, уже не раз пробирались :(

Electronn
На сайте с 01.02.2010
Offline
91
#3
Dimanych:
Да вот получается что только 3й вариант устраивает.
SSH в пхп нужен, и включается опытными пользователями по большой необходимости.
Не проблема включить для всех, проблема в том что если ломанут один из сайтов из-за уязвимости, то получают SSH возможности, рассылка спама, запуск ботов со сканами и другой вирусняк, уже не раз пробирались :(

если ломанут, то в 99 случаях из 100 это смогут сделать, есть ли на сервере сухосин или нет его. попробуйте включить логирование сухосина.

M
На сайте с 01.12.2009
Offline
235
#4
Dimanych:
Да вот получается что только 3й вариант устраивает.
SSH в пхп нужен, и включается опытными пользователями по большой необходимости.
Не проблема включить для всех, проблема в том что если ломанут один из сайтов из-за уязвимости, то получают SSH возможности, рассылка спама, запуск ботов со сканами и другой вирусняк, уже не раз пробирались :(

Есть ещё один вариант, поддерживать ось в актуальном состоянии,и писать не кривой скрипт, что-бы не переживать что через него взломают.

Администратор Linux,Freebsd. построения крупных проектов.
Andreyka
На сайте с 19.02.2005
Offline
822
#5

madoff, ты шо, это ж админам надо плотить

Himiko
На сайте с 28.08.2008
Offline
560
#6
Dimanych:
SSH в пхп нужен, и включается опытными пользователями по большой необходимости.

И включайте действительно "опытным" и при реальной необходимости.

Во первых, нафиг ssh-команды стандартным сайтам не нужны.

Во вторых, даже если ssh-команды доступны, они не должны никак навредить общей безопасности.

Профессиональное администрирование серверов (https://systemintegra.ru). Круглосуточно. Отзывы (/ru/forum/834230) Лицензии (http://clck.ru/Qhf5) ISPManager,VDSManager,Billmanager e.t.c. по низким ценам.
Boris A Dolgov
На сайте с 04.07.2007
Offline
215
#7

А почему все называют sh-команды ssh-командами? :)

С уважением, Борис Долгов. Администрирование, дешевые лицензии ISPsystem, Parallels, cPanel, DirectAdmin, скины, SSL - ISPlicense.ru (http://www.isplicense.ru/?from=4926)
D
На сайте с 05.06.2007
Offline
155
#8

Electronn, знаю, но сама возможность использовать шел после взлома особенно для хаЦкеров очень заманчива... по себе знаю :)

Himiko:
И включайте действительно "опытным" и при реальной необходимости.
Во первых, нафиг ssh-команды стандартным сайтам не нужны.
Во вторых, даже если ssh-команды доступны, они не должны никак навредить общей безопасности.

Ну так опционально разрешать и запрещать шел при использовании mod_php(itk) без Suhosina не возможно, ведь php.ini один! А с ним получается что запретив шел через blacklist разные скрипты в которых используются эти функции просто не запускаются ...

Пока как вариант приходится кидать избранных (с шелом) на другой сервер, но это вовсе не удобно...

M
На сайте с 01.12.2009
Offline
235
#9
Dimanych:
Electronn, знаю, но сама возможность использовать шел после взлома особенно для хаЦкеров очень заманчива... по себе знаю :)



Ну так опционально разрешать и запрещать шел при использовании mod_php(itk) без Suhosina не возможно, ведь php.ini один! А с ним получается что запретив шел через blacklist разные скрипты в которых используются эти функции просто не запускаются ...
Пока как вариант приходится кидать избранных (с шелом) на другой сервер, но это вовсе не удобно...

Уберите itk, и с php-cgi ставиться всё прекрасно в отдельный php.ini - глобально включайте safe_mode опасные функции запрещаете, а на уровне юзера в php-cgi разрешаете и работаете.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий