Cloudanix VulnDB

CVE-2022-28654

Medium · 5.5

CVSS

5.5

EPSS

0.3%

Published

Jun 4, 2024

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

Regular users can keep adding entries to a system log file until it fills the entire hard drive and stops the application from running.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Denial Of Service
Component
Application
Class
Denial of service
Remediation
Patch
Effort
Low
Patch risk
Low

What it actually does

The is_closing_session() function permits authenticated local users to trigger repeated log writes that unboundedly grow apport.log until disk exhaustion occurs.

Why it matters to the business

Low-privilege users can exhaust disk space on GitLab servers, causing service outages, degraded performance, and unplanned operational recovery work; prevalence across many GitLab instances increases exposure.

How an attack unfolds

An authenticated local attacker repeatedly invokes is_closing_session() to force excessive logging entries into apport.log; over time the file consumes all available disk space and halts GitLab services. No public exploit code or threat actors are known.

How to fix it

Upgrade GitLab to the version containing commit 67af793e55bd098111d3c3e265cd2c92eb283f1c; limit log file sizes via OS-level logrotate or similar controls until patches are applied.

How to confirm the fix worked

Confirm the running GitLab binary or source tree includes commit 67af793e55bd098111d3c3e265cd2c92eb283f1c; attempt controlled invocation of is_closing_session() while monitoring apport.log size to verify no unbounded growth occurs.

Typical attack path

  1. Obtain a low-privileged local account on a GitLab host
  2. Repeatedly call is_closing_session() in a loop or script
  3. Observe apport.log growth until disk space is exhausted and services fail

How to detect it

Search GitLab and system logs for unusually high volumes of entries containing is_closing_session references; monitor for rapid, sustained growth of apport.log outside normal crash-reporting patterns.

  • apport.log
  • is_closing_session()

What your security team should do

  • Apply the fixed commit 67af793e55bd098111d3c3e265cd2c92eb283f1c to all GitLab instances without delay
  • Enable or tighten log rotation for apport.log and other service logs
  • Monitor disk utilization alerts on GitLab hosts and review local user activity for anomalous function calls

The record

is_closing_session() allows users to fill up apport.log

Affected packages

Ecosystem Package Introduced Fixed
Ubuntu:18.04:LTS apport 0 2.20.9-0ubuntu7.28
Ubuntu:20.04:LTS apport 0 2.20.11-0ubuntu27.24
Ubuntu:22.04:LTS apport 0 2.20.11-0ubuntu82.1
Ubuntu:Pro:14.04:LTS apport 0 No fix
Ubuntu:Pro:16.04:LTS apport 0 2.20.1-0ubuntu2.30+esm4

Related vulnerabilities