This is directly from perlsec which you should read immediately. There are other environment variables which must also be set so this snippet is only a teaser - there's more required reading. Cleaning Up Your Path
For "Insecure "$ENV{PATH}"" messages, you need to set $ENV{'PATH'}" to a known value, and each directory in the path must be non-writable by others than its owner and group. You may be surprised to get this message even if the pathname to your executable is fully qualified. This is not generated because you didn't supply a full path to the program; instead, it's generated because you never set your PATH environment variable, or you didn't set it to something that was safe. Because Perl can't guarantee that the executable in question isn't itself going to turn around and execute some other program that is dependent on your PATH, it makes sure you set the PATH.
|