in reply to How to call external scripts from a CGI-script in taint mode?
Have you cleanes your %ENV? Most noteable, $ENV{'PATH'} needs to be set to a value within the script. This should be set to a very limited set of directories that you (hopefully) know to be secure. Also, when calling outside programs, use the absolute path. For example, you should not execute "ping", you should execute "/bin/ping".
People can do nasty things with the environment and will do what they can to harm you :) I'm assuming that perl is giving you the error about not running the script because your $ENV{PATH} is untrusted. So a tainted script should start something like this:
#!/usr/bin/perl -Tw use strict; $|++; $ENV{PATH} = '/bin;/usr/bin;/home/professa'; `/bin/ping 127.0.0.1`;
If the above content is missing any vital points or you feel that any of the information is misleading, incorrect or irrelevant, please feel free to downvote the post. At the same time, please reply to this node or /msg me to inform me as to what is wrong with the post, so that I may update the node to the best of my ability.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: How to call external scripts from a CGI-script in taint mode?
by professa (Beadle) on Apr 03, 2003 at 11:59 UTC | |
by Coruscate (Sexton) on Apr 03, 2003 at 12:05 UTC | |
by professa (Beadle) on Apr 03, 2003 at 12:28 UTC | |
by davorg (Chancellor) on Apr 03, 2003 at 12:02 UTC |