CVE-2026-49145 PUBLISHED

App::Ack versions through 3.10.0 for Perl read arbitrary files via --files-from in a project .ackrc

Assigner: CPANSec
Reserved: 27.05.2026 Published: 08.07.2026 Updated: 08.07.2026

App::Ack versions through 3.10.0 for Perl read arbitrary files via --files-from in a project .ackrc.

ack searches up the directory hierarchy from the current directory for a project .ackrc and loads its options. The project-source option blocklist in App::Ack::ConfigLoader does not include --files-from, so a project .ackrc can set it to a path whose listed files ack then reads and searches. Version 3.10.0 added --follow to the blocklist; --files-from remains accepted.

A project .ackrc committed to an untrusted repository can make ack read files outside the project and print their matching lines.

Product Status

Vendor PETDANCE
Product App::Ack
Versions Default: unaffected
  • affected from 0 to 3.10.0 (incl.)

Workarounds

Run ack with --noenv, or avoid running ack in a directory tree that contains an untrusted .ackrc.

Solutions

Upgrade to a future ack release.

Credits

  • Michał Majchrowicz (AFINE) finder
  • Marcin Wyczechowski (AFINE) finder

References

Problem Types

  • CWE-73 External Control of File Name or Path CWE
  • CWE-426 Untrusted Search Path CWE