[하루한줄] CVE-2020-16125: Local Privilege Escalation (LPE) in Ubuntu gdm3

URL

Local Privilege Escalation (LPE) in Ubuntu gdm3 - CVE-2020-16125

Target

gdm version ≤ 3.36.3-0ubuntu0.20.04.1

accountsservice version ≤ 0.6.55-0ubuntu12 ~ 20.04.1

Explain

gdm3에서 시스템 권한의 계정을 만들어 권한 상승이 가능한 취약점이 발견되었습니다.

gdm3(gnome display manager)은 그래픽 인터페이스로 로그인 및 사용자 인증을 처리하는데, 새로 설치된 시스템 등의 이유로 사용자 계정을 찾을 수 없을 때 gnome-initial-setup 을 호출하고 sudo 그룹의 새로운 계정을 만들 수 있습니다.

gdm3에서는 기존 계정을 찾기 위해 D-Bus 메소드 호출을 사용해 accountsservice 데몬의 look_for_existing_users_sync 에서 기존 사용자 목록을 가져옵니다. 이때 서비스 거부 공격으로 accountsservice 데몬이 응답하지 않도록 하면 D-Bus 메소드 호출이 시간 초과로 인해 연결이 실패하고 priv→have_existing_user_accounts 의 기본값인 false가 유지됩니다.

이후wants_initial_setup 에서 priv→have_existing_user_accounts가 false면 gdm3는 현재 시스템에 계정이 없는 것으로 인식하고 gnome-initial-setup을 호출해 시스템 권한의 계정을 생성할 수 있습니다.

해당 취약점의 패치는 priv->have_existing_user_accounts의 기본값을 true로 수정하는 것으로 적용되었습니다.



본 글은 CC BY-SA 4.0 라이선스로 배포됩니다. 공유 또는 변경 시 반드시 출처를 남겨주시기 바랍니다.