I said in my previous post that "in your case" you should be using IPC::Open2. That is used to capture output from a program (as well as send input, but you can close the writer since you're not sending input) while still allowing a LIST like system and exec to bypass the shell.
The taint problem is likely that you didn't resent your environment. Check out perlsec on how to set your environment securely.
In reply to Re^4: Safely passing CGI form data to a shell command
by Tanktalus
in thread Safely passing CGI form data to a shell command
by Tommy
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |