Page 3 of 3

Re: imagemagick - не сохраняются настройки

Posted: Tue Apr 21, 2015 7:41 pm
by admin
А запустите плз еще раз ап )

Re: imagemagick - не сохраняются настройки

Posted: Tue Apr 28, 2015 12:38 pm
by zxc
admin wrote:Только что попробовал на фре - все работает.
не думаю что разница будет со фрей.
Скиньте плз админку и по действиям что куда вписывать что б получить ошибку.
отправил

Re: imagemagick - не сохраняются настройки

Posted: Tue Apr 28, 2015 3:30 pm
by admin
Добавил пример в preload

Re: imagemagick - не сохраняются настройки

Posted: Wed Apr 29, 2015 1:23 pm
by zxc
отправил еще пример в ЛС

Re: imagemagick - не сохраняются настройки

Posted: Wed Apr 29, 2015 8:16 pm
by admin
Да, для линукса получается проблема когда можно передать в параметры что угодно

# for this input:
The smith's "; rm -rf *; echo "went to town

# after excapeshellarg()
'The smith\'s "; rm -rf *; echo "went to town'

# Works fine if left as a top-level argument
/usr/bin/command 'The smith\'s "; rm -rf *; echo "went to town'

# BUT if put in a double-quoted string:
/usr/bin/command "subcommand1 'The smith\'s "; rm -rf *; echo "went to town'"

# it is broken into 3 shell commands:
/usr/bin/command "something and 'The smith\'s ";
rm -rf *;
echo "went to town'"

# bad day...

и если убрать escapeshellcmd то любой получивший доступ в вашу админку сможет удалить все.

И пока конкретного решения вопроса найти не могу

Re: imagemagick - не сохраняются настройки

Posted: Thu Apr 30, 2015 2:48 pm
by admin
Забавно что этот топик уже на 3й странице в гугле когда я ищу решение этого вопроса ))

Re: imagemagick - не сохраняются настройки

Posted: Thu Apr 30, 2015 3:07 pm
by admin
Итого ситуация следующая:

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

как этого избегают обычно: дают возможность передать парметры через файл, а не коммандную строку.

в ИМ сейчас такого нет, но это есть у них в туду на версию 7. Сейчас версия стабильная 6.9.

что делать в данной ситуации: попросить админа сделать следующее

1. convert переименовать в например convert_orig
2. сложный параметр с ; и скобками заменить на строку например MYPARAMS
3. convert сделать вида
- заменить в переданных параметрах MYPARAMS на сложную строку
- запустить convert_orig с замененными параметрами


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