Subject: | Lack of validation of module names could potentially cause security problems |
As noted by Schwern himself in:
http://blogs.perl.org/users/michael_g_schwern/2011/10/how-not-to-load-a-module-or-bad-interfaces-make-good-people-do-bad-things.html
One solution would be to make UNIVERSAL::require into a wrapper for Module::Runtime.
Alternatively, you could just steal its regexp:
qr/\A[A-Z_a-z][0-9A-Z_a-z]*(?:::[0-9A-Z_a-z]+)*\z/