| Name | CVE-2026-49145 |
| Description | 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. |
| Source | CVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
Vulnerable and fixed packages
The table below lists information on source packages.
| Source Package | Release | Version | Status |
|---|
| ack (PTS) | bullseye | 3.4.0-1 | vulnerable |
| bookworm | 3.6.0-1 | vulnerable |
| forky, sid, trixie | 3.8.1-1 | vulnerable |
The information below is based on the following data on fixed versions.
| Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
|---|
| ack | source | (unstable) | (unfixed) | | | |
Notes
[trixie] - ack <no-dsa> (Minor issue)
[bookworm] - ack <postponed> (Minor issue; local-only, needs untrusted project .ackrc; --files-from still unfixed upstream)
[bullseye] - ack <postponed> (Minor issue; local-only, needs untrusted project .ackrc; --files-from still unfixed upstream)
https://lists.security.metacpan.org/cve-announce/msg/41643327/
Fixed by: https://github.com/beyondgrep/ack3/commit/45ff5fe77dbd96f7332f31943102291f878f30b8 (v3.10.0)
v3.10.0 only released with a partial fix for the --follow-option.