Perl - jen tisk promenne
Petr Baudis
pasky na ucw.cz
Pátek Září 22 21:20:17 CEST 2006
Dear diary, on Fri, Sep 22, 2006 at 12:53:30PM CEST, I got a letter
where Michal <michaels na centrum.cz> said that...
> > Vy jste me neposlouchal :-)
> > Kdyz napisete "abc$def", tak se k retezci 'abc' pripoji obsah promenne
> > $def.
>
> No jo vlastně, já na to koukám jako na řetězec, protože to mám vsugerovaný jako
> heslo :-) To mi teď prostě nedocvaklo...
>
> No jo, ale jak z toho ven? Tu proměnnou $pass naplňuji takto:
> $pass = `echo "$pass" | userdbpw -md5`; resp. jsem to teď poopravil na:
> eval('$pass = \''.`echo "$pass" | userdbpw -md5`.'\';');
>
> ... ale to taky není správná cesta ... tak už nevím :-/
Jdete na to nejak hrozne slozite. Nechte naplnovani $pass puvodni
(i kdyz to neni idealni, zvlaste pokud se vam v $ARGS[0] mohou objevit
nejake nebezpecne znaky, uvazte napriklad vyskyt ` nebo ") a dejte
si tam debugovaci vypis, abyste si potvrdil, ze do $pass se ulozila
spravna hodnota. Misto druheho prikazu pouzijte system(), jak vam bylo
poradeno. Pokud to nefunguje, misto "userdb" pouzijte "echo", abyste si
zkontroloval, co to vlastne poustite za prikaz.
--
Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
#!/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj
$/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1
lK[d2%Sa2/d0$^Ixp"|dc`;s/\W//g;$_=pack('H*',/((..)*)$/)
Další informace o konferenci Linux