Re: isset question

From: Date: Sun, 21 Jun 2009 17:57:47 +0000
Subject: Re: isset question
References: 1 2 3 4 5  Groups: php.general 
Request: Send a blank email to php-general+get-294385@lists.php.net to get a copy of this message
How does echoing back to the page make it vulnerable? This does not go to a DB if that makes any difference. Gary "Paul M Foster" <paulf@quillandmouse.com> wrote in message news:20090621032151.GB14822@quillandmouse.com... > On Sat, Jun 20, 2009 at 12:20:56PM +0100, Ashley Sheridan wrote: > >> On Sat, 2009-06-20 at 00:19 -0400, Paul M Foster wrote: >> > On Fri, Jun 19, 2009 at 07:52:40PM +0100, Ashley Sheridan wrote: >> > >> > > On Fri, 2009-06-19 at 12:36 +0100, Ford, Mike wrote: >> > > > On 18 June 2009 20:25, LAMP advised: >> > > > >> > > > > using !empty() instead isset() will work if you don't care for >> > > > > PHP >> > > > > Notice: Undefined variable... If you want to avoid PHP Notice >> > > > > you have >> > > > > to use both: >> > > > > >> > > > > $msg.= (isset($_POST['mort']) and >> > > > > !empty($_POST['mort'])) ? "The >> > > > > mortgage amount is $mort\n" : " "; >> > > > >> > > > Absolute rubbish -- as it says at >> > > > http://php.net/empty, >> > > > "empty($var) is >> > > > the opposite of (boolean)$var, except that no warning is generated >> > > > when >> > > > the variable is not set." -- so "protecting" empty() with an >> > > > isset() is >> > > > a total waste of time, space and cpu cycles. >> > >> > <snip> >> > >> > > > >> > > To be honest, you're still opening yourself up to attack that way. >> > >> > Why and how? >> > >> > Paul >> > >> > -- >> > Paul M. Foster >> > >> I've only done a little reading on this, but you're opening yourself up >> to a XSS attack. If someone posted '<script>//malicious code >> here</script>' to your PHP script, you'd essentially be printing that >> right back out onto your page. > > I see. You're not talking about being vulnerable because of isset/empty, > but by echoing it back to the page. Yes, I agree there. You have to > sanitize it first. > > Paul > > -- > Paul M. Foster

« previous php.general (#294385) next »