Cloudanix VulnDB

CVE-2022-3560

Medium · 5.5

CVSS

5.5

EPSS

0.2%

Published

Feb 2, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A bug in a Linux tool used to sign software could let someone already on the machine read private files they are not supposed to see.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Data Exposure
Component
Application
Class
Path Traversal
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

The pesign systemd service initialization script applies ACLs to /etc/pki/pesign and /run/pesign without validating whether the target paths are symbolic links, permitting an attacker-controlled link to redirect the operation and grant read access to arbitrary files.

Why it matters to the business

Local users or compromised processes can read sensitive configuration, keys, or other privileged files on affected Linux systems, increasing the risk of credential exposure and further lateral movement inside the environment.

How an attack unfolds

An attacker with local access creates a symbolic link inside the pesign-managed directories that points to a privileged file, then triggers or waits for the service script to run; the script follows the link and sets permissive ACLs, allowing the attacker to read the target file.

How to fix it

Upgrade pesign to a version that validates paths before applying ACLs; until a fix is available, consider disabling the pesign service if not required or restrict membership in the pesign group to only trusted accounts.

How to confirm the fix worked

Inspect the service script for explicit symlink or path validation logic; confirm the service no longer follows attacker-controlled links when setting ACLs; re-test after applying package updates from distribution repositories.

Typical attack path

  1. Obtain local user or process access on a system running the pesign service
  2. Create a symbolic link inside /etc/pki/pesign or /run/pesign pointing to a desired privileged file
  3. Trigger the pesign service unit (or wait for its next execution) so the ACL-setting script processes the link
  4. Read the now-accessible target file using the granted ACL

How to detect it

Review system logs for pesign service invocations, unexpected ACL modifications on /etc/pki/pesign or /run/pesign, and creation of symbolic links inside those directories; correlate with user activity that coincides with service restarts.

  • symlink creation under /run/pesign
  • ACL modification events referencing /etc/pki/pesign
  • pesign.service unit activation logs

What your security team should do

  • Apply available distribution updates for pesign as soon as they are released
  • Audit systems for unnecessary pesign group membership and remove unneeded users
  • Monitor package repositories for fixed versions of pesign on Fedora and RHEL

The record

A flaw was found in pesign. The pesign package provides a systemd service used to start the pesign daemon. This service unit runs a script to set ACLs for /etc/pki/pesign and /run/pesign directories to grant access privileges to users in the 'pesign' group. However, the script doesn't check for symbolic links. This could allow an attacker to gain access to privileged files and directories via a path traversal attack.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:8 pesign 0 0.112-27.el8_7
AlmaLinux:9 pesign 0 115-6.el9_1
Debian:11 pesign 0 No fix
Debian:12 pesign 0 No fix
Debian:13 pesign 0 116-1
Red Hat:enterprise_linux:7::client pesign 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:7::client pesign-debuginfo 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:7::computenode pesign 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:7::computenode pesign-debuginfo 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:7::server pesign 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:7::server pesign-debuginfo 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:7::workstation pesign 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:7::workstation pesign-debuginfo 0 0:0.109-11.el7_9
Red Hat:enterprise_linux:8::appstream pesign 0 0:0.112-27.el8_7
Red Hat:enterprise_linux:8::appstream pesign-debuginfo 0 0:0.112-27.el8_7
Red Hat:enterprise_linux:8::appstream pesign-debugsource 0 0:0.112-27.el8_7
Red Hat:enterprise_linux:9::appstream pesign 0 0:115-6.el9_1
Red Hat:enterprise_linux:9::appstream pesign-debuginfo 0 0:115-6.el9_1
Red Hat:enterprise_linux:9::appstream pesign-debugsource 0 0:115-6.el9_1
Red Hat:rhel_aus:8.2::appstream pesign 0 0:0.112-25.el8_2.1
Red Hat:rhel_aus:8.2::appstream pesign-debuginfo 0 0:0.112-25.el8_2.1
Red Hat:rhel_aus:8.2::appstream pesign-debugsource 0 0:0.112-25.el8_2.1
Red Hat:rhel_e4s:8.1::appstream pesign 0 0:0.112-25.el8_1.1
Red Hat:rhel_e4s:8.1::appstream pesign-debuginfo 0 0:0.112-25.el8_1.1
Red Hat:rhel_e4s:8.1::appstream pesign-debugsource 0 0:0.112-25.el8_1.1
Red Hat:rhel_e4s:8.2::appstream pesign 0 0:0.112-25.el8_2.1
Red Hat:rhel_e4s:8.2::appstream pesign-debuginfo 0 0:0.112-25.el8_2.1
Red Hat:rhel_e4s:8.2::appstream pesign-debugsource 0 0:0.112-25.el8_2.1
Red Hat:rhel_eus:8.4::appstream pesign 0 0:0.112-25.el8_4.1
Red Hat:rhel_eus:8.4::appstream pesign-debuginfo 0 0:0.112-25.el8_4.1
Red Hat:rhel_eus:8.4::appstream pesign-debugsource 0 0:0.112-25.el8_4.1
Red Hat:rhel_eus:8.6::appstream pesign 0 0:0.112-27.el8_6
Red Hat:rhel_eus:8.6::appstream pesign-debuginfo 0 0:0.112-27.el8_6
Red Hat:rhel_eus:8.6::appstream pesign-debugsource 0 0:0.112-27.el8_6
Red Hat:rhel_eus:9.0::appstream pesign 0 0:115-6.el9_0
Red Hat:rhel_eus:9.0::appstream pesign-debuginfo 0 0:115-6.el9_0
Red Hat:rhel_eus:9.0::appstream pesign-debugsource 0 0:115-6.el9_0
Red Hat:rhel_tus:8.2::appstream pesign 0 0:0.112-25.el8_2.1
Red Hat:rhel_tus:8.2::appstream pesign-debuginfo 0 0:0.112-25.el8_2.1
Red Hat:rhel_tus:8.2::appstream pesign-debugsource 0 0:0.112-25.el8_2.1
Rocky Linux:8 pesign 0 0:0.112-27.el8_7
Rocky Linux:9 pesign 0 0:115-6.el9_1.rocky.2
SUSE:Enterprise Storage 7 pesign 0 0.112-150000.4.15.1
SUSE:Enterprise Storage 7.1 pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Module for Basesystem 15 SP4 pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Real Time 15 SP3 pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Server 15 SP1-LTSS pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Server 15 SP2-LTSS pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Server 15 SP3-LTSS pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP1 pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP2 pesign 0 0.112-150000.4.15.1
SUSE:Linux Enterprise Server for SAP Applications 15 SP3 pesign 0 0.112-150000.4.15.1
SUSE:Manager Proxy 4.2 pesign 0 0.112-150000.4.15.1
SUSE:Manager Server 4.2 pesign 0 0.112-150000.4.15.1
Ubuntu:16.04:LTS pesign 0 No fix
Ubuntu:18.04:LTS pesign 0 No fix
Ubuntu:20.04:LTS pesign 0 No fix
Ubuntu:22.04:LTS pesign 0 No fix
Ubuntu:24.04:LTS pesign 0 No fix
Ubuntu:24.10 pesign 0 No fix
Ubuntu:25.04 pesign 0 No fix
Ubuntu:25.10 pesign 0 No fix
Ubuntu:Pro:16.04:LTS pesign 0 No fix
Ubuntu:Pro:18.04:LTS pesign 0 No fix
Ubuntu:Pro:20.04:LTS pesign 0 No fix
openSUSE:Leap 15.4 pesign 0 0.112-150000.4.15.1
openSUSE:Tumbleweed pesign 0 113-11.1

Related vulnerabilities