Cloudanix VulnDB

CVE-2020-16154

High · 7.8

CVSS

7.8

EPSS

0.8%

Published

Dec 13, 2021

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A Perl tool used to download and install software packages can be tricked into accepting harmful code without properly checking that the code is genuine.

Exploit Available
Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Low
Impact
Full Compromise
Component
Library
Class
Cryptographic Weakness
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Bypasses cryptographic signature verification in cpanminus during module installation, allowing tampered or unsigned distributions to be accepted as valid.

Why it matters to the business

Attackers can deliver malicious Perl code that executes with the privileges of the installing user, enabling supply-chain compromise, data theft, or persistence across development and production systems.

How an attack unfolds

An attacker prepares a crafted Perl distribution with invalid or missing signatures, hosts it on a reachable CPAN mirror or local repository, and convinces a victim to run cpanminus against it; the bypass causes the tool to skip verification and install the malicious payload.

How to fix it

Upgrade App::cpanminus to the latest release that restores proper signature checking; where upgrades are unavailable, replace cpanminus usage with tools that enforce mandatory signature verification or pin modules to known-good distributions.

How to confirm the fix worked

Confirm the installed cpanminus version exceeds 1.7044, then run controlled tests with deliberately invalid signatures to verify rejection occurs before any code is extracted or executed.

Typical attack path

  1. Locate systems or build pipelines that invoke cpanminus to fetch Perl modules
  2. Upload or mirror a malicious distribution with forged or absent signatures
  3. Social-engineer or automate execution of cpanminus against the malicious source
  4. Bypass triggers and attacker-controlled code runs during or after installation

How to detect it

Review cpanminus logs and process execution history for installations that complete despite signature errors; correlate with unexpected new Perl modules or binaries appearing in library paths.

What your security team should do

  • Immediately replace or upgrade all instances of App::cpanminus 1.7044 or earlier
  • Audit build and deployment pipelines for direct or transitive use of cpanminus
  • Add runtime monitoring for unexpected Perl module installations or file changes
  • Prefer distributions or package managers that enforce signature validation by default

The record

The App::cpanminus package 1.7044 for Perl allows Signature Verification Bypass.

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 cpanminus 0 No fix
Debian:12 cpanminus 0 1.7045-1
Debian:13 cpanminus 0 1.7045-1
Mageia:8 cpanminus 0 1.704.500-1.mga8
SUSE:Package Hub 15 SP3 perl-App-cpanminus 0 1.7045-bp153.2.3.1
Ubuntu:20.04:LTS cpanminus 0 No fix
Ubuntu:22.04:LTS cpanminus 0 1.7045-1
Ubuntu:Pro:16.04:LTS cpanminus 0 1.7040-1ubuntu0.1~esm1
Ubuntu:Pro:18.04:LTS cpanminus 0 1.7043-1ubuntu0.1~esm1
Ubuntu:Pro:20.04:LTS cpanminus 0 1.7044-1ubuntu0.1~esm1
openSUSE:Leap 15.3 perl-App-cpanminus 0 1.7045-bp153.2.3.1
openSUSE:Tumbleweed perl-App-cpanminus 0 1.7045-1.1

Related vulnerabilities