Security Advisories (1)
CVE-2011-10007 (2025-06-05)

File::Find::Rule through 0.34 for Perl is vulnerable to Arbitrary Code Execution when `grep()` encounters a crafted filename. A file handle is opened with the 2 argument form of `open()` allowing an attacker controlled filename to provide the MODE parameter to `open()`, turning the filename into a command to be executed. Example: $ mkdir /tmp/poc; echo > "/tmp/poc/|id" $ perl -MFile::Find::Rule \     -E 'File::Find::Rule->grep("foo")->in("/tmp/poc")' uid=1000(user) gid=1000(user) groups=1000(user),100(users)

Changes for version 0.25

  • applied a patch from Leon Brocard to make the tests ignore CVS dirs as well as .svn dirs.
  • reworked part of t/File-Find-Rule.t to not assume that t/foobar will always be 10 bytes in size. (rt.cpan.org #3838)
  • now we install the findrule script

Documentation

command line wrapper to File::Find::Rule
the mini-guide to extending File::Find::Rule
File::Find::Rule's procedural interface

Modules

Alternative interface to File::Find