Re: Нужен ли bash
On 2008.10.01 at 15:22:46 +0300, Aleksey Cheusov wrote:
>
> AC>> Связь между размером исходного кода и
> AC>> безопастностью прямая. Если уж выбирать что-то более мощное по
> AC>> сравнению с shell-ом, я бы выбрал LUA или Java Script.
> AC>> Но никак не TCL и тем более не python.
>
> > Если речь идет о безопасности, то начинать надо с выкидывания sh.
> Вызов внешней утилы не является дырой в безопастности.
> По крайней мере речь _сейчас_ не об этом, контект не тот.
Дырой в безопасности является строковая подстановка с неявным
репарсингом после неё. Чуть автор скрипта на кавычках поэкономил, и
привет - arbitrary command execution.
Был у меня случай лет десять назад, когда растаскивание скрипта по двум
машинам, общавшимся по ssh привело к тому, что посредством ввода
специального значения в поле на веб-страничке я получил у себя на
десктопе xterm c бэкэнд-сервера с правами юзера wais.
ssh один уровень кавычек скушал и привет.
Вот у Tcl НЕЯВНОГО репарсинга нет. Только явным subst или eval.
Поэтому проблем со строковыми подстановками много меньше, чем в shell
> > А Java Script безопасен только в песочнице. Но в песочнице он
> > бесполезен.
> Расшифруй.
>
> Я бы вот с удовольствием заменил awk java script-ом, если бы к нему
> добавить awk-шную data-driven логику и нормальные (POSIX compatible)
Какие проблемы? Придумай объектную модель, реализующую эту логику и
вперед.
> регулярные выражения.
Э, а разве там они ненормальные? Они там по-моему как бы не pcre.
Reply to: