Intel

AIKIDO-2026-234292

copier is vulnerable to Path Traversal

Path Traversal Pre-CVE
Found by Aikido Intel before public disclosure or CVE publication.
Published Today

81

High Risk

This Affects:

PYTHONcopier
9.15.2 - 9.16.0
Fixed in 9.17.0
Are you affected? Scan for Free

TL;DR

Copier's trust setting matches a template URL against a trusted prefix in copier/_settings.py after normalizing it with posixpath.normpath, but it does not percent-decode the URL first. A template reference using percent-encoded dot segments (%2e%2e), encoded separators (%2f), or backslashes (%5c or literal \) can therefore textually match a trusted prefix while the HTTP/Git layer resolves it to a different, attacker-controlled location. Because trust is granted, the untrusted template's tasks, migrations, and jinja_extensions run without the trust prompt, allowing arbitrary command execution. The fix percent-decodes the URL and folds backslashes to / before normalization and the trust comparison.

Who does this affect?

You are affected if you are using a version that falls within the vulnerable range and you have configured a trusted template URL prefix.

Background info

copier is vulnerable to Path Traversal in versions 9.15.2 - 9.16.0.

How to fix this

Upgrade the copier library to the patch version.