CVE-2026-49147CWE-150

App::Ack versions through 3.10.0 for Perl print unsanitised terminal escape sequences from filenames in several output modes

High · published July 8, 2026

CVSS v3.1
7.5
EPSS
0%
Percentile
41.0
In the wild
Unconfirmed
What it is

App::Ack versions through 3.10.0 for Perl print unsanitised terminal escape sequences from filenames in several output modes.

When ack prints a filename whose basename contains terminal control bytes such as ANSI escape sequences, those bytes reach the terminal unchanged. Version 3.10.0 added a _safe_filename helper that sanitises the filenames printed by -f, -g, the colored match heading, and per-match lines, but the --show-types, -l/-L, and -c paths still emit the raw filename.

A file whose name embeds cursor-movement or color escapes can overwrite or recolor earlier terminal output, or be passed unchanged to a downstream consumer.

The record
Technical detail
CVSS v3.1
7.5 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00488 · 41.0th percentile
Weakness
CWE-150 · Improper Neutralization of Escape, Meta, or Control Sequences
Published
2026-07-08T14:55Z
EPSS history
Timeline
  • 08 JUL 14:55Z
    App::Ack versions through 3.10.0 for Perl print unsanitised terminal escape sequences from filenames in several output modes
    cvelistv5