in reply to Re^3: Runtime Taint Enable
in thread Runtime Taint Enable
Any external data can (and should) be marked as tainted. This includes but is not limited to: the results of system calls, database results, and anything that is derived from these. Basically, anything that came from outside your program should be viewed as suspect when thinking about taint.That I disagree with. If I'm in full control of my box, I may consider any file (especially configuration files) on the box to be safe (and if I couldn't, why would I trust /usr/bin/perl?). I might consider all modules safe. All environment variables to be under my control. But not the data that I'm reading from a socket, because that's outside of my control.
There are a lot of situation where I turn on taint checking because there's a limited amount of external data that I consider tainted. (Basically, this boils dows to the fact that what is external data for me doesn't coincide with what Perl considers to be external data - and I don't blame Perl for that, because Perl can't know.)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^5: Runtime Taint Enable
by thor (Priest) on Feb 24, 2005 at 17:08 UTC | |
by Rhandom (Curate) on Feb 24, 2005 at 18:37 UTC |