sh: uvozovky v promenne
Jan Pechanec
jp at devnull.cz
Thu Aug 8 18:11:48 CEST 2013
On Thu, 8 Aug 2013, Miroslav Prýmek wrote:
>> ahoj, nevim, co myslis tim "rozbit shellovy skript".
>
>
>Priorita cislo jedna je, aby clovek do toho skriptu nemohl injectovat kod
>tim zminenym stylem
># skript 'fake_parametr";nejaky_zly_kod; echo " '
takhle to nefunguje, podivej se do manu k sh(1), tam je popsano, jak
probiha zpracovani skriptu. Viz jednoduchy priklad:
$ var="echo x; echo y"
$ $var
x; echo y
tj. nevypise ti to "x<new-line>y". echo proste dostane 3 parametry,
``x;'', ``echo'', a ``y''
to bys musel pouzit eval, aby se ten kod zpracoval:
$ eval "$var"
x
y
promenne do uvozovek davas ve skriptu hlavne proto, aby se ti z
hodnoty promenne nestalo vice parametru dalsiho prikazu, pokud v hodnote
promenne jsou mezery.
h.
--
Jan Pechanec <jp (at) devnull (dot) cz>
http://www.devnull.cz
More information about the Users-l
mailing list