PAM modulu pam_oath, oath-toolkit paketinin bir hissəsi olaraq daxil edilmiş və bir dəfəlik parollar (OTP) istifadə edərək iki faktorlu autentifikasiya zamanı istifadə olunur, sistemdə kök (root) erişimi əldə etməyə imkan tanıyan bir zəiflik (CVE-2024-47191) aşkar edilib.
Modul pam_oath kök (root) hüquqları ilə yerinə yetirilir və başlanğıcda OATH açarlarının yalnız kök (root) istifadəçisinin daxil ola biləcəyi /etc/users.oath faylında yerləşdirilməsi üçün nəzərdə tutulmuşdu. oath-toolkit 2.6.7 versiyasında açar fayllarını istifadəçi ev kataloglarında (~/.config/users.oath) yerləşdirmək üçün dəstək əlavə edilib. Privilegiyaları olmayan istifadəçilər öz açarları ilə faylları dəyişdirməyə imkan əldə etdilər, lakin pam_oath bu fayllara müraciət edərkən hüquqları sıfırlamadı və fayllarla iş üçün təhlükəsiz olmayan metodları istifadə etməyə davam etdi, bu da faylların dəyişdirilməz bir katalogda yerləşdiyinə əsaslanırdı.
Zəiflik, hər uğurlu bir dəfəlik parol ilə autentifikasiyadan sonra pam_oath-in açar faylını yenidən yazması səbəbindən ortaya çıxır, bu da eyni paroldan bir neçə dəfə istifadə edilməsini əngəlləmək məqsədini güdür. Yenidən yazma əməliyyatı eyni katalogda lock-faylı yaradılması, yeni məzmunun «.new» uzantılı faylda yazılması və köhnə faylın yeni versiya ilə əvəzlənməsinə endirilir. Bu zaman «.new» uzantılı fayl hədəf fayl ilə eyni hüquqlarla yaradılır, lakin ona yazma prosesi kök (root) hüquqları ilə həyata keçirilir və faylın mövcudluğunu yoxlama prosesi olmadan.
Fayl sistem kataloqlarında yerləşdikdə, heç bir problem yaranmırdı, amma açar fayllarının ev kataloglarında yerləşdirilməsinin dəstəklənməsi ilə asanlıqla istifadə edilən zəiflik meydana gəldi. Hücum etmək üçün, sadəcə «~/.config/oath.secrets.new» simvolik linkini yaradıb istənilən sistem faylına yönləndirmək kifayətdir ki, bu da uğurlu autentifikasiyadan sonra yenidən yazılacaq.
Kök (root) erişimi əldə etmək üçün simvolik linki /etc/shadow faylına yönləndirmək mümkündür. Bu halda pam_oath /etc/shadow faylına aktual açar siyahısını yazacaq və mülkiyyətçi və erişim hüquqlarını users.oath faylı ilə sinkronizasiya edəcək. users.oath faylı istifadəçiyə məxsus olduğundan, /etc/shadow üçün mülkiyyətçi bu istifadəçi olacaq, ardından hücumçu /etc/shadow faylını redaktə edəcək və kök (root) hesabı üçün yeni giriş parametrlərini oraya yazacaq.
Zəiflik oath-toolkit 2.6.7 versiyasından etibarən ortaya çıxır və 2.6.12 versiyasında aradan qaldırılmışdır (1,2,3). Zəifliyin həllini paylamalar üzrə aşağıdakı səhifələrdən izləmək mümkündür: Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch. Zəiflik ancaq açar fayllarının ev kataloglarında yerləşdirilməsinə icazə verildiyi konfiqurasiyaları təsir edir, məsələn, PAM konfiqurasiyasında «auth [user_unknown=ignore success=ok] pam_oath.so usersfile=${HOME}/user.oath» sətirinin istifadəsi zamanı.
Əlavə olaraq, Ubuntu layihəsi tərəfindən hazırlanmış Authd paketinin PAM modulu (CVE-2024-9313) ilə bağlı günlər əvvəl aşkar edilən zəifliyi qeyd etmək mümkündür. Bu zəiflik, Authd vasitəsilə idarə olunan istifadəçinin, eyni broker tərəfindən idarə olunan hər hansı digər istifadəçi ilə özünü təqdim etməsinə və su, sudo və ya ssh vasitəsilə digər bir istifadəçi adı ilə uğurla autentifikasiya keçməsinə imkan tanıyır. Problemin həlli Authd 0.3.5 versiyasında həyata keçirilib.
Mənbə: opennet.ru
