Perl: безопасный язык шаблонов - PullRequest
3 голосов
/ 22 июля 2011

В SO уже есть несколько вопросов о безопасных языках шаблонов , например:

, но приведенные выше вопросы относятся к asp, ruby, python.

Мой вопросявляется: Какой язык шаблонов может разрешить редактирование пользователями в веб-приложении на основе Perl?

Я хочу разрешить пользователям редактировать страницы (как в вики) с некоторыми возможностями программирования,такое полнофункциональное среднее с циклами, условными выражениями, переменными, включениями и т. д.

Достаточно ли безопасен TT?Есть ли другое решение, как TT?

1 Ответ

4 голосов
/ 22 июля 2011

Template :: Toolkit Должно быть в порядке, если вы ограничиваете параметры, передаваемые в шаблон.Если вы передадите классы, шаблоны смогут вызывать любой метод для этих классов, а также любой метод для возвращаемых значений этих классов и т. Д. Гораздо лучше передавать только хэши.

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

В любом случае, сделайтеубедитесь, что вы прочитали документацию для всего, что вы используете, и очистите вывод, чтобы предотвратить атаки сценариев между сайтами.Не полагайтесь на людей, настраивающих шаблоны для получения правильной выходной кодировки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...