Article View: pl.comp.lang.perl
Article #40023Re: Zaraz szlak mnie trafi
From: Vava
Date: Wed, 10 Nov 2004 10:45
Date: Wed, 10 Nov 2004 10:45
49 lines
2581 bytes
2581 bytes
tmerlin@2-ec.com (Tomasz Śledź) wrote:
> W liście z wto, 09-11-2004, godz. 17:03, Sławomir Szczyrba pisze:
> > Quod non fecerunt barbari, fecerunt Tomasz Śledź :
> >
> > > $dane = system("/usr/sbin/usermod -e $data $user") ;
> > > print $dane[0] ;
> > >
> > Tak na początek...
> > Albo @dane=system(); albo print $dane;
> > Przyzwyczajaj się do use strict; na poczatku programu, to naprawdę
> > pomaga :)
system() nie zwraca tablicy, a tylko kod zakończenia.
Jak chcesz zebrać informacje, to użyj odwrotnych apostrofów ``
> masz racje, por prostu milem kilka wersji tego samego programu w roznymi
> uwtawieniami ... problem jest reywialny, mianowicie jesli przekieruje
> komunikaty to otrzymuje:
> Insecure dependency in system while running setuid at ....
> i oczywiscie numer lini kgdzei jest system() ;
> a to tylko jesli zmienna user jest pobierana z zewnatrz .. bo jesli
> przypisze jej inna wartosc w kodzie to juz to sie nie wywala ....
Oczywiście! Tak działa -T.
Wszystko, co pobierane z zewnątrz, jest skażone (tainted) i nie może
być wykorzystywane w system() i podobnych funkcjach...
Jak chcesz takich danych użyć, musisz je 'oczyścić'.
Zasadniczo perl uznaj za czyste zmienne $1, $2, etc., więc musisz zrobić coś w
stylu:
my $user = shift;
$user =~ /^([a-zA-Z0-9.]+)$/;
$user = $1;
Perl nie sprawdza, czy regexpa używasz w sposób bezpieczny, czy nie - wymusza
tylko jego użycie, zakładając, że wiesz co robisz ;-P
Więcej szczegółów w perldoc perlsec
Pozdrawiam
--
Vava
Wawrzyniec Żurowski
Victoria vale, et ubique es, suaviter sternutas
--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Technical Details
Message-ID:
<5e1e.000003c3.4191f141@newsgate.onet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsgate.onet.pl!niusy.onet.plReferences:
<1100017130.1645.23.camel@operator>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsgate.onet.pl!niusy.onet.pl From: "Vava" <rosomakolakWYTNIJTO@poczta.onet.pl> Newsgroups: pl.comp.lang.perl Subject: Re: Zaraz szlak mnie trafi Date: 10 Nov 2004 11:45:22 +0100 Organization: Onet.pl SA Lines: 49 Message-ID: <5e1e.000003c3.4191f141@newsgate.onet.pl> References: <1100017130.1645.23.camel@operator> NNTP-Posting-Host: newsgate.onet.pl Mime-Version: 1.0 X-Trace: newsgate.test.onet.pl 1100083522 15305 213.180.130.18 (10 Nov 2004 10:45:22 GMT) X-Complaints-To: abuse@onet.pl NNTP-Posting-Date: 10 Nov 2004 10:45:22 GMT X-Mailer: http://niusy.onet.pl X-Forwarded-For: 212.2.96.149, 192.168.243.42 X-User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1) Opera 7.20 [pl] Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit