🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.perl
Article #40023

Re: Zaraz szlak mnie trafi

#40023
From: Vava
Date: Wed, 10 Nov 2004 10:45
49 lines
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.pl
References: <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