🇰🇷 한글 설명
leapp-upgrade-el9toel10의 scan_mysql 액터에서 권한 상승 취약점이 발견되었습니다. RHEL 9에서 10으로 업그레이드하는 과정에서 mysqld가 root 권한으로 직접 실행되는데, 이때 mysql 사용자가 조작한 설정 파일을 통해 악성 공유 객체를 로드하여 root 권한을 획득할 수 있습니다.
💡 쉬운 설명
시스템 업그레이드 도중 MySQL 설정 파일을 악용하여 해커가 관리자 권한을 몰래 얻을 수 있는 문제입니다. MySQL 서비스 권한을 가진 공격자가 특수하게 만든 파일을 심어두면, 관리자가 업그레이드를 시작할 때 공격자의 코드가 실행됩니다.
🇺🇸 원문 (English)
A privilege escalation flaw was found in the scan_mysql actor of leapp-upgrade-el9toel10 (provided by leapp-repository). During RHEL 9 to RHEL 10 upgrades, the actor runs:
mysqld --validate-config --log-error-verbosity=2 directly as root in the Leapp actor context, bypassing the packaged MySQL systemd unit that normally starts the daemon as User=mysql.
A process compromised as the mysql OS identity can write a version-2 persisted configuration (mysqld-auto.cnf) and a malicious shared object into /var/lib/mysql (a directory owned by mysql). That persisted map can set plugin_dir to /var/lib/mysql and early_plugin_load (or related loader options such as plugin_load / plugin_load_add) so MySQL loads the attacker-controlled object during configuration validation. Plugin loading can reach dlopen() before MySQL’s runtime-user check and before plugin-symbol validation.
When an administrator subsequently runs the documented Leapp preupgrade or upgrade workflow, attacker-controlled code can execute as UID 0 with a full capability set in an unconfined SELinux domain (unconfined_t). The attack does not require write access to the default system plugin path under /usr; redirecting plugin_dir via mysql-owned persisted state is sufficient. Ordinary SQL privileges alone (including highly privileged SQL accounts) are not a sufficient startpoint — OS-level execution as the mysql service identity is required, plus later administrator invocation of Leapp.
📍 영향받는 시스템
leapp-repository 패키지의 leapp-upgrade-el9toel10 (RHEL 9 to RHEL 10 업그레이드 환경)
⚔️ 공격 벡터
mysql OS 계정 권한으로 조작된 mysqld-auto.cnf 및 악성 공유 객체를 /var/lib/mysql에 배치한 후 관리자의 Leapp 업그레이드 프로세스 실행 유도
🛡️ 대응 방법
leapp-repository 패키지를 최신 보안 패치 버전으로 업데이트하거나, 업그레이드 전 /var/lib/mysql 디렉토리 내의 비정상적인 설정 파일 및 공유 객체 존재 여부를 점검하십시오.
🔧 검증 코드
출력된 leapp-repository의 버전을 확인하여 취약점이 해결된 패치 버전인지 대조하십시오.
📊 CVSS Vector String
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H
💻 영향받는 소프트웨어
IBM Verify Identity Access